次世代言語15 Go Rust Swift Kotlin TypeScript

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/11/04(日) 20:30:10.42ID:OF8fjEC1
スレタイ以外の言語もok

前スレ
次世代言語14 Elixir Crystal Julia Rust Swift
https://itest.5ch.net/mevius/test/read.cgi/tech/1536668904
206デフォルトの名無しさん
垢版 |
2019/02/08(金) 17:56:44.54ID:8xyArS0I
       / \  /\ キリッ
.     / (ー)  (ー)\
    /   ⌒(__人__)⌒ \
    |      |r┬-|    |今時、C++を書けないのは馬鹿の極みだと思いますね
     \     `ー’´   /
    ノ            \
  /´               ヽ
 |    l              \
 ヽ    -一””””~~``’ー–、   -一”””’ー-、.
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))
2019/02/08(金) 18:07:14.86ID:Km3CYXaS
今時w
208デフォルトの名無しさん
垢版 |
2019/02/08(金) 18:43:34.71ID:+xI7giGZ
ここ10年のC++の進化が激しすぎてついていけん
2019/02/08(金) 20:01:19.94ID:I1aUE0ou
>>204
script1種とコンパイル3種に分けた結果やで。

その図みんなでちゃんと作ったら次に流行る次世代言語見つけられると思ったんやが
みんなブチキレやから諦めた。言語例載せたのが失敗やったわ。

ほんで、それ作ってて以下の予想が立ったから書いとく。

script系:この系は不可侵領域あるから廃れん→typescript or もっと新しいのが流行る
VM有り系:この系はGC有り系と役割が被ってるから廃れる→残るとしたらモバイル用途のみ
GC有り系:この系はVM有り系を食って一番流行る。→Go or もっと新しいのが流行る。分野が広いから2言語くらい座れる
GC無し系:この系は不可侵領域あるから廃れん→rust or もっと新しいのが流行る

VM系の言語は消える。script系1個、GC有り系1,2個、GC無し系1個、合わせて3-4個に収束する。
機械学習とか学習用とか速度より構文が重視される系が残るのかは、図の範囲に無いから分からん。

15年したらワイの予想が当たってたか確認しに来るからそれまでこのチラ裏を保守しとくんやで。
2019/02/08(金) 22:30:25.29ID:2N5Hmbw3
黙って消えろポンコツ
2019/02/08(金) 22:31:01.82ID:fIj96e7A
>>208
このスレ的にはC++20からが本番
今はようやくマシになってきたところ
2019/02/08(金) 22:58:31.86ID:ghWQWLLB
V言語
まだ公開されてないから実態は不明
https://volt.ws/lang
2019/02/09(土) 06:25:00.10ID:MGy+Yn2U
>>212
それ、コンパイラじゃなくてコンバトラー
2019/02/09(土) 13:49:27.53ID:F2V9krnu
>>187
Cじゃなきゃできない事はあってもC++じゃなきゃってもんはそんなないし
大体の場合C++以外を使う方がベストプラクティスな場合の方が多い
2019/02/09(土) 13:54:05.42ID:F2V9krnu
Rubyガイジあ暴れてた時は普通のヤツかと思ってたけどコイツどうしようもないガイジだな
2019/02/09(土) 14:07:51.62ID:1JWnTnfH
>>214
たしかに
C で書く必要があるという話はよくききますね

>>214-215
まじめに相手をしながら同時に罵倒するなんて、あなたも私と同じく分裂症的ですね…
2019/02/09(土) 17:25:06.31ID:F2V9krnu
そりゃ180〜190レスくらいまで読んで思った事とそこから先最後まで読んだ間の時間差で思うことも変わるだろ
2019/02/10(日) 12:40:50.35ID:araq2RKu
Js
Jquery

こういうやつ信用できねえわ
初心者なんだなってわかる
2019/02/10(日) 13:33:25.21ID:qtJUf9na
JAVA
2019/02/10(日) 14:07:04.85ID:araq2RKu
JqueryをJapan-queryだと思い込んでるガイジだろなぁ
2019/02/10(日) 15:06:11.50ID:z94OkPvn
>>209
VM有り言語はそれほど廃れるとは思わんけどどうなんだろ。役割がかぶってるって結構抽象的では?
進化するとなると、VMごとデプロイ出来るようになって、VM無し言語と対して変わらなくなると思うよ。今の.net coreみたいに。
VMがあれば動くってのは割と強くて、Script系の不可侵だと思ってる部分も本質的にはそれとあまり異なる理由ではないと思う。

Goだってバイナリサイズえげつなくて、殆どのランタイムを内包してるからアレなんだし。
2019/02/10(日) 15:15:35.65ID:nGIVWkyn
>>221
VM のメリットななんですか?屋上に屋を重ねる感が強くて、VM のメリットがよくわからない…
2019/02/10(日) 15:21:10.21ID:araq2RKu
ライトワン、ラン10ビリオネアデバイスだろ
2019/02/10(日) 15:26:57.11ID:rzMRhZmV
VM言語のメリットはランタイムが別だからバイナリファイルがコンパクトにできる事じゃない?Goとの比較

昔は同一のバイナリが複数のOSで使えるなんて言われてはいたけど蓋をあけてみれば全然そんな事はないし
2019/02/10(日) 15:50:42.06ID:nGIVWkyn
>>224
>バイナリが複数のOSで使えるなんて言われてはいたけど
write once, debug evrywhere......
2019/02/10(日) 15:57:46.27ID:BbTEeZaP
C#(.NET Nativeビルド), Java(Android RuntimeやSubstrateVMでのビルド)もGoと同じくGC付きのネイティブバイナリ
一方で基本ネイティブの言語もLLVMで動的プロファイル利用のJITを使うことも出来る
この辺の壁は徐々に消えつつある
2019/02/10(日) 16:04:10.07ID:araq2RKu
結局jAVAも11からワンバイナリ打線なんだよなあ
2019/02/10(日) 16:17:41.04ID:34dqWukw
実際Juliaってどうなの?
この記事いいことばっか書いてあるけど

CやPython、Ruby、Rの長所を取り込んだ「Julia」が成長するワケ
https://japan.zdnet.com/article/35132510/
2019/02/10(日) 16:24:03.71ID:nGIVWkyn
>>228
>「Ruby」の動的型付け、
これだけなら単なる癌にしかみませんが…

https://julialang.org/
>Optionally typed
Julia has a rich language of descriptive datatypes, and type declarations can be used to clarify and solidify programs.
まあ妥当かな…
2019/02/10(日) 17:04:50.60ID:araq2RKu
JULIAは、日本のAV女優。C-more Entertainment所属。 身長:158cm。スリーサイズ:B101・W55・H84cm。血液型:AB型。 趣味:自分磨き、読書。特技:簿記2級、猫に懐かれる事。
2019/02/10(日) 17:33:00.78ID:KoYwv+8z
簿記2級ってことは商業高校であまり成績よくなかったほうかな?援交しまくりで。
普通高校で2級ならすごい。
2019/02/10(日) 18:29:32.01ID:fmQI1XR7
SmalltalkならVMあればOS間互換は言うに及ばず
40年越しの環境でもそのまま動くんだけどな…w
http://www.cdglabs.org/thinglab/
2019/02/10(日) 18:57:18.28ID:fFme24si
Javaみたいな出来損ないでVMの欠点とか言われても
234デフォルトの名無しさん
垢版 |
2019/02/10(日) 19:35:12.91ID:xjQD7Pcp
>>222
OSやCPU等が違ってもVMがあれば同じVM用のコンパイル済みバイナリがそのまま動くってのが利点ではないかな。
まあしかし実際にはVMごとに違うバグがあったりして中々理想通りにはいかんことがJavaで証明されてしまった感があるわけだが。
2019/02/10(日) 19:39:43.57ID:zG9Tu9P3
PGはどれも出来損ないだからな
2019/02/10(日) 19:41:11.34ID:iwNxJm36
SEになればいいのか?
2019/02/10(日) 20:30:52.78ID:EWmLbbO6
>>228
配列アクセスが1始まりだったり、掛け算記号が必要なかったり、
教科書にある数式をそのまま使えるように意識された言語という印象。
推してるやつも理論よりすぎて個人的には好きになれん。
2019/02/11(月) 12:20:42.21ID:ijgTPsVT
>>222
移植性は昔から言われてることだけど、コンパイラも作るのが楽だし、中間言語は都合の良い命令セットが定義できるからサイズも小さくなる。

何より、コンパイラの改良とVMの改良を分離出来るので、割と柔軟に改良できる。
使う言語のバージョンと、VMのバージョンに厳密な区切りが要らないと言うか。
最低限このバージョンが要る、ぐらいは必要だけど。

新しい言語のバージョンを使って、古いVMで動かすって事が不可能ではなくなる感じかな。
逆も然りで、古いバージョンの頃に書いたものを、最新のVMで動かすことも不可能じゃない。こっちは割とよくある。

ネイティブバイナリ吐いてると、そのへんキツイと思う。特に標準ライブラリがその言語で実装されてるGoとか。
2019/02/11(月) 12:25:06.71ID:ijgTPsVT
過去Javaは確かに辛かった時代もあるけど今は安定してるし、Monoも割と安定してるぞ。
.netは.net Native使わんでも、ngenかければ良い。
2019/02/11(月) 12:38:03.57ID:RZokWE5N
でもjAvAは有料化して死んだよね
2019/02/11(月) 12:51:24.69ID:QKPibkAC
JavaはDockerに乗せるには重すぎる
2019/02/11(月) 12:52:13.71ID:mQ/izvcF
死んだかどうかはともかく
有料化はしてないよ
2019/02/11(月) 13:05:51.95ID:Anzgdh02
date、localdateとか混在してjavaめんどい
2019/02/11(月) 13:46:40.87ID:a3vDiVrE
>>243
バカなコミッターがDateを完全に消去しなかったせい
今後も互換性テストの呪いでいつまでも残り続ける
245デフォルトの名無しさん
垢版 |
2019/02/11(月) 13:56:32.92ID:RMH+C64t
ログまわりもひでぇしな
java書くくらいなら転職するわ
2019/02/11(月) 14:32:39.08ID:dnf98RXr
>>229
>>237
なるほど
実用というよりまだ実験レベルっぽいんだね
2019/02/11(月) 14:54:39.14ID:ijgTPsVT
Javaの日付周りは闇かもなぁ。
248デフォルトの名無しさん
垢版 |
2019/02/11(月) 15:23:01.36ID:oA8l1dyY
commonsや独自のutilで特段大きな問題を感じたことはない
2019/02/11(月) 20:43:19.19ID:QQiWH0mp
>>246
実験レベルというよりは本来が実プロダクトより実験を目的に作られてる面が大きい
目的にと言うと言い過ぎかもしれないが作っているコミュニティが理論や実験寄りなので
2019/02/11(月) 23:03:42.77ID:823dyXFP
>>249
オレの考えた最強の言語!
みたいなやつかw
2019/02/11(月) 23:16:48.45ID:EPRTYP70
なろう系言語www
2019/02/11(月) 23:41:47.02ID:QQiWH0mp
>>250
何も間違ってないけど雑な数値計算実験やアルゴリズム実験には本当にイケてるのよ?
漸進的型付けでも型推論と最適化が程よい塩梅で効いてるし私は好き
2019/02/12(火) 01:05:03.07ID:g6CslLMJ
雑な実験でいいならcかc++くらい使えばいいのにと思うけどね。
2019/02/12(火) 08:24:33.10ID:VUa3es/D
>>232
不人気でユーザがいなくなっちゃった言語が
40年越しの環境でそのまま動いても意味ないけどね
2019/02/12(火) 08:31:43.79ID:jKA+nxgG
雑な実験をC++でやるのには何の問題もないけどそれでもなお煩わしい(ex.tupleとかpairとかがびみょい)
ていうかC++こそ本腰入れた実験に使うんもん(分野によります)だし普段はもっと雑に書きたいなという気持ち

Cは無いかなー
できるけどC++以上にやりたくない
2019/02/12(火) 09:25:59.07ID:2Rlz0B+x
実験って何の実験?
大抵の場合c++は向いてないと思うけどね
ハマってる時間がもったいない
2019/02/12(火) 09:36:40.65ID:jKA+nxgG
高性能計算は言語の選択肢がほとんど無いので……
2019/02/12(火) 12:22:11.18ID:2Rlz0B+x
そういうコアな計算部分にc++の機能あんまりいらないと思うけどね
結局パフォーマンス必要ならcudaにオフロードとかするんだろうし
構文的なところは凝らないのが正解だよ
2019/02/12(火) 14:19:55.88ID:TPiqZniI
>>254
他言語のコミュニティメンバーがもう誰にも使われなくなった言語の
しかも40年前の環境を復活させたんなら逆に凄いことだな!
2019/02/12(火) 15:29:47.85ID:Fn4hDa9I
よし、FORTH を復活させよう
2019/02/12(火) 21:08:01.13ID:jKA+nxgG
CとC++とFortranで型システムが一番マシ(個人の感想)なのがC++って選び方なので
2019/02/12(火) 21:32:38.15ID:Y8wvRjd+
雑にやりたいのに型システムにこだわるのが間違い
2019/02/12(火) 21:35:55.50ID:zazJl4ej
論文のために数回動けばいいようなコード
 → Python (主要な計算部分はライブラリ任せ)
雑とは真逆の実用ライブラリ
 → C (NumPyなど)

というのが数値解析などの分野の人達の感覚では

そしてライブラリ使ってない箇所もあわよくば早くしたいけど
動的言語からあまり離れたくという欲張りさんのために
NumbaやJuliaなどがある
2019/02/12(火) 21:42:29.55ID:jKA+nxgG
>>262
だから雑にやるときはJuliaって言ってるんだよなぁ
2019/02/13(水) 11:27:30.70ID:0cDEleYh
>>263 python でNumpy やNumba を動かせばよいだけの話。 
pythonをNumbaでJIT化すれば高速に動く。
だから数値解析、統計、機械学習などでpython が広まっている。

numbaを利用したpythonループの高速化
https://qiita.com/ken223/items/311032e45f7cd9fb6be6
numpy.sum() より numba でJIT化したほうが若干早い

全体をもっと高速化したい場合はCythonでコンパイルすることになるが、若干ソースに変更が伴うのが欠点。
2019/02/14(木) 08:13:11.35ID:DfXs7ULg
そのへんのPythonをネイティブにする類、GILはどうなるの?
2019/02/14(木) 09:24:39.49ID:QGThOkDI
>>266 明示的に書けば良いのでは?

Cython のスレッド並列処理
https://www.isus.jp/products/python-distribution/thread-parallelism-in-cython/
Cython の特長の 1 つは、ネイティブ並列処理 (英語) をサポートすることです (cython.parallel モジュールを参照)。
cython.parallel.prange 関数は並列ループに使用できるため、Python* でスレッド並列処理を使用して、インテル® メニー・インテグレーテッド・コア (インテル® MIC) アーキテクチャーを活用することができます。

インテル® Distribution for Python* 2017 の Cython
2019/02/14(木) 10:58:54.92ID:WZ7QG3tT
>>266
nogil=TrueでGIL無しになる
2019/02/14(木) 18:56:49.51ID:62bujRGv
それは良さそうだな。
2019/02/14(木) 20:55:14.89ID:fSoz/vTj
もうjulia使うのが目的になっとるな。。
2019/02/16(土) 02:33:00.49ID:9HG1VuDS
>>121
パイプ演算子だけで何が出来んだよw
2019/02/17(日) 11:02:26.51ID:HW0MSqPy
関数のカリー化がないのにパイプ演算子だけ持ってきちゃったElixirはなんか変だよな。
パイプ演算子というよりUFCS。ピリオドにしておけばよかったのに。
273デフォルトの名無しさん
垢版 |
2019/02/17(日) 20:53:38.23ID:4EK3mNUu
ユーチューブみてたら外人さんが今年はじめるおすすめ言語でGoあげてたけどどうなの?

https://youtu.be/Wp6Z2wVyPeY
2019/02/18(月) 00:25:05.73ID:0K8QCv5v
PHPよりはマシ程度
2019/02/18(月) 10:03:46.42ID:PGieQvh3
外人って誰?
お前の友達?
276デフォルトの名無しさん
垢版 |
2019/02/18(月) 10:32:14.54ID:9yTHlAk5
>>273
英語わらないけど
パイパンなのはなんとなくわかった
277デフォルトの名無しさん
垢版 |
2019/02/18(月) 10:38:37.16ID:GrFE76R+
Goはいい言語だと思うが文法がきらいという理由で俺個人としてはやりたくない。
2019/02/18(月) 10:39:27.28ID:DEZyRf0o
Goは悪くないけどGoやるくらいならCで良いって思っちゃう
2019/02/18(月) 11:33:15.82ID:SDMSLfor
Cって爆発するんでしょ?
2019/02/18(月) 14:31:28.10ID:UVnB+wSW
シーッ!
281デフォルトの名無しさん
垢版 |
2019/02/18(月) 16:23:53.97ID:1FoQC5sv
どうしてRustはこんなにおデブちゃんなの?www
https://developers.google.com/web/updates/2019/02/hotpath-with-wasm#conclusion

CやAssemblyScriptと比べて割に合わなさ過ぎだろうwwwww
2019/02/18(月) 17:03:38.39ID:6vaPKOJl
その下の節の Update: Rust で 370B になったとあるけど
283デフォルトの名無しさん
垢版 |
2019/02/18(月) 17:11:02.34ID:1FoQC5sv
人力でそんな手間書けるくらいなら最初からCで書くよね普通。
2019/02/18(月) 17:54:25.43ID:etnkgylc
これ最終的に全部機械語で書けって流れ?
2019/02/18(月) 18:36:38.63ID:DEZyRf0o
なぜ機械語が出てくるのかが分からんなw
2019/02/18(月) 19:42:42.37ID:2Z8BFsKx
手間っつってもそんなでもなくない?
普通に-Osオプション的なのもデバッグ情報の削除もCでやるでしょ
2019/02/18(月) 19:47:35.74ID:2Z8BFsKx
連投になって悪いがなんならltoも普通にCでやるだろうし存外普通の事しかやってないぞ?
2019/02/18(月) 20:19:28.46ID:7ubWqY/W
c + lint で済む話をバカが無視するからコンパイラに組み込んだみたいな話、本当バカ。
289デフォルトの名無しさん
垢版 |
2019/02/18(月) 21:50:19.37ID:788tab2z
普通ならなぜデフォにしないの?
Cパイセンに華持たせてるの?
2019/02/19(火) 07:58:57.65ID:rJLbVU1K
実装してる人に、聞くのが早そうだな。
2019/02/19(火) 09:43:28.93ID:UvIEs0xP
当然ながらデバッグし易さやコンパイル時間などとトレードオフがあるので
特化をデフォルトにする必要は無い

Cは現役だし使うことを誰も止めはしない
比較は構わないけど推されてもここでは単純にスレチ
292デフォルトの名無しさん
垢版 |
2019/02/19(火) 10:27:13.34ID:SwtNBaDU
デバッグし易さやコンパイル時間などを考慮した結果、せっかくwasmのクセに性能はす、す、すくりぷとげんごwwのじゃばすくりぷとwwwと大して変わらずww5倍wも巨大なwasmバイナリをデフォで吐いてしまうビチグソ言語()があるらしいwww

CやAssemblyScriptは性能大して変わらなくてもデフォでジャバスクリプト()よりサイズ小さいのにどう言い訳すんのこの新世代()うぇぶ言語wwwww
2019/02/19(火) 10:59:22.66ID:wBIPfytb
楽しそうで何より
2019/02/19(火) 17:44:22.10ID:flzwRht/
>>271
ビルダーパターンを置き換えられるとか
2019/02/19(火) 22:52:49.55ID:8ne5Wfny
>>278
クラスタ分散周りのコード書くならgoが良いと思われる。
2019/02/21(木) 08:38:19.03ID:k9ihouSJ
IEEE ランキング
https://news.mynavi.jp/article/20180806-674740/
297デフォルトの名無しさん
垢版 |
2019/02/24(日) 13:15:52.70ID:6KasUEnW
A better C = Go
A better Perl = Python
A better Java = Kotlin
A better Javascript = TypeScript
A better Lisp = Clojure
2019/02/24(日) 13:24:51.15ID:9J0kSw8Y
>>297
PythonとPerlって言うほど用途被ってるか?
個人的には
A better Python = Node.js
だって思うけどな
299デフォルトの名無しさん
垢版 |
2019/02/24(日) 13:28:03.32ID:8D34p5sx
Groovyは?
300デフォルトの名無しさん
垢版 |
2019/02/24(日) 13:29:59.40ID:6TiHqsFQ
A bitter C++ = D
2019/02/24(日) 13:35:04.27ID:dX43HuRA
俺はKotlinよりScala推しだけどバックについてる規模がなあ
302デフォルトの名無しさん
垢版 |
2019/02/24(日) 18:42:02.16ID:iK4D+UQi
>>297
Goにbetter Cはま
303デフォルトの名無しさん
垢版 |
2019/02/24(日) 18:42:38.76ID:iK4D+UQi
だ無理だ。
バイナリが大き過ぎる。
2019/02/24(日) 18:47:20.41ID:KL6kEpaz
A poorer C = Go
A poorer Perl = Python
A poorer Java = Kotlin
A poorer Javascript = TypeScript

しっくり来るな
2019/02/24(日) 18:50:58.08ID:1vpoAdpW
>>303
まだというかずっとじゃね
GCやgoroutineスケジューラのサイズは削れないし
用途がいくらか被るにせよ、性質的にCの代わりを目指したものでもないし
2019/02/24(日) 18:55:07.72ID:qLJosHl4
他の言語が無駄な機能を増やすほどCがbetterということに気づかされる。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況