このブログはURLが変更になりました

新しいブログはこちら→ https://matsuu.hatenablog.com/

正しい無限ループの書き方 多言語編

きしださんの正しい無限ループの書き方がおもしろかったので、Java以外の言語で検証してみた。
もっとスマートな方法があったら教えてください。

Perl

変数だと「$」がつくので定数で実装。定数名として使うためにはこちらによるとuse utf8が必要みたい。

#!/usr/bin/perl

use strict;
use warnings;
use utf8;
binmode STDOUT => ":utf8";

use constant д => 1;

for(;д;){
        print "でれません\n";
} 

PHP

PHPも変数だと「$」がつくので定数で。

<?php

define('д', true);

for(;д;){
        print "でれません\n";
} 

?>

Ruby

for(;;)構文がない(よね?)ので、whileでお茶を濁す。-Kオプションで文字コード指定が必要。

#!/usr/bin/ruby -Ku

TдT = true

while TдT 
        puts "でれません"
end

JavaScript

Rhinoで動作確認。(printをdocument.write等に変更すれば)Firefoxでも動いた。SpiderMonkeyではダメ。

var д = true;

for (;д;) {
        print('でれません');
}

ダメっぽい言語

Python

変数名にマルチバイト文字が使えないっぽい。

シェルスクリプト(bash)

変数名にマルチバイト文字が使えないっぽい。

その他

徐々に増やしていく予定。