20:47:56
icon

はい><;

20:47:45
2018-03-23 20:45:38 ashidaの投稿 ashida@friends.nico

このアカウントは、notestockで公開設定になっていません。

20:47:41
2018-03-23 20:44:26 ashidaの投稿 ashida@friends.nico

このアカウントは、notestockで公開設定になっていません。

20:46:49
icon

ていうか、オレンジは型推論も嫌ってるし、もっと言うとAdaみたいに「単純な型をそのまま使うな!!! 型を作れ!!! 型チェック!!!」って発想好きだけど、Ada使った事無いから実際にはそうしてない><;

20:44:46
2018-03-23 20:33:57 ashidaの投稿 ashida@friends.nico

このアカウントは、notestockで公開設定になっていません。

20:44:43
2018-03-23 20:31:26 ashidaの投稿 ashida@friends.nico

このアカウントは、notestockで公開設定になっていません。

20:41:57
icon

オレンジはこの前こんなの書いた><;
mstdn.nere9.help/@orange_in_sp
では実行時にしかエラーでないので
mstdn.nere9.help/@orange_in_sp
明示的な型変換の宣言で契約プログラミングでどうにかする方式><;

Web site image
orange (@orange_in_space@mstdn.nere9.help)
Web site image
orange (@orange_in_space@mstdn.nere9.help)
20:38:35
2018-03-23 20:33:33 らりお・ザ・何らかの🈗然㊌ソムリエの投稿 lo48576@mastodon.cardina1.red
icon

strong typedef する場合、「開発者の視点ではある型は制約を満たす値しか持てない」ことを保証しますが、その制約チェックは実行時に(コンストラクタ内などで暗黙に)行われるケースが多いです

20:36:15
icon

オレンジがこの前「どうにかC# で、部分範囲型っぽいこと出来ないのかな?><;」って書いたコードにそっくりっぽさが・・・><

20:32:49
icon

これっぽい?><
本の虫: C++1yに提案されている不透明エイリアス(opaque alias) cpplover.blogspot.jp/2013/09/c

20:30:30
2018-03-23 20:27:07 らりお・ザ・何らかの🈗然㊌ソムリエの投稿 lo48576@mastodon.cardina1.red
icon

或いは C++ や Rust では strong typedef (opaque typedef) という技法があり、これを使うことで実質的にそういった型は定義可能です

20:30:23
2018-03-23 20:26:09 らりお・ザ・何らかの🈗然㊌ソムリエの投稿 lo48576@mastodon.cardina1.red
icon

liquid haskell とか

20:29:49
2018-03-23 20:24:46 ashidaの投稿 ashida@friends.nico

このアカウントは、notestockで公開設定になっていません。

20:26:28
2018-03-23 20:25:54 らりお・ザ・何らかの🈗然㊌ソムリエの投稿 lo48576@mastodon.cardina1.red
icon

それ極めると refinement data type (篩型)になると思うんですが、型推論で SMT ソルバなどが必要になるので……

20:26:03
icon

部分範囲型なら、nullが入らないどころか例えば2~42までの整数を表す型とか、曜日列挙型の部分範囲型として平日型を作るとかできるけど、それって入ってきちゃ駄目な値を型の段階で排除してるという面ではnull非許容な型と同じだよね・・・?><

20:23:24
icon

裏返して考えると、AdaとかPascalでの部分範囲型が、他の言語にほとんど採用されないのって逆にわけがわからなくなるかも・・・><(範囲を決めた型を作る事で型チェックでどうにかする仕組みって、null非許容の型でどうにかしようって発想と似てるどころかさらに先をいってる発想だと思うんだけど><)

20:20:05
icon

rust-lang-ja.github.io/the-rus
まだ読みかけだけど、確かに便利そう><;
あと、"小休止:アンラップは悪ではない" の所の "パニックがプログラムのバグの兆候となるとき。" の記述が、
オレンジが書いた "むしろエラーの更なる先延ばしにしてるコードになるんじゃないのかなって気が><" に相当する場面?><

20:14:37
icon

"// `haystack`(干し草の山)からUnicode文字 `n"(以下略)の所のコード、型がわかりにくい・・・><

20:11:26
2018-03-23 20:10:14 らりお・ザ・何らかの🈗然㊌ソムリエの投稿 lo48576@mastodon.cardina1.red
icon

.? みたいな演算子は、フィールド参照にしか使えなくてロジックを繋げられないので、そこで if が必要になってしまうのがしょーもないという

20:11:22
2018-03-23 20:09:02 らりお・ザ・何らかの🈗然㊌ソムリエの投稿 lo48576@mastodon.cardina1.red
icon

null か否かの確認は、続くロジックと合成可能な形で与えることで自然に記述できる、という話もあって、 Rust でのコンビネータはそれを支援しますし、あるいは Haskell の >>= なども (Maybe や Either については)そういう使い方になるかと

20:10:54
icon

これの最初の例、Adaとかだと「部分範囲型を使え!! ていうか型作れ!!!」ってなるやつだ・・・><; -- rust-lang-ja.github.io/the-rus

20:08:56
2018-03-23 20:06:26 らりお・ザ・何らかの🈗然㊌ソムリエの投稿 lo48576@mastodon.cardina1.red
icon

エラーハンドリング - rust-lang-ja.github.io/the-rus
ちょっと古いですが、これ読めば Rust での望ましいエラーの扱いはだいたいわかります

20:08:26
icon

今まで「(nullやその代わりの準備出来てるかどうかの)チェックしないといけないようなコードは最小にせよ(最小にした上でどうしても残る部分はチェックする仕組みを活用して安全に)」って話だと思ってた><;

20:05:29
icon

・・・という事は、
"(null安全がむしろnullとnullチェックを多用せよって話だとしたら別だけど><)"
って話っぽい・・・?><
mstdn.nere9.help/@orange_in_sp

Web site image
orange (@orange_in_space@mstdn.nere9.help)
20:04:26
icon

「これの返り値の型は、チェックが必要なやつだぜ!!!」って使う人に教える仕組み・・・?><(言い換えるとそうじゃないやつを「これはいちいちチェックしなくてもだいじょうぶだよ!」って表現するためのもの・・・?><)

20:01:29
2018-03-23 19:57:53 らりお・ザ・何らかの🈗然㊌ソムリエの投稿 lo48576@mastodon.cardina1.red
icon

Rust の Option と Result と ? 演算子は非常によくできているので参考になります(あるべき姿のひとつという感じ)

19:58:25
icon

x先延ばし
o先送り ?><;

19:56:32
icon

nullableなものでnullチェックしてないとコンパイル時にエラー出すのはまずわかる><(正しいと思う) でも、それでnullを避けて出来上がるコードって、むしろエラーの更なる先延ばしにしてるコードになるんじゃないのかなって気が>< ちょっと違うけど、空catchを多用してるみたいなコードになるんじゃないのかなって・・・><(null安全がむしろnullとnullチェックを多用せよって話だとしたら別だけど><)

19:51:31
2018-03-23 19:33:15 unaristの投稿 unarist@mstdn.maud.io
icon

このアカウントは、notestockで公開設定になっていません。

19:32:32
icon

null安全の話で微妙にわからない点は、null許容型にnullを入れてる状態って、多くの場合「準備できてないです!><;」って表現の為に使われてると思うんだけど、そういうコードからnullを排除しても結局『「準備できているか?」のチェックが必要』 かつ 『怠ると実行時にエラー出しちゃう』点は変わらない気がするんだけど・・・><

19:19:10
2018-03-23 14:17:22 えじょねこの投稿 ejo090@mstdn.nere9.help
icon

かっこいいアパート情報です

Attach image
10:49:50
2018-03-23 06:12:54 えじょねこの投稿 ejo090@mstdn.nere9.help
icon

.

Attach image
01:39:30
icon

愛生会病院、埼玉東部にあるので、行ったことはないけど目の前通った事は何回もある・・・><

00:27:39
2018-03-23 00:21:52 らりお・ザ・何らかの🈗然㊌ソムリエの投稿 lo48576@mastodon.cardina1.red
icon

たのし

Attach image
Attach image