タグ

zigとtypeに関するmasterqのブックマーク (2)

  • Zig 言語用ライブラリ basis-concept を書きました - ::Eldesh a b = LEFT a | RIGHT b

    Zig 言語用のライブラリ basis-concept を書きましたのでその紹介をします。 > github.com/eldesh/basis_concept 序 Zig は手続き的な型付き言語です。表現力としては、型上のコンパイル時計算によりアドホック多相を表現出来ます。 ただし型コンストラクタや部分特殊化が無いため、型の分類をシステマチックに行うのが面倒になっています。 このライブラリは型上の述語によって基的な型の分類方法とそれらの上のジェネリックな関数を提供するユーティリティーライブラリです。 Concept このライブラリでは型を分類するための述語をコンセプトと呼びます。主なコンセプトを紹介します。 Eq 等値比較を可能な型です。== で比較でき、かつポインタを含まない型は自動的にこのコンセプトを満たします。eq と ne という関数を持っている型の場合もこのコンセプトを満たしま

    Zig 言語用ライブラリ basis-concept を書きました - ::Eldesh a b = LEFT a | RIGHT b
  • Zig の文書読んで所感を記す - Qiita

    これは何? Zig を学ぼうと 公式文書 (0.91時点) を読んでいるんだけど、読みながら思ったことを記していく。 続編は Zig の文書読んで所感を記す #2 へ。 その前に Zig への言及が最近多いなぁ、でもシンプルな言語だって言うしまあどうでもいいかなぁ、ぐらいの気持ちでいたんだけど、ZigはCMakeの代替となるか を読んで、俄然興味が湧いてきて、じゃあ読んでみるか、と思った。 数値 i32 とか u16 のような名前で型が提供されている。 整数は 128bit まである。そればかりか、 3bit とか 53bit のような中途半端な幅の整数も使える模様。面白い。 さらに。何に使うのかわかってないけど、 i0 u0 のようなゼロビットの整数もある。 ちなみに0ビット整数には 0 が代入できる。 u1 は、 0 または 1。 i1 は、 0 または -1 が代入可能。 浮動小数点

    Zig の文書読んで所感を記す - Qiita
  • 1