C'est un défi dépendant de la réponse! L'ordre des réponses est important et votre tâche exacte dépend de la dernière réponse publiée. Vous voudrez peut-être trier les réponses en fonction des plus anciennes .
Rassemblons du code! Voici 1920 caractères aléatoires (ASCII imprimables). Considérez-les comme un gros tas de pièces de puzzle non triées encore dans la boîte:
L-^=v^Ej2tW8OxNOIecSt4m}tji2O%YRJ;PJ!M|0*oO77$*Rs&2*<c"KI7e%FY^?I=];Y@`x)u)IBk%_a#<E6<yv5O*$kL):
KNGq)2Wa%b)j."(6U|{[UY@`lrCSJ`u0RHX!1z7f,v}n=GvRgkrEZ=YT:4H44bz]iC<](:+FF?Ay'vX~h5QMF)0vaXk1sk@p
Zj).{+l;PBKHABvEP%FnSw>u<_-4B^A>I8Kay&5]vXZJ{fCF]UVZ<!ZpOI$7\Y%`@:%H3wPsX-`/l]ZZ?Q/d`\M<T@'t]zip
{[ovg:6EpCT&'+vU4Heb^;}0AV|?<}M0rAH/^DL"RkT~%$[VUlM]-&We4(P=66},hL~;a`:$'yty.W[g2OWcL~b:Ryj0*eN<
;&-n[F1F=oh0k[NI!xS"]pA@Y;K}'=ekG5yda8J$+`N;:FIx:l,f_LT@sV[]HF@2*vl?|q"GL1j&%e(CyYPqY%3W|@`z}]bp
4_'1Nx{"G2&j6$UWt_#%`sTt2xC}s1P8J<gV24_RWge/aMuyVOjz=zS!1i2s@`Q#@^~@W/[email protected]:g9?J^p;7ju?B\yC5
x,ZApKS5G4}kx_iM)f4/|su>=[{XSV#{,j5Qn3U.v5LF;HXs%DYm4'+efmU;\}f6j$SFCRC`Gsd37:'3$q=bs;lvsW0Yj^:-
I[94@I|.IpR=}4KB4Z0G4>8PR29'L?n\gk,*4X[-%T`\FC)jj0jl_x<xL8E:G2-"3tT8&E}"sE+SH[7jR%@V)a{!m8K>.rAO
2[dq7GX9nrz8p4}^2mn@q|dF%<.Tl8)Dk?O.<UoE(a*k_=4+u!h$^bVd:$jS#EHFh@Z=y=ib^~/~lEJ^SQ3E_t#&^IOov7v8
~j#I#OHgxg{DZDyCsq-(GVq}HbiG,JV?eJ~5wJ;bSt@;3LI!2(6gIT92>}`_dw;YF@ccTIEz\Gu@2(}J2I1"S{R(2niIYPp9
8A3iiP[*!SH2*SN8'`V?w4Ufx2H*Az%{}FlUdH31TJ5{:ge^N91^;9Gj`Uqf'$_|8P"kHR1w.(ASwmN)U-~q"[XcWbqPnns=
d.ZoPJ}$Xc2lA>HN28`(d0y+UAr*sQ=?KE07=\FsVN(#?&hRabS%BVI#<`O$o#4x5ZFFLGDcA4t?&Eh~Z$oBWwNSNv`^;vO'
2&9egng~L#\QkfMG?S/n@%-VA[?f9K&3"V%P#Sv0!D<,GV:Z;3c&zFe^k&^0b7fAjvrbMc^Lq7k$h=YL<h7<0\NK>~Q=uUv)
4cI$.'b-RVS-=rom:=8QR=c>9am-^5F[XGv>E/>|]~\']3{r{kTc?ee1v=;I7]52#NE)~A;}!z>5?hi{5<9FtWH6{VO_Y-Jy
Mw>{l8n#mD,kl'8cG^.7sy=QqU-3~SKGs5(.Ta]:-Vfr'NS$o*q:w6e$&7spk3{CFT'l_hGY0-0Xui*5i^0^fO@6?2IdCn_C
lPKaJ6]0t!u>v8<d'Vby]8kEHh04p(YI)&7w82BrGB3PkI,s+%7ux5)gau`G!8F8hLa4[lfD55Xf3Hqy*-K,?;2'fxH3JWYE
Z.[N`:[K:CY@TzKX4TMXsm{Xbd:B3)Gy[mlwnC$>)z`:k=C\0ho/v{57#+2,*%]>p~vI2^C:2DebJR>.ESw^wd2N<~]O9sOQ
`_yvIw&Ryf%JgT@W(G1wfU3.4G3U}x1jKJzJY\S9n$2~P;F}*eT9UXcTNBTrTs>~0v_Oi.y8ofX6i5u$;'^"q][QhTb*gO[U
n'R0"v1r+9fv;5G7Bg=D:c*a=1@[}7}dYOO{Mz2&@6`jnNq.QcBDM9Dd=R.*=MqZ93#'{AJJFqx<{qb':B!H8ig1L%T\Vuc"
(h$i3`,scX'hqpbw"=nY`*Lu:h1wR{+-`\^3cQkIWfq)3?&p;~pvDW$o7\O|R6rB2{PX.s#G6A.s<OA_,TI_b*&lO@L3KrQv
Le "sol" sur lequel nous nous posons des questions n'est au départ qu'une grille d'espaces 96x20 (point de code 0x20). Chaque réponse peut se déplacer autour de blocs de pièces adjacents, choisir jusqu'à 10 pièces (personnages) de puzzle et les ajouter au puzzle pour créer un nouveau programme. Ce programme doit imprimer le numéro de votre réponse (numéroté séquentiellement, à partir de 1).
Répondre
La chose clé à comprendre à propos de ce défi est qu'une seule personne peut répondre à la fois et chaque réponse dépend de celle qui la précède .
Il ne devrait jamais y avoir deux réponses avec le même nombre N . Si deux personnes répondent simultanément à un certain N , celui qui a répondu plus tard (même si c'est quelques secondes de différence) devrait gracieusement supprimer sa réponse.
Pour rendre cela plus fluide, essayez de vous en tenir aux étapes suivantes lors de la publication de votre réponse:
- Assurez-vous que quelqu'un a indépendamment vérifié l'exactitude de la réponse précédente (et laissé un commentaire correspondant).
Prenez le «plancher de puzzle» et la «boîte de pièces» précédents. Vous pouvez déplacer librement n'importe quel bloc de personnages adjacent sur le sol du puzzle en tant qu'unité (les personnages sont adjacents s'ils se touchent dans le sens horizontal ou vertical). Les blocs adjacents ne peuvent plus être divisés. Exemples sur une grille 5x4:
Last answer: Valid: Invalid: |a bc| |d g | |a bc| | bc | |a bc| | d e | |fa bc| |d e | -or- |d e | -or- | e | | f g| | e | | f g| |f g | |df g | | h | |h | | h | | h | | h |
Dans l'exemple valide, a
a
été déplacé d'un pas vers le bas et vers la droite. Ledf
bloc a été déplacé en haut à gauche. Lebce
bloc a été abaissé de 1. Il ag
été déplacé deux vers le haut et un vers la gauche. Leh
bloc a été déplacé complètement vers la gauche.
Dans le premier exemple invalidedf
a été séparé. Dans le second,a
a été supprimé. Dans le troisième,df
a été tourné.Ensuite, supprimez au moins 1 et jusqu'à 10 caractères de la "boîte de pièces" et choisissez autant d'espaces sur le "sol du puzzle", que vous remplacerez par ces caractères. Ceci est votre programme soumis. Veuillez inclure à la fois le nouveau «plancher de puzzle» et la «boîte de pièces» dans votre réponse.
Postez votre réponse dans le format suivant:
# N. [Language], [number of blocks moved], [number of pieces added] [grid that is your program] ### Remaining pieces: [grid of remaining characters] [notes, explanation, observations, whatever]
où
N
est le numéro de votre réponse.C'est absolument vital pour le défi!J'ai fourni un outil de tableau de bord pour le défi pour aider à la comptabilité, et il s'appuie sur le modèle ci-dessus. (Voir en bas de l'article.)
- Veuillez inclure les barres verticales sur les côtés du sol du puzzle, car sinon, Stack Exchange n'affichera pas les lignes vides. Ces deux colonnes ne doivent jamais être considérées comme faisant partie du code.
- Un autre utilisateur devrait maintenant examiner votre soumission et laisser un commentaire "Exactitude vérifiée" si votre réponse suit toutes les règles (voir ci-dessous). Si ce n'est pas le cas, ils devraient laisser un commentaire signalant tout défaut. Vous avez alors 15 minutes pour résoudre ces problèmes. Si vous ne le faites pas, votre réponse sera considérée comme non valide, doit être supprimée et quelqu'un d'autre peut publier une réponse de suivi à la précédente. (Si cela se produit, vous êtes libre de soumettre une nouvelle réponse à tout moment.)
Ces réglementations peuvent sembler assez strictes, mais elles sont nécessaires pour éviter des réponses invalides quelque part dans la chaîne.
Les règles
- Un utilisateur ne peut soumettre qu'une seule réponse par période de 4 heures.(Ceci empêche les utilisateurs de regarder constamment la question et d'y répondre autant que possible.)
- Un utilisateur ne peut pas soumettre deux réponses consécutives. (Par exemple, depuis que j'ai soumis la réponse 1, je ne peux pas faire la réponse 2, mais je pourrais faire 3.)
- Aucune langue ne peut être utilisée plus d'une fois! Différentes versions de la même langue comptent comme la même langue. Les langues comptent comme distinctes si elles sont traditionnellement appelées par deux noms différents. (Il peut y avoir des ambiguïtés ici, mais ne laissez pas cela gâcher le concours.)
- Ne modifiez pas les réponses qui ont été vérifiées.
Si une erreur est découverte plus tôt dans la chaîne (c'est-à-dire après la publication des réponses de suivi), la réponse incriminée doit être supprimée. Cependant , toutes les réponses qui ont été publiées depuis ne doivent pas être modifiées pour refléter cela.
Votre programme doit imprimer
N
le numéro de votre réponse sur STDOUT ou l'alternative la plus proche. Il doit s'agir d'un programme complet et ne doit pas supposer un environnement REPL.- Vous pouvez ou non imprimer une nouvelle ligne de fin.
Que M soit le nombre de blocs que vous avez déplacés pour votre réponse (peu importe la distance) et P le nombre de caractères que vous avez ajouté au rez - de - puzzle, le score de votre réponse sera 10 + N - M - P . Comme exemple 5x4, si votre réponse a changé le sol du puzzle comme suit
|a bc| |a ij | | d e | --> | d bc| | f g| | f eg| | h | | h k|
votre score serait de 10 + N - 2 - 3 = N + 5 , car deux blocs ont été déplacés (
h
etbce
) et trois caractères ont été ajoutés (i
,j
etk
).Le gagnant sera l'utilisateur qui accumulera le plus grand nombre de points dans ses réponses. En cas d'égalité, l'utilisateur avec la dernière réponse l'emporte. J'accepterai la dernière réponse du gagnant.
- Dans le cas peu probable où tous les personnages seront épuisés, le défi se termine.
Tableau de bord
Voici un petit outil Dashboard, qui devrait vous aider avec la tenue de livres nécessaire pour ce type de défi.
Il affiche l'état actuel du défi - en particulier, s'il y a des réponses conflictuelles, si une réponse doit être vérifiée ou si la réponse suivante peut être publiée.
Il produit également une liste de toutes les langues qui ont été utilisées, ainsi qu'un classement de tous les utilisateurs. Veuillez vous en tenir au format de réponse ci-dessus, afin que le tableau de bord puisse lire les chaînes pertinentes de vos réponses. Sinon, vous pourriez ne pas être inclus dans le classement.
Veuillez me faire savoir ( idéalement dans le chat ) si vous repérez des bugs ou avez des idées sur la façon dont l'utilité de l'outil pourrait être améliorée.
function answersUrl(e){return"http://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentsUrl(e,t){return"http://api.stackexchange.com/2.2/answers/"+e+"/comments?page="+t+"&pagesize=100&order=asc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){$.ajax({url:answersUrl(page++),method:"get",dataType:"jsonp",crossDomain:true,success:function(e){answers.push.apply(answers,e.items);if(e.has_more)getAnswers();else{page=1;getFinalComments()}}})}function getFinalComments(){answers=answers.filter(shouldHaveHeading);answers=answers.filter(shouldHaveScore);console.log(answers);$.ajax({url:commentsUrl(answers[0].answer_id,page++),method:"get",dataType:"jsonp",crossDomain:true,success:function(e){comments.push.apply(comments,e.items);if(e.has_more)getAnswers();else process()}})}function shouldHaveHeading(e){var t=false;try{t|=/^(#|<h).*/.test(e.body_markdown);t|=["-","="].indexOf(e.body_markdown.split("\n")[1][0])>-1}catch(n){}return t}function shouldHaveScore(e){var t=false;try{t|=HEADER_REG.test(e.body_markdown.split("\n")[0])}catch(n){}return t}function findDuplicates(e){var t=false;var n={};e.forEach(function(e){var r=e.body_markdown.split("\n")[0].match(NUMBER_REG)[0];if(n[r])t=t||r;n[r]=true});return t}function hasBeenVerified(e,t){var n=false;t.forEach(function(t){n|=/correctness verified/i.test(t.body_markdown)&&e!=t.owner.user_id});return n}function userTimedOut(e){return NOW-e.creation_date*1e3<MSEC_PER_ANSWER}function getAuthorName(e){return e.owner.display_name}function getAnswerScore(e,t,n){e=parseInt(e);t=parseInt(t);n=parseInt(n);return 10+e-t-n}function process(){$("#last-user").append(answers[0].owner.display_name);var e=answers.slice(1).filter(userTimedOut).map(getAuthorName).join(", ");if(e)$("#timed-out-users").append(e);else $("#timed-out-notice").hide();var t=answers[0].body_markdown.split("\n")[0].match(NUMBER_REG)[0];var n=findDuplicates(answers);if(n){var r=$("#status-conflict-template").html();$("#challenge-status").append(r.replace("{{NUMBER}}",n));$("#challenge-status").addClass("conflict")}else if(!hasBeenVerified(answers[0].owner.user_id,comments)){var r=$("#status-verification-template").html();$("#challenge-status").append(r.replace("{{NUMBER}}",t));$("#challenge-status").addClass("verification")}else{var r=$("#status-next-template").html();$("#challenge-status").append(r.replace("{{NUMBER}}",t).replace("{{NEXT}}",parseInt(t)+1));$("#challenge-status").addClass("next")}var i={};var s={};var o=[];answers.forEach(function(e){var t=e.body_markdown.split("\n")[0];var n=$("#answer-template").html();var r=t.match(HEADER_REG)||[0,-1,"",0,0];var u=r[1];var a=r[2];var f=r[3];var l=r[4];var c=getAnswerScore(u,f,l);var h=getAuthorName(e);n=n.replace("{{NAME}}",h).replace("{{NUMBER}}",u).replace("{{LANGUAGE}}",a).replace("{{MOVED}}",f).replace("{{ADDED}}",l).replace("{{SCORE}}",c).replace("{{LINK}}",e.share_link);n=$(n);$("#answers").append(n);i[h]=(i[h]||0)+c;s[h]=(s[h]||0)+1;o.push({lang:a,link:e.share_link})});var u=[];for(var a in i)if(i.hasOwnProperty(a)){u.push({name:a,numAnswers:s[a],score:i[a]})}u.sort(function(e,t){return t.score-e.score});var f=1;u.forEach(function(e){var t=$("#user-template").html();t=t.replace("{{NAME}}",e.name).replace("{{NUMBER}}",f++).replace("{{COUNT}}",e.numAnswers).replace("{{SCORE}}",e.score);t=$(t);$("#users").append(t)});o.sort(function(e,t){return e.lang.localeCompare(t.lang)});o.forEach(function(e){var t=$("#lang-template").html();t=t.replace("{{LANGUAGE}}",e.lang).replace("{{LINK}}",e.link);t=$(t);$("#lang-list").append(t)})}var QUESTION_ID=44966;var ANSWER_FILTER="!*cCFgu5yS6BFQP8Z)xIZ.qGoikO4jB.Ahv_g-";var COMMENT_FILTER="!)Q2B_A497Z2O1kEH(Of5MUPK";var HOURS_PER_ANSWER=4;var MSEC_PER_ANSWER=HOURS_PER_ANSWER*60*60*1e3;var NOW=Date.now();var answers=[],comments=[],page=1;getAnswers();var NUMBER_REG=/\d+/;var HEADER_REG=/(\d+)[.]\s*([^,]*[^,\s])\s*,[^,\d]*(\d+)[^,\d]*,[^,\d]*(\d+)/
body { text-align: left !important} #challenge-status { font-weight: bold; padding: 10px; width: 800px; } #blocked-users { padding: 10px; width: 800px; } .conflict { background: #994343; color: white; } .verification { background: #FFDB12; } .next { background: #75FF6E; } #last-user, #timed-out-users { font-weight: bold; } #answer-list { padding: 10px; width: 350px; float: left; } #leaderboard { padding: 10px; width: 280px; float: left; } #languages { padding: 10px; width: 130px; float: left; } table thead { font-weight: bold; } table td { padding: 5px; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="challenge-status"> </div> <div id="blocked-users"> User <span id="last-user"></span> has posted the last answer, and may not post the next one. <div id="timed-out-notice"><span id="timed-out-users"></span> have answered within the last four hours and may not answer again yet. (If a user appears in this list twice, they must have answered twice within four hours!)</div> </div> <div id="answer-list"> <h2>List of Answers (newest first)</h2> <table class="answer-list"> <thead> <tr><td>No.</td><td>Author</td><td>Language</td><td>M</td><td>P</td><td>Score</td></tr> </thead> <tbody id="answers"> </tbody> </table> </div> <div id="leaderboard"> <h2>Leaderboard</h2> <table class="leaderboard"> <thead> <tr><td>No.</td><td>User</td><td>Answers</td><td>Score</td></tr> </thead> <tbody id="users"> </tbody> </table> </div> <div id="languages"> <h2>Languages</h2> <table class="languages"> <tbody id="lang-list"> </tbody> </table> </div> <table style="display: none"> <tbody id="answer-template"> <tr><td>{{NUMBER}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{MOVED}}</td><td>{{ADDED}}</td><td>{{SCORE}}</td><td><a href="{{LINK}}">Link</a></td></tr> </tbody> </table> <table style="display: none"> <tbody id="user-template"> <tr><td>{{NUMBER}}</td><td>{{NAME}}</td><td>{{COUNT}}</td><td>{{SCORE}}</td></tr> </tbody> </table> <table style="display: none"> <tbody id="lang-template"> <tr><td><a href="{{LINK}}">{{LANGUAGE}}</a></td></tr> </tbody> </table> <div id="status-conflict-template" style="display: none"> There is more than one answer with number {{NUMBER}}!<br> Please resolve this conflict before posting any further answer. </div> <div id="status-verification-template" style="display: none"> Answer {{NUMBER}} has not been verified!<br> Please review the answer and post a comment reading "Correctness verified." on the answer if it is valid. Note that this has to be done by a different user than the author of the answer! </div> <div id="status-next-template" style="display: none"> Answer {{NUMBER}} has been verified!<br> You may now post answer {{NEXT}}. </div>
Scripts utiles
Voici deux scripts CJam pour votre commodité. Vous pouvez les exécuter dans l' interpréteur en ligne .
- Pour supprimer la première et la dernière colonne du sol du puzzle (pour obtenir le code réel), collez-le dans STDIN et exécutez
qN/1f>Wf<N*
. - Pour ajouter votre code à un rectangle 96x20 et ajouter les colonnes de barres verticales autour de lui, exécutez
qN/La20*+20<{96S*+96<'|\+'|+}%N*
votre code. Pour savoir quels caractères ont été supprimés de la boîte de morceaux entre deux réponses, collez-les tous les deux dans STDIN (sans ligne vide entre les deux) et exécutez
qS-N/20/{:+}%94,\f{\33+c_@\f/:,~-_0<{N"Added character: "@;@N}{*}?}
Il montrera également si des caractères ont été ajoutés (mais pas combien cependant).
Si quelqu'un veut les réimplémenter en tant qu'extraits de pile, je suis heureux de les ajouter à ce message.
la source
Réponses:
7. GolfScript, 1 déplacé, 1 ajouté
Pièces restantes:
#
est un commentaire sur une seule ligne.)
Incrémente ensuite le 6 à 7. Et les"
actes inégalés pour commenter le reste du code. Si l'"
on correspondait, alors:
attribuerait la valeur7
à ce que la chaîne vient après, de sorte que la:"
partie est une syntaxe valide. Par exemple, si vous l'aviez5:"a"
, l'écriture"a"
pousserait en fait5
sur la pile au lieu de la chaîne (c'est un peu de la magie).Mais dans ce cas, l'interpréteur s'arrête juste quand il constate que la citation n'est pas correspondante.
Testé avec l'interprète en ligne.
la source
) :"
2. Prélude, 0 déplacé, 2 ajouté
Le programme doit être exécuté avec le mode de sortie numérique.
Morceaux restants
la source
15. Rail, 4 déplacés, 7 ajoutés
Pièces restantes
Ici, ayez un
main
! >: DPage Esolangs.J'ai utilisé l'interprète lié au bas de la page.
Dans Rail, le pointeur d'instructions est un train qui suit des voies faites à partir d'instructions. La première ligne est simplement ignorée (et doit malheureusement contenir
'main'
), donc les rails commencent en bas à droite. Comme je ne les détourne pas, tout le code va dans cette direction et est en fait juste:ce qui signifie, poussez a
9
, poussez a6
, ajoutez-les, imprimez le haut de la pile, terminez le programme.la source
18. Javascript, 3 déplacés, 10 ajoutés
Pièces restantes:
Plus de plaisir octal. Voici l'extrait de test:
Afficher l'extrait de code
la source
21. Scripts inattendus (moteur Daemon), 2 déplacés, 3 ajoutés
Unvanquished est un jeu FPS / RTS avec des humains contre des extraterrestres. Il dispose également d'un système de script intégré avec des commandes telles que l'exécution d'opérations mathématiques, la concaténation de chaînes, les conditions, le bouclage d'une variable sur différentes valeurs et la possibilité d'exécuter des scripts à partir de fichiers arbitraires. Donc je pense que c'est valable comme langage de programmation
Morceaux restants
la source
~
and runexec <filename>
.6. Pyth, 2 moved, 1 added
Remaining Pieces:
Uses the old restricted source trick that Pyth only executes the first line of its source code (note that the online interpreter does not act this way). Any value in Pyth not used for something else is automatically printed.
The
# `.3i
runs awhile 1
with atry .. except
block. The`.3
would print 0.3 as the string representation of .3 but it is prefixed by a space character, which suppresses printing. The call to i requires 2 arguments, but it receives one a not function that also gets no arguments, so an exception is thrown, and the loop breaks.la source
8. CJam, 1 moved, 3 added
Remaining pieces:
Simply pads everything in a string, pops it and then puts 8 on stack which gets printed automatically.
la source
14. ><>, 3 moved, 1 added
Remaining pieces:
(Esolang page for ><>)
Runs
en;
vertically. The first'
causes a whole bunch of chars on the first row to be added, but they are ignored.la source
16. Befunge-93, 2 moved, 2 added
Remaining Pieces
la source
19. Swift, 1 moved, 7 added
Remaining pieces:
You can try Swift online here
la source
20. ///, 0 moved, 3 added
Remaining pieces:
Esolangs page for ///
la source
/
. :)[link](...) (version)
will still be messed.26. Beam, 4 moved, 5 added
Beam is a 2D esolang (just like ><> or Marbelous) with 9 pointers, the Beam, the Store and 7 Memories.
Remaining Pieces:
How it works
The program follows an L shape from the first
i
to\
on the first row then to the!
down the\
then back to\
andi
.Whenever it encounters
:
, it outputs the value of the Beam.+
increments that value.The first time
:
is hit, that value is2
so that is printed. Then that value becomes3
when it hits!
. By this time, the value of Store becomes3
too. On the way back, when it hitsn
, the value of both beam and store are4
so the flow reverses back to!
making the value6
and5
respectively, this time, the flow passesn
, goes to:
and prints6
then terminates ati
. STDOUT has 2 numbers back to back -26
You can try Beam here
la source
1. Ruby, 0 moved, 8 added
Remaining pieces:
Since the first two non-empty lines end with binary operators, the lines are continued, so the above code is identical to
$><<
is a golfy form ofprint
and0**0
happens to evaluate to1
in Ruby.la source
3. Unlambda, 1 moved, 4 added
Remaining pieces:
la source
5. TI-Basic, 0 moved, 8 added
Remaining Pieces:
:"
comments all the code until the next:
.la source
4. Python 2, 3 moved, 8 added
Remaining pieces:
Note that a leading zero means octal, but octal 2 is just 2 anyway.
la source
9. Perl, 2 moved, 1 added
Remaining Pieces
la source
10. Bash, 0 moved, 9 added
Remaining Pieces
la source
11. TCL, 3 moved, 10 added
Remaining pieces:
la source
12. Mouse, 3 moved, 3 added
Remaining pieces:
Use this interpreter.
la source
13. PHP, 3 moved, 6 added
Remaining pieces:
Run with
php -r
.la source
17. Fission, 4 moved, 2 added
Remaining pieces:
Esolangs page for Fission.
I didn't find a way to compile the interpreter under Linux (There was a way getting the
arc4random
function but it only worked for pure C program). So I simply replaced the lineatom.dir = (atom.dir + arc4random() % 3 + 3) & 3;
inMirror.cpp
withassert(false);
.la source
22. Deadfish x, 0 moved, 8 added
Remaining Pieces
(Esolang page)
It's the Deadfish family, good for nothing but printing numbers! Unlike the original Deadfish, Deadfish x ignores invalid chars (in the Python interpreter at least), so that's why it was used instead.
x
is increment,k
is output,c
is square andd
is decrement.echo
already has ac
but no other char out ofxkd
is on the board, so I just added the rest. TheD
fromDisp
sets the accumulator to zero, but luckily that's before thec
.la source
24. 3var, 1 moved, 9 added
Remaining Pieces:
(Esolang page for 3var)
Works sort of like the Deadfish solution, but instead I print each digit separately, allowing for a simple
iipsp
to meaninc inc print square print
.$
is the multiline comment syntax for 3var, while~
is a single line comment.la source
23. Brat, 2 moved, 6 added
Remaining Pieces:
Try Brat here
la source
27. dc, 2 moved, 5 added
Remaining pieces:
Because I guess someone will want to do Brainfuck before it is too late...
la source
25. FALSE, 0 moved, 3 added
I tested it in this Javascript interpreter. I guess the idea is that it gives up upon encountering the
#
, which is supposed to form a while loop if it follows two blocks.Remaining Pieces
la source
L
in the remaining pieces. But since the challenge has already moved on and we probably won't run out ofL
s any time soon (and won't be able to use up all pieces either), we will continue without thatL
.28. ooRexx, 1 moved, 9 added
Remaining Pieces:
ooRexx docs
la source
29. Mathematica, 4 moved, 9 added
Remaining pieces:
Mathematica block-comments are written as
(* ... *)
.la source
30. DWScript, 1 moved, 9 added
Remaining Pieces:
Some links. Basically, DWScript also has the same block comments as Mathematica and
PrintLn();
prints.la source