タグ

型に関するxiangzeのブックマーク (5)

  • Python最新バージョン対応!より良い型ヒントの書き方 | gihyo.jp

    寺田 学です。9月の「Python Monthly Topics」は、Python 3.5で導入され、多くの場面で活用されている型ヒント(Type Hints)について、より良い型ヒントの書き方を紹介します。 Pythonの型ヒントとは Pythonは動的型付け言語です。型を指定せずに変数宣言できますし、関数の引数や戻り値に型を宣言する必要はありません。 Python 3.5(2015年9月リリース)で型ヒントの仕組みが入りました。型の指定が不要なPythonですが、型ヒントを付けることで、「⁠コードの可読性向上⁠」⁠、「⁠IDEコード補完の充実⁠」⁠、「⁠静的型チェックの実行」といった静的型付け言語のようなメリットを得ることができます。 Pythonの型ヒントは以下のように記述します。 name: str = "氏名" # 変数nameをstr型と宣言 def f(arg: int) -

    Python最新バージョン対応!より良い型ヒントの書き方 | gihyo.jp
  • ホモトピー型理論

    2023 上村 太一-HTML版: https://uemurax.github.io/hott-ja/index.html-PDF版: https://uemurax.github.io/hott-ja/index.pdf-リポジトリ: https://github.com/uemurax/hott-ja-ライセンス: この作品はクリエイティブ・コモンズ表示4.0国際ライセンスの下に提供されています。

  • 幽霊型を知った | κeenのHappy Hacκing Blog

    κeenです。かねてより気になっていた幽霊型(Phantom Type)について知ったのでアウトプット。 このPDFがベースになって ます。 余談ですが英語がファントム・タイプと中々中二な名前なので和訳も幻影型とかそういう方向に走って欲かったな。 「幽霊型」で調べると真っ先にこのサイトが出てくるのですが、ミスリーディングと言われていました。 別に間違ったことを書いている訳ではないのですが、幽霊型の応用例なのでこれこそが幽霊型だと思ってしまうと少し視野が狭くなってしまうようです。 モチベーション ブーリアンと整数と条件分岐と足し算と比較が出来るミニ言語を考えてみます。自動で型変換は行わない(つまりintとboolの比較などは出来ない)言語とします。こんな感じでしょうか。 datatype exp = Int of int | Bool of bool | If of exp * exp *

    幽霊型を知った | κeenのHappy Hacκing Blog
  • 型安全性と統計計算 | POSTD

    私は大ざっぱに言って、統計学のコミュニティはコンピュータサイエンスの概念にもっと触れた方が恩恵を得られると考えています。その考えを基に、記事では、統計計算システムの振る舞いに関する規範論の展開に 型安全性 の概念を用いる可能性を説明します。また、そのような規範論によって、現行システムの誤用のされ方を明確にできることも論じます。それとともに、統計向けのより型安全な言語を実装しようという現実的提案に立ちはだかる数々の難題についても述べていきます。 コンピュータサイエンスにおける概念としての型安全性 Vijay Saraswat は、型安全な言語を以下のように定義しています。 ある言語内でデータに対して実行できる演算がそのデータの型に許可されたもののみであれば、その言語は型安全である。 個人的にはこの簡潔さは気に入っているのですが、いくつかの例を使って上記の定義を説明すれば多くの読者の皆さんに

    型安全性と統計計算 | POSTD
  • Rust's Type System is Turing-Complete

    (N.B. The word “fuck” appears multiple times in this post. I recommend that the reader temporarily not consider “fuck” as profanity, as it isn’t used that way here.) Not so long ago, a certain someone made a challenge on the Rust subreddit asserting that while everyone likes to say that Rust’s type system is Turing-complete, no one actually seems to have a proof anywhere. In response to that post,

  • 1