Dart がおもしろいかもしれない

いつも新しいプログラミング言語を玩具にしてしまう人が総スルーをきめこんでいるDartですが、ちょっと触ってみたところ、おもしろいかもしれないと思った。

クラスの機能が、異常にJava的なんだけど、文字列への変数埋め込みや変数宣言などは普通に便利で楽。

硬さと緩さの絶妙なバランスを持った言語なのかもしれない。

遊んだコード

何しようとしてるかバレバレです。

class Obj {}
 class Atom extends Obj {var value; withValue(value) => this.value = value;
 
        Atom.withValue(this.value);
 
        String toString() => 'Atom($value)';}
 class Nil extends Atom { Nil(); String toString() => 'Nil()';}
 class ConsCell extends Obj {var l, r;
 
        withValues(l, r) {this.l = l;this.r = r;}
 
        ConsCell.withValues(this.l, this.r);
 
        String toString() => '($l . $r)';}
main() {var c1, c2, c3; c1 = new ConsCell.withValues(new Atom.withValue(1), new Nil()); c2 = new ConsCell.withValues(new Atom.withValue("二"), c1); c3 = new ConsCell.withValues(new Atom.withValue(3), c2); print(c3);}

実行結果

$ dart_bin xxx.dart(Atom(3) . (Atom() . (Atom(1) . Nil())))

また、時間みつけて遊んでみたい。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です


reCaptcha の認証期間が終了しました。ページを再読み込みしてください。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください