Soft Typingに対するMatzの誤解とDuck TypingとStructural Subtyping

静的なダックタイピングのような,構造的部分型のこともインターフェースとして話されているのだろうか #rubykaigi
2016-09-08 10:47:06
「Ruby3はいつ来るのか」「わかりません」「オープンソースプロジェクトには締め切りはない」「でもゴールがないと働かない」「月に行く、という宣言」 (スライド上はSoft typing, Ruby 3x3, Concurrency) #rubykaigi
2016-09-08 10:55:59
未来に向けてハードルのある目標を設定する。ケネディは1960年代に月に行くと宣言、1969年に実現された。燃料投下はMatzの役割。 ・Soft typing ・Ruby 3x3 ・Concurrency 宣言ではないが、次のオリンピックの頃に。 #rubykaigi
2016-09-08 10:59:34
松本さんは、Rubyで現在考えている、ダックタイピングを維持したまま型推論できるようなSoft typingの構想を話しました。こういった構想は「開発者の皆さんに、より良いプログラミング経験を提供すること」「前に進み続けることで幸せを届けるため」と話しました #rubykaigi
2016-09-08 11:01:39
soft typingという用語がacademicな世界での使い方と異なるので別の語を使って欲しい、という指摘が。用語は実際重要。 #rubykaigi
2016-09-08 11:10:37
「此処で言ってるsoft typingってschemaで使われてるのとは違いますよね? アカデミックで使われてる言葉は大事にして欲しいと思います」 「別の名前考えておきます」 #rubykaigi
2016-09-08 11:11:39注:「schema」はおそらくScheme(関数型プログラミング言語の一つ)のこと

ちなみに本来のsoft typing dx.doi.org/10.1145/182409… 1994年のLisp and Functional Programming(現在のICFP)の論文。
2016-09-08 11:27:41(本来のsoft typingは、静的に型付けできる部分はして、できない部分は動的に型付けするアプローチのこと)

@esumii structural な subtyping で型推論をするような話でした (用語が変だったらごめんなさい)
2016-09-08 11:31:49
.@tanaka_akr どうもです! 完全に静的な型つけじゃなくて一部は動的とかだったらsoft typingの一種ではあるかも
2016-09-08 11:35:11
@esumii そこはよくわかりませんでした。全部検査するという話もあった気がしますし、検査できなくても動かすという話もあった気がします。少なくとも重点はプログラムの間違いを検出するところにありました。
2016-09-08 11:42:15
.@tanaka_akr そうすると主眼はやっぱりstructural {polymorphism,subtyping}の型推論っぽいのでキャッチーな名前がほしかったら「ダック型推論」とか:-)ですかね。重ね重ねどうもです
2016-09-08 11:57:29
@esumii 念のため、完全に静的ではないだけで、「プログラムの間違いを検出する」点はsoft typingでも同じ。もちろん、普通の静的型と同様、実行時効率の向上にも使えますが。
2016-09-08 12:18:54
@esumii 気になって検索してみると, 2014年のRubyKaigiで omniref.com/blog/2014/11/1… hackerslab.aktsk.jp/event/rubykaig… のような発表をされているようです. 発表動画 → rubykaigi.org/2014/presentat…
2016-09-08 12:25:58
@esumii あ, 発表動画は間違えてRubyKaigi2014のキーノートのURLを張っちゃいましたm(_ _)m
2016-09-08 12:28:04
@cocoatomo ありゃ、オリジナルもreferされてる(?)のにかなり違う話をしてるので混乱してるみたいですね…。情報どうもです
2016-09-08 12:29:34
hackerslab.aktsk.jp/event/rubykaig… みたいな話だったら(推論できるのとできないのを切り分けていいのだったら)、レコード多相の pllab.riec.tohoku.ac.jp/smlsharp/ja/?F… 話が割と応用できるのではないですかね
2016-09-08 14:06:13
.@kmizu そもそもRemyのレコード多相がOCamlのOの基礎理論です。継承があるのでレコード連結があったり、実装は(インデックス渡しではなく)ハッシュ表だったりしますが。
2016-09-08 14:09:56