TypeScriptのanyは嘘?

安全性の極北から見るTypeScript https://speakerdeck.com/uhyo/an-quan-xing-falseji-bei-karajian-rutypescript という発表から派生した一連のツイートをまとめました。
5
前へ 1 2 ・・ 7 次へ
dz づ / Kazumi 👾 @dz_

嘘をつかないためのお話!any汚染☠から守る! #tsjp

2019-10-02 20:10:29
NOGPON @NOGPON

any と書いた瞬間、あなたは嘘を書いている #tsjp

2019-10-02 20:10:29
KazutakaSakurai @kazutaka

かつてはObjectで逃げ今はanyで逃げている私は嘘付きだったw  #tsjp

2019-10-02 20:11:44
mgr=['カービィ','ちょろ太','まぐろ','もぐら','みゅー'] @biccur_gama

anyとas ・正しい方向に型を修正するために使う ・嘘を変数に保存した時点でアウト ・anyは嘘で伝染する #tsjp

2019-10-02 20:14:13
うすい @n_skij

any, asはあくまでも正しく修正してあげるために使う 都合の良い嘘にするものではない #tsjp

2019-10-02 20:15:25
dz づ / Kazumi 👾 @dz_

嘘(anyなど)による汚染範囲を狭くすることが重要 #tsjp

2019-10-02 20:15:48
FUJI Goro @__gfx__

TypeScriptのanyを「嘘」と呼び、anyが伝播するのを「嘘の汚染」と呼ぶのは、言葉が強すぎる。ぼくとしてはこういう言い方をする界隈には近づきたくないな。

2019-10-02 23:58:00
🈚️うひょ🤪✒📘 TypeScript本発売🫐 @uhyo_

Q. anyだって立派な言語機能ですよね? A. はい、嘘によって安全性を下げて安全性とコストのバランスを良くするという有用性を持つ言語機能です (ぇ

2019-10-03 00:37:37
wm3 @wm3

TypeScript の any を嘘と呼ぶのはまあある意味しっくりした表現(Javaで言えば何でも呼べるが失敗するオブジェクトみたいなものだし)だけど、あくまでそういう開発スタイルで書いたらそうなるだけで、TypeScriptがそういうスタイルだけを推奨してるわけではないだろうからなあ。

2019-10-03 00:48:50
うしろのこ @ushiro_noko

まあanyを実体にしようとすると(汚染したり伝播したりを表現しようとすると)妥協より嘘の方がしっくりくるのはわかる

2019-10-03 00:59:47
きしだൠ(K1S) @kis

@__gfx__ なんか、言葉が強いとかじゃなくて、anyを嘘と呼ぶのは言語機能の実態にあってないので、anyの機能をしらないか嘘という言葉の意味をしらないかどちらかな気がする。 cの long* lp= &hoge int* ip=(int*)lp みたいなのは嘘感あるけど。

2019-10-03 02:44:27
新米医療情報技師 @Kengo_TODA

anyは嘘、私としてはなんの違和感もなく「そうだよねぇ」って感じ。少なくともインタフェースに露出したanyは多くの場合に驚き最小の法則無視でしょ。

2019-10-03 07:24:19
kmizu @kmizu

@__gfx__ 「嘘」というか、anyはanyでしかないというか、型システム的にはtopであると言えばいい気が。

2019-10-03 09:25:27
kmizu @kmizu

あー、うん。この発表ですか。 speakerdeck.com/uhyo/an-quan-x… テクニカルに間違ったことは言っていない(確かに「嘘」ってのは、危険性を伝えるためにあえてそういう表現使ってる気がしますね)ので、あとはこういうスタイルの発表を好むかどうかでしかないですね。

2019-10-03 09:34:50
FUJI Goro @__gfx__

@kmizu 件の発言は釣りの意図を感じるので型理論的な正しさとは関係ないかと。ところで、top型って「任意の操作を警告なしで許可してコンパイルを通す」という意味も含意するんでしたっけ?

2019-10-03 09:37:13
R @RyoNkmr_

TypeScriptは各種フレームワークの対応も進んできて導入が昔よりだいぶ楽になったし、最近は「がんばらない」ところから始めると良いよ!という優しい世界観醸成されつつあった(ように見えた)中、「any使うのは嘘ついてるのと一緒」はanyから始めた人たちを無用に萎縮させる気がする

2019-10-03 09:38:38
kmizu @kmizu

@omochimetaru @__gfx__ 含まないですね。ちょっとそこは一般的なanyとTypeScriptのanyとの違いです。

2019-10-03 09:41:07
kmizu @kmizu

@omochimetaru @__gfx__ で、ちゃんと件のスライド読んだ感想ですが、後半は表現が過激になってますが、「安全性に極振りした」という前提を置いているので、あとは好みの問題でしかないと思いました。嫌うのもわからなくはないですが、「釣り」というのは逆に登壇者に失礼かと。

2019-10-03 09:42:22
𝕂𝕒𝕚𝕕𝕠 @odiak_

@kmizu @omochimetaru @__gfx__ 今はunknown型が一般的なtop型になっているようです

2019-10-03 09:47:39
FUJI Goro @__gfx__

@kmizu @omochimetaru 自分と違うポリシーをもつ人たちをコードで嘘をつく人という扱いにしているように見えますが。

2019-10-03 09:49:10
前へ 1 2 ・・ 7 次へ