タグ 部分型
人気順 5 users 50 users 100 users 500 users 1000 users部分型における変性と極性 - なぜScalaの変性は+や-で指定するのか - 貳佰伍拾陸夜日記
この記事はScala Advent Calendar 2022の19日目です. Scalaではジェネリック型の変性(variance)は+や-で指定しますが, 他の言語(たとえば, C#, Kotlin)ではoutやinだったりします. この記事では変性の意味を整理して, なぜScalaでは+/-の記号を使うのか説明します. 発端 こういう話題がありました. Scala は共変が + で... 続きを読む
TypeScriptのunion型はorです 〜union型、構造的部分型、余剰プロパティチェックの話〜 - Qiita
Help us understand the problem. What is going on with this article? 続きを読む
Goはオブジェクト指向言語だろうか? | プログラミング | POSTD
Go言語では、'オブジェクト'という名前のコンセプトは存在しませんし、継承もできません。しかし、Go言語では代わりにコンポジションや匿名フィールドといった概念を利用して、擬似的に部分型(Subtyping)を実装できます。そしてそれは、これまでよりも良い方法のようです。“オブジェクト指向”の意味を本当に理解するには、この概念の始まりを振り返ることが必要です。最初のオブジェクト指向言語はSimula... 続きを読む
Haxeの多相関数の型推論について - Qiita
Haxeでは型推論があり、匿名型があり、構造的部分型付けがあり、いろいろ便利なのですが ここでは、Haxeの型システム上で起りうる問題と解決を提示していきます。 パラメトリック多相関数の型推論について id関数の望ましくない、コンパイルエラー Haxeではパラメトリック多相の型推論は失敗します。たとえば関数を見ていただきたい。 続きを読む