新しいものを表示
orange さんがブースト

ネットのオタク、興味のベクトルが同じ方向向いてればいいんだけど、向いてなければ話すこともないしこんにちはとさようならくらいしか言うことがない

C# で部分範囲型もどき、失敗><;(長文) 

C# で部分範囲型もどきを強引に実現させる作戦(?)、列挙型をそれぞれ作って、列挙型をラップするクラスを作ってそっちを階層構造にして、暗黙の型変換すればいい?><と思ってちょっと作ってみたけど、

曜日クラス=曜日型.日曜日;
はいいとして、

平日クラス=曜日型.火曜日;
って書けなくて、
平日クラス=平日型.火曜日;
って書くか
平日クラス=(平日型)曜日型.火曜日;
って書く事になるし、
平日クラス=(平日型)曜日.日曜日;
が静的なエラーにならない><;(これじゃ全く意味無い><;)

夢、オレンジはものすごい長編の夢を見てたこと多かったけど最近は見ても短くなった><

IDEでタイピング中からエラーわかる(すばらしい!><)→ビルドするとエラーわかる(まあしょうがない><;)→実行時にエラーがわかる(は?><)

遅い上にビルドしなきゃわかんないって、IDEで甘やかされた身からすると「そんなの書いてる途中からチェックしてよ!><;」ってなるしやっぱ部分範囲型欲しい・・・><

代わりにContract.Requires使えばビルド時にちゃんとチェックしてくれる><(でも、契約プログラミング有効にしてビルドするとビルドめちゃくちゃ遅い><;) 

public static explicit operator BubunHanniGataModoki(int v)
{
Contract.Requires(v > 2 && v < 5);
return new BubunHanniGataModoki(v);
}

C# で無理やり部分範囲型っぽい事をするためにこんなの書いてみたけど、当たり前だけど実行時にしかエラー出ない・・・>< 

//明示的な型変換の時に範囲チェックするという方式><;
class BubunHanniGataModoki
{
//大きく略
//intからの明示的な型変換の宣言
public static explicit operator BubunHanniGataModoki(int v)
{
if (v > 2 && v < 5)
{
return new BubunHanniGataModoki(v);
}
else
{
throw new ArgumentOutOfRangeException("3 か 4 専用でした!><;");
}
}
}

varの所でクイックアクションとリファクタリング選んでもやっぱなにも出ないけど><;

そんなのあったっけ・・・?>< "「var」を右クリックして表示されるコンテキスト・メニューから[リファクタ]-[実際の型の挿入]を選択することで、varを実際の型に置き換える機能" C#への期待。アンダースからの返答(3/3) - @ IT atmarkit.co.jp/fdotnet/insider

Delphiの事実上の後継であるC# が、PascalとかAdaの部分範囲型を採用しないの、今でも謎・・・><(typedef嫌ってるのと似たような理由?><)

実用的なコードを眺めると、やっぱAdaって訛ったPascalだ・・・・><

いきなり型の宣言と演算子のオーバーロードから始まってるの、なんと言うか伝説は本当だったのか的な・・・><;(Adaの実用的なコードほとんど読んだ事無い><;)

人が死なない分野ではこれとかがAdaで書かれてるらしい・・・><(今知った><;)-- TeXCAD 日本語情報トップページ - OSDN ja.osdn.net/projects/sfnet_tex

Adaは今でも、失敗したら人が死ぬ分野では現役の言語だよリスト>< --
Who's Using Ada? Real-World Projects Powered by the Ada Programming Language November 2014 - Michael B. Feldman www2.seas.gwu.edu/~mfeldman/ad

石油でどうにかは色々無理だけど、せめてカルシウムカーバイドからどうにかしてポリエチレンとか作ってみたい・・・><(作り方わかんないし作れない><;)

オレンジは、石油化学工業まるごと自作してみたいという意味で自分用の油田ほしい・・・><;

orange さんがブースト

油田持ってりゃあなぁ私もな〜って思ってた時期もあるけど油田持ってたところで正しい活用ができなさそうだから使える人が使うのが一番いいですね

Adaが言う正しいって、だいたいどの段階でもヒューマンエラーを起こさないという基準での正しさかも?>< 型ありきどころか型チェックありきでとにかく型を作れってなってたり、haskellerが言う「型ありき」が裸足で逃げ出すレベルの頑固な仕様かも?><(使ったこと無いけど><;)

移植性の良さは、実際に使用するユーザー(Cで言うならCでプログラミングする人)からみたデザインの正しさとは別だし、
mastodon.cardina1.red/@lo48576
にも反するかも><

古いものを表示
:realtek:

思考の /dev/null