新しいものを表示

オレンジが好む環境でオレンジが好むように書くと、出力させる部分わざわざ別クラスにして誇大化しちゃいそう><;

別世界って感じでおもしろい><

orange さんがブースト

mstdn.maud.io/@kb10uy/10247331

こういう場合なら、後続の write!(output, ...) する部分を別の関数とかにして、そっちの型パラメータとして W: Write みたいな型で受け取ってやるというのが良いかと

スレッドを表示
orange さんがブースト

文脈はこれで、ようはstdoutとファイル出力を一括で扱いたい(

orange さんがブースト

そういえばここの実装本当にこれでいいのか地味に悩んでるのでRustに自信ニキの助言がほしい
github.com/kb10uy/ongeki-data/

orange さんがブースト

この定義のあとに補足があるのでそっちも読んでねというお気持ちです (プログラムについての文脈ではこういう定義になるけど、型システムという概念は論理学とか数学とかもっと広い分野で使われる概念だよ〜的なことが書いてあり)

スレッドを表示

そういえば放送大学のえらいおばけの人はマストドンやらないんだろうか?><(おばけはマストドンするイメージ)

orange さんがブースト
orange さんがブースト
orange さんがブースト

コンピュータサイエンスが学べるいい大学ないですか

orange さんがブースト

TaPL 日本語訳だとこうなってる:

> 型システムとは、プログラムの各部分を、それが計算する値の種類に沿って分類することにより、プログラムがある種の振る舞いを起こさないことを保証する、計算量的に扱いやすい構文的手法である。

オレンジが言うような、Adaが目指してる『型安全』って、何て言うのか未だわからない><(認知工学的型安全?><;)
(世の中の主流でありより学術的に数学視点での型安全はHaskellerが言う型安全?><(?))

つづきも含めればおk・・・・?><(マストドンにTaPL警察いないのかな?><;)

orange さんがブースト

で、もっとカジュアルに言うところの「型 (システム) が強い」というのは、基本的には「型検査によってより多くの制約や正しさを保証してほしい」くらいの意味。

たとえば go でどうしても interface {} を使う必要があるとかの場面だと、どのような型でも受け入れてしまうので、ある種の保証や正しさの検査が行えなくなる。
こういうのはたとえ静的型付きであってもカジュアルには「型システムが弱い」と形容したりする

スレッドを表示

オレンジが実際に読んでない本なので推定だし自信無いけど、TaPL基準ではこの説明では微妙っぽい気が・・・><(逆にオレンジが言う型!><# はそれに近いと思うけど)

orange さんがブースト

めっちゃ雑な説明をするけど。
前提として、強い型付けというのは型検査によって型エラーが実行前に阻止されるような型付け。逆に弱い型付けは実行時に型エラーが発生する。
つまり前者の方が型による安全性の保証 (エラーやバグの阻止) が強力。

orange さんがブースト

そもそも型が弱いの意味を理解できてない

orange さんがブースト

ダンボールでBEAを作ったら本家BEAに寄贈することになった - ニコニコ動画
nicovideo.jp/watch/sm35425728

古いものを表示
:realtek:

思考の /dev/null