[過去ログ] 次世代言語11[Rust Swift TypeScript Dart] (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
291: デフォルトの名無しさん [sage] 2018/06/11(月) 19:43:11.93 ID:DBOG5/EH(1/2) AAS
>>290開き直りも良いところだな。死ねカス
341(1): デフォルトの名無しさん [sage] 2018/06/12(火) 20:46:04.93 ID:0iNerknO(1) AAS
エンジニアってマジで信仰するエンジニアの思想をまるごとトレースしようとする奴いるよな
何の根拠も理由もなくMSは邪悪だとかVim/emacs使えない奴はダメとかメインOSがLinuxじゃない奴はエンジニアじゃないとか言い出す奴はてブあたり大勢いる
607: デフォルトの名無しさん [sage] 2018/06/18(月) 22:47:52.93 ID:ejyTxCd5(3/3) AAS
上で散々マトリクスと誤記しているメトリクスはこの場合「(停まるまでの)距離」という意味
661(1): デフォルトの名無しさん [sage] 2018/06/22(金) 00:43:40.93 ID:H0orbnfz(1) AAS
型推論の計算コストは有効範囲と言語の持ってる型システムの表現力でけっこう変わるよ
関数内でのみ有効なのと関数宣言でも使えるのだと随分違う
既存の、コーディング中に型を書くのが苦にならないような言語だと後から型推論追加しても旨味が少ないと思う
Rustはコンパイル速度を気にしてかライフタイム関係の推論が面倒だったのか知らんけど、関数内でしか型推論有効にしなかったのは個人的にマイナス
681: デフォルトの名無しさん [sage] 2018/06/23(土) 10:29:14.93 ID:euiJmXfR(1) AAS
ふぐじま?
865(1): デフォルトの名無しさん [sage] 2018/07/01(日) 11:00:03.93 ID:7m3QggRW(1/2) AAS
クロージャの方が自身の関数スコープを持ってる印象だな
メジャーな中では Java, C#, C++, JavaScript, Obj-C, Swift などがそうだし
Rubyのラムダも上記と概ね同じに見える
ブロックは文字通りコードの塊と考えるとreturnやbreakについて妥当な動きに見える
Proc.newは挙動がキモい
↓によるとdo…endも挙動が違うらしいから >>837837(4): デフォルトの名無しさん [sage] 2018/06/30(土) 16:41:24.65 ID:oxrLiD+S(1) AAS
るびぃ信者、Proc.new、ラムダ、ブロックにおけるreturn、break、nextの挙動の違いをまとめようとした模様
外部リンク:qiita.com
結果、ややこしすぎるためコーディングを工夫してreturnやbreakの使用を避けましょうというなんじゃそりゃな結論www
何か理由があってわざわざ挙動を変えたんだろうが(まさか行き当たりばったりってことはないよね笑)ややこしすぎで使用自体を避けられてちゃ本末転倒だよなwww
のリンク先は4種で比較した方がいいかもな
外部リンク:qiita.com
966(2): デフォルトの名無しさん [sage] 2018/07/03(火) 16:26:35.93 ID:dRr5lTkl(1) AAS
>>869869(2): 857 [] 2018/07/01(日) 11:25:18.69 ID:usR85dqh(1) AAS
>>867
smalltalkには break や continue (next) はないだろう?
ruby のは、closure に break や next を持ち込んでおかしくなっているように見えるよ。
> smalltalkには break や continue (next) はないだろう?
横レスだが少なくともXEROXのグループが書籍として出版した初期のSmalltalk-80にはその類のものなかったね
なお、closure本来の議論をする上ではSmalltalk-80のブロックを引き合いに出したのは悪くないと読んでいて思ったけどね
というのはHaskellのような代入命令のない言語でなく代入命令を持つ言語でのclosureとしてはSmalltalk-80のブロックは最も基本形なので議論のベースとしては分かりやすい
本来ならAlgol 68のproc mode(modeは普通の言語での型に相当)の値がclosureなんだがAlgol 68は概念は良く整理されていても用語が変態過ぎて議論のベースとしては使いやすくない
Smalltalk-80のブロックはAlgol 68のprocを素直に継いでいると考えて構わないので、要するにSmalltalk-80のブロックを議論での叩き台にするのは
命令的言語でのclosureとしてオリジナルであるAlgol 68のprocを叩き台としてclosureの議論をしようというものなのでclosureの一般論が目的ならば悪くない
ただ特定の言語、特にrubyのような比較的新しい言語(後述のマイ言語化以降の時代に登場した言語)限定の議論には不適切かも
> ruby のは、closure に break や next を持ち込んでおかしくなっているように見えるよ。
そりゃAlgol 60やAlgol 68やSchemeなどを作った人々とRubyの製作者とはプログラミング言語に対する基本的な見識においてレベルが違いすぎますからね
かつてプログラミング言語の形式的意味論までか否かは別にして言語の基本概念は何かきちんと学び理解するのが常識だったが
簡単に言語を実装できるようになって=マイ言語化されて以降、スクリプト言語のような軽い言語が百花繚乱の如く咲き乱れる(と言えば聞こえは良いが要するに粗製乱造される)ようになって以降
基本概念をきちんと学び理解していない人でも新しい言語は簡単に作れ、上手くファンを掴めるとそれなりに流行ってしまうようになったので
実際にきちんと意味を考えるととても不自然で理解が困難になるような言語機能の組み合わせ方を単に「だって便利だもの」という理由で言語に組み入れられてしまうようになった
単なる便利さだけで深い考慮なく導入されたものを意味論などから合理的・体系的に説明・理解するのは困難、年寄りの戯言でした
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.030s