次世代言語11[Rust Swift TypeScript Dart]

1デフォルトの名無しさん2018/06/03(日) 23:53:27.92ID:vrBh4O6u
スレタイ以外の言語もok

前スレ
次世代言語10[Rust Swift TypeScript Dart]
https://mevius.5ch.net/test/read.cgi/tech/1524607347/

621デフォルトの名無しさん2018/06/20(水) 01:28:01.72ID:QSlqi/vd
型安全を崩す水準のDRYはかなり悪い印象があるな
共通化すべきでないものまで共通化してるのではと

622デフォルトの名無しさん2018/06/20(水) 11:07:04.58ID:YLzmhKZ9
一生型書いてろ
俺はプロダクト書くからよ

623デフォルトの名無しさん2018/06/20(水) 11:47:35.83ID:CARL/ed1
人は型かプロダクトかどっちかしか書けないからなw

624デフォルトの名無しさん2018/06/20(水) 13:04:18.23ID:pTH4tzak
>>620
ジェネリクスやインターフェース正しく使ってれば
DRY原則無視しなきゃ型安全守れないこととかほぼ無いだろ
どんなコード書いてるんだよ?

625デフォルトの名無しさん2018/06/20(水) 21:17:56.02ID:vXpw0FFs
型って建物に例えると水準器だろ
柱がまっすぐ立ってるか見るための補助具

補助具ばっか作って家が建つのか?

626デフォルトの名無しさん2018/06/20(水) 21:34:34.91ID:kjCaqS0j
一生水準器使ってろ
俺は家建てるからよ

627デフォルトの名無しさん2018/06/20(水) 21:39:33.95ID:pTH4tzak
そうか、じゃあ動的言語で作ったプログラムって例えるなら水準器なしで建てられた家なのか…
それは欠陥住宅というもので工期が遅れてる建物よりもっと害悪だと思うんだがそれは…

628デフォルトの名無しさん2018/06/20(水) 21:55:16.85ID:nu99cs2X
いや単なる犬小屋欲しいだけなのに設計書に一年くらい時間かけるようなもんだ。

629デフォルトの名無しさん2018/06/20(水) 22:31:25.72ID:R/RR2gVc
>>628
犬小屋ってどれくらいの規模のものを指してるの?
リソース3つくらいのweb apiサーバとか?

630デフォルトの名無しさん2018/06/20(水) 22:35:54.20ID:R/RR2gVc
>>625
それだけじゃないよ。メンテナンスという観点でも必要。
いわば動的言語なら釘で家を建てるけど、
型付きなら、簡単に取り替えられるようにボルトで止まってる。
ちゃんとネジに印がついていて交換ミスも起こりにくい

631デフォルトの名無しさん2018/06/20(水) 22:37:33.02ID:6Ldi6ZQ0
例え話をするエンジニアは無能の法則

632デフォルトの名無しさん2018/06/20(水) 22:45:13.44ID:pTH4tzak
>>629
犬小屋なんだから日曜大工、つまり個人の趣味レベルのものでしょ

633デフォルトの名無しさん2018/06/20(水) 23:03:24.49ID:kjCaqS0j
型は水準器というより物差しに近い

634デフォルトの名無しさん2018/06/21(木) 00:46:09.92ID:j3Jry11G
オプションでも型制約無い言語なんてもうJSとRubyくらいじやね?

635デフォルトの名無しさん2018/06/21(木) 01:00:00.42ID:9yZQgWTf
Lua忘れるとか

636デフォルトの名無しさん2018/06/21(木) 01:15:00.23ID:Xm+RspnJ
c++のstd::chornoみたいな設計は行き過ぎた型安全だと思う

637デフォルトの名無しさん2018/06/21(木) 01:16:19.88ID:tnwaIVRK
C++は存在そのものが行き過ぎている

638デフォルトの名無しさん2018/06/21(木) 02:30:14.21ID:lOkS/ogb
永遠の次世代言語

639デフォルトの名無しさん2018/06/21(木) 03:28:39.67ID:CmPcltgN
C++はやべーよ
でも誰も逃げ出せない

640デフォルトの名無しさん2018/06/21(木) 07:30:10.88ID:6ripmtAT
まさに魔王

641デフォルトの名無しさん2018/06/21(木) 12:02:43.31ID:NVNRBOaD
逃げ出したいけど環境がっつりだから無理だわ

642デフォルトの名無しさん2018/06/21(木) 12:22:25.31ID:f5p4gdbf
rubyは絶対に型を書きたくないから
コメントか外部ファイルに型を書くようにするらしいぞ

643デフォルトの名無しさん2018/06/21(木) 12:26:56.39ID:Ny0HAIKC
0から何か作ろうって時にC++だけは選びたくない

644デフォルトの名無しさん2018/06/21(木) 13:31:50.47ID:AvdUCmrX
俺はアプリ屋だからコアの部分は Windows、
Android、iOS、MacOS のどれでも使える c++
UI 側を書く各言語から呼び出して使う

645デフォルトの名無しさん2018/06/21(木) 13:35:39.24ID:uYxelfTA
あいかわらずRubyの人たちは何がしたいのかよくわからんな

646デフォルトの名無しさん2018/06/21(木) 13:52:08.71ID:/kaFS0dg
C/C++の型はアドレスやサイズの計算に使う
低級言語だから型が役に立つ
高級言語がC++の真似をする必要はないんだよ
型を書かない高級言語はたくさんある

647デフォルトの名無しさん2018/06/21(木) 13:55:42.09ID:Ij19PzUL
コードに型を書かないと後で分からなくなるから結局コメントで型を書くことになるゴミ

648デフォルトの名無しさん2018/06/21(木) 13:58:07.14ID:D8gwnbh9
メソッド名とか使われ方とかコメントとかプログラマのクセとかからAIが型推論してくれるんだろう

649デフォルトの名無しさん2018/06/21(木) 14:00:01.02ID:gnPepsUQ
AIは確率過程だからコードみたいな根幹部分には使いたくないな

650デフォルトの名無しさん2018/06/21(木) 14:11:21.05ID:0x6Lg0t3
AIを使ったエラー検出は今後のトレンドになるだろうね
技術進歩に伴って緩やかに型は不要になっていくだろう
IntelliCodeの発展形としてMSがやりそう

651デフォルトの名無しさん2018/06/21(木) 14:33:42.30ID:copqf+uW
そのAIをC++で作らされたりしてな

652デフォルトの名無しさん2018/06/21(木) 14:34:54.31ID:/kaFS0dg
AIの得意分野はどっちかが必ず勝つ対戦ゲームというブルーオーシャン
レッドオーシャンに飛び込んでも勝てると思うのは確率的に間違ってる

653デフォルトの名無しさん2018/06/21(木) 14:46:28.87ID:S4IxNo+1
>>646
とあるオブジェクトを扱うアルゴリズムが要求するのは型じゃなく
整数っぽいものを返すsize() メソッドは実装していること、
とかそういう制約だよな

654デフォルトの名無しさん2018/06/21(木) 20:54:11.38ID:bp0U88xF
>>642
python2の型ヒントみたいなやり方するってことかな。まあ実行時には必要ない情報だから
それもリーズナブルな解だと思うけどね。使えるものを早く出してくれさえすれば。

655デフォルトの名無しさん2018/06/21(木) 21:51:19.80ID:6ripmtAT
型推論とかAIで検出とかバカほど無駄なことに計算資源使おうとするのな。
そんなカスみたいな機能に資源使うくらいならコンパイル速度上げた方がよっぽどマシ。

656デフォルトの名無しさん2018/06/21(木) 23:52:49.86ID:c3YkgC6b
>>655
えぇ…
AIは知らんが型推論のほうはコンパイル速度重視のGoでさえ使ってる技術だぞ

657デフォルトの名無しさん2018/06/22(金) 00:03:19.61ID:7bl9EfTW
単純な右から左の型推論は余計な型名解決が減る分むしろコンパイル速くなるだろ

658デフォルトの名無しさん2018/06/22(金) 00:15:01.47ID:ecfXobDJ
おじいちゃんは自分がよく知らないものは全部無駄に見える生き物だから…

659デフォルトの名無しさん2018/06/22(金) 00:18:04.51ID:mjvSylV1
>>657
単純な場合はむしろ速くなるの?それは知らんかった
ただ、どっちにしろ型推論ってそんなに計算リソースを消費するイメージないんだけど…

660デフォルトの名無しさん2018/06/22(金) 00:42:37.48ID:fxQEanUA
速くなる訳ねーだろ。。
https://cocopon.me/blog/2015/03/swift-compilation-time/
なんでこいつらこんな簡単に騙されるの?

661デフォルトの名無しさん2018/06/22(金) 00:43:40.93ID:H0orbnfz
型推論の計算コストは有効範囲と言語の持ってる型システムの表現力でけっこう変わるよ
関数内でのみ有効なのと関数宣言でも使えるのだと随分違う
既存の、コーディング中に型を書くのが苦にならないような言語だと後から型推論追加しても旨味が少ないと思う

Rustはコンパイル速度を気にしてかライフタイム関係の推論が面倒だったのか知らんけど、関数内でしか型推論有効にしなかったのは個人的にマイナス

662デフォルトの名無しさん2018/06/22(金) 00:58:36.71ID:ZcpNHe71
>>660
せめてgoでの比較持ってこいよ

663デフォルトの名無しさん2018/06/22(金) 01:02:01.33ID:mjvSylV1
>>660
結局コンパイラがどうやって推論してるかはソース見てみない限り分からないからな
遅くなる場合もあれば、ほとんど変わらない場合もあるだろうし、何とも言えないな…

>>661
俺は逆に関数宣言の型の情報まで推論されるのは好きじゃないな
推論するのはローカル変数だけにしてほしい
まぁ、そこら辺は好みの問題だな

664デフォルトの名無しさん2018/06/22(金) 01:56:16.57ID:fZhhlNhQ
>>663
関数宣言の型の情報って何よ?

665デフォルトの名無しさん2018/06/22(金) 08:06:59.36ID:UUvhOuOE
constは推論されないとかのことかな

666デフォルトの名無しさん2018/06/22(金) 10:04:29.72ID:HgCip2r2
Nim IN ACTIONの1章と8章が無料公開されてるから1章読んでみてるけどなかなかセンスいい言語だな

667デフォルトの名無しさん2018/06/22(金) 11:15:38.68ID:HgCip2r2
しかしスネークケースキャメルケース同一視すんのどうなんだ
識別子に暗黙で余計な解釈しないでほしい
railsの自動変換思い出して嫌な感じ

668デフォルトの名無しさん2018/06/22(金) 13:59:02.57ID:yU7k9q5t
NimはDの後継って感じがする

669デフォルトの名無しさん2018/06/22(金) 17:58:23.96ID:cmFjayc5
最近D言語は低レベルのほう寄ってってるからなあ

670デフォルトの名無しさん2018/06/22(金) 18:08:28.35ID:oC8L9s8J
ベクトル化を使うための4要素配列とかヤバすぎ

671デフォルトの名無しさん2018/06/22(金) 18:49:57.22ID:y18AFRdV
Dとは一緒にしないでいただきたい!

ってのは冗談だけどDとは違うと信じたい
アホみたいに機能消したり追加したりしてないし

新着レスの表示
レスを投稿する