謎's キッチン

謎のひとりごと。Amazon欲しい物リストはこちら: https://www.amazon.co.jp/hz/wishlist/ls/CCPOV7C6JTD2

Xtal

D言語とは別方向で進化してる。
rubyは仕様読んでもやる気が起きないので飛ばしてXtalやる予定。Xtalの開発者がD言語ECMAScriptも参考にしてるので、取っ掛かり易そうだし。
幾つかメモ。

  • D言語で__traits(hasMember, obj, test)はXtalでobj.?test…って違うっぽい。nop(nop.(any)でnopを返す)を返すらしい。興味深い仕様。
  • obj.testはobj.("test")とも書ける。D言語だと現状ではmixin(obj.stringof ~ ".test")と書かなきゃ駄目。
  • private、public、protecetdが記号なのが新しい。どっちが良いかは判断つかないけど。
  • イテレータの演算でイテレータを返すのが良い。
  • スペースによる演算の優先順位変更はどうなんだろう…。スペースに意味を持たせると遅くなりそう。
  • calleeで現在実行中の関数を得れる。これ、ネイティブな言語だと実装無理っぽい?
  • 宣言が:なのはどうなんだろ。JSと同じくvar、もしくは先頭に記号一個(例えば$とか?)の方がいいと思うが。このせいで継承が:からextendsになっちゃってるんだし。