1.レコード型、あるいは、それに類する型を持つ
2.レコード型(or それに類する型)の構造的部分型関係を扱える
3.できれば、多相レコード型とかそれと同様なのを持つ
4.できれば、レコードのフィールド名がファーストクラス
( x = [name = 3] : [name : int] なら nameがファーストクラス)

これカバーできる言語ない?
うえでおしえてもらったのしらべてみたけど
SML/NJってのは1,2を満たしてそう
SML#ってのが1,2,3を満たしてそう、
あと
scalaが無名オブジェクトみたいなやつで1,2,3を満たしてそう?
   型を一部か書かないとダメだけど
ほかにこの辺でなんかいい言語ない?
clojure? ってのが4みたして相だけどコンパイル時に型ちぇっくしてくれないよねそれ?
  うーんなんかない?