タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

JavaScriptとTypeScriptとCに関するraimon49のブックマーク (2)

  • TypeScriptは静的型付け言語なのかという話 - odz buffer

    この辺の話。 静的型付言語は型システムを入れる事で変数への代入や関数適用を禁止する事だと思っているので、any を介して定義とは異なる物を渡せてしまう動作を許してしまっているのに静的と表現するのがモヤモヤする、という意味です。— mattn (@mattn_jp) August 10, 2022 例 pic.twitter.com/k4K8R6OZqT— mattn (@mattn_jp) August 10, 2022 動的/静的な型付けと強い/弱い型付けはそれぞれ違う概念な気が。 https://t.co/OhpkXV6U1s— odz (@odz) August 11, 2022 (中略) 静的型付の定義は型システムにより型付きの関数引数や変数へ異なる型の値が適用される際にはエラーになる(または警告される)というのが僕の認識なのです。— mattn (@mattn_jp) Augus

    TypeScriptは静的型付け言語なのかという話 - odz buffer
  • TypeScriptのanyみたいな「なんでも代入できる型」を分類する - soutaroブログ

    安全でないもの - void * (C) いろいろあるんだろうけど、Cから始めよう。void*にはなんでもキャストできるし、元の型に戻すこともできる。まあany。問題は変なことをやった場合。(Cはよくわからないから誰かが例を書いてくれ。) キャストによって変な型が得られた場合の挙動は未定義なんだと思う。(知らないから、誰か仕様を調べてくれ。)未定義というのは、コンパイラとか計算機は何をしても良いという意味で、 プロセスの実行を止める 最適化によってコードが消える プロセスのメモリを破壊しながら動き続ける 鼻から悪魔が出る などのパターンがありうる。実際には大体SEGVで落ちると思うんだけど、それは仕様には含まれていない。 ここで「安全である」というのは「プログラムの実行中に未定義の状態にならない」という意味である。つまり、Cは安全ではない。 キャストの検査で安全になったもの - dynam

    TypeScriptのanyみたいな「なんでも代入できる型」を分類する - soutaroブログ
  • 1