次世代言語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
2019/02/07(木) 14:52:04.49ID:nkNDSe3E
>>179
ちょっと説明不足やったやろか

script言語(gc方法に寄らず), コンパイル言語1, 2, 3の計4種で分けて
比較するとそのグループの特色が出てええかと思ったんやけど余計分かりづらいかな。
2019/02/07(木) 14:52:09.32ID:ygKhuk/7
GC有りネイティブ, GC無しネイティブってことでしょ
長いし省略でいいよ
2019/02/07(木) 18:42:07.70ID:SGj/deiz
C++やC#外してCが入ってるのもわからん
183デフォルトの名無しさん
垢版 |
2019/02/07(木) 19:45:27.07ID:Xv2aSLU4
それはワイが概要知ってる言語並べただけやからやで
2019/02/07(木) 19:51:38.98ID:3vMVCWim
自分の開発範囲だとScalaとF#を規模で使い分ければ事足りてるわ
Rustは仕組み的に再帰と相性悪いのがなー
システムレベルの開発とかするわけじゃないしまあいいかなって
2019/02/07(木) 20:16:11.82ID:hAIKTwic
>>173
C++ が入っていない時点でお話にならないですね…
2019/02/07(木) 20:30:26.21ID:ygKhuk/7
>>182 >>185
名前出すなら追加なり変更なりの差分書けばよくね

まぁ script -> とかの後ろに「例」とでも書いとけば良さそうなレベルだが
2019/02/07(木) 20:31:38.98ID:hAIKTwic
>>186
何事も「最低限レベル」というものがあるのです…
2019/02/07(木) 20:40:06.53ID:ygKhuk/7
いや要らんやろ、書くまでもない
むしろCとJavaも

C++はどこに入りますか?とか聞くやつがこのスレ来るわけないし
2019/02/07(木) 20:58:56.79ID:vD/dZwJj
>>184
それってscalaが大規模側なん?

>>185
いやc++, c#くらいまでは知っとるで。
()付きはこのスレで旧世代言語扱いのやつ。
あんまり書いてもしょーがないかと思って端折った。
新し目の言語は概要知ってるやつだけ書いた。
2019/02/07(木) 21:00:27.35ID:hAIKTwic
>>188
C++ は現時点では言語を比較するときの唯一絶対の基準です、C++ が比較基準に入っていない時点で、言語/環境の優劣なんてつけられない
速いけれども書くのが糞手間なC++に比べて、どんなメリットがありどんなデメリットがあるかを我々は注目しているのではないでしょうか?

C++ は知らない?知らないの?あなた馬鹿なの?100年ROMってろ
2019/02/07(木) 21:02:19.36ID:hAIKTwic
>>189
>あんまり書いてもしょーがないかと思って端折った。
その判断それ自体が腐っているといっていいでしょう
何を端折っていいか、何を端折ったらいけないのか、の判断を間違えるようでは、言語比較そのもののセンスが完璧に欠如しているというべきです

死んでください
2019/02/07(木) 21:06:25.69ID:F7dZpPEQ
>>189
そうです
というかほぼScala
最初は小さいプログラムでJVM起動するのもなんだかなあって思ってたけど慣れた
書くのが楽だからいいわ
2019/02/07(木) 21:10:46.10ID:ygKhuk/7
>>190
C++は知ってるよ
多分、糞手間呼ばわりしてる君よりかはね
2019/02/07(木) 21:19:50.55ID:hAIKTwic
>>193
言うだけなら簡単ですね
証拠をみせてくださいな
お題はここで拾ってきてください https://mevius.5ch.net/test/read.cgi/tech/1549160513/

あらかじめ言っておきますが、お題の選択自体もセンスを如実に顕すのです…
2019/02/07(木) 21:24:39.07ID:ygKhuk/7
一人で勝手にどうぞ
そのスレから出てこなくていいよ
2019/02/07(木) 21:28:48.85ID:hAIKTwic
>>195
C++ が書けないのなら黙ってればいいのです、なにも無理する必要はないですよ…
このスレにいたいのなら必要条件として C++が書ければいいです、まあ簡単な部類だし基準低すぎ様だとは思いますが

今時、C++を書けないのは馬鹿の極みだと思いますね
197デフォルトの名無しさん
垢版 |
2019/02/07(木) 21:56:46.91ID:uPllBcIZ
See poor poor
198デフォルトの名無しさん
垢版 |
2019/02/07(木) 22:18:59.82ID:UFwIxg8c
反省したついでに表にしてみた

言語\用途|Webフロ |Webサバ |モバ|バッチ|配布Ap|組込|シス| 言語例)
SCRIPT系 |○   |△   |△ |   |   |  |  | Js/Node,Ts,Python,
VM使う系 |    |○   |○ |○  |   |  |  | Kotlin/JVM, Scala, (Java)
GC有り系 |    |○   |○ |○  |○  |  |  | Go, Kotlin/Native
GC無し系 |    |    |  |   |○  |○ |○ | Rust, (C++)

なんか判りづらくなった?
199デフォルトの名無しさん
垢版 |
2019/02/07(木) 22:24:37.38ID:UFwIxg8c
いかん。ワイのテクではまともに表組み出来んわ。

>>192
Scala最近元気ないよね。ってことでKotlin始めてみた。
なんかもうこれでいいような気がしてきてる。
2019/02/07(木) 22:26:09.68ID:gxYbloUq
もういいって
だから何?って感じやろ
何を基準に◯なのかも意味わからんし
2019/02/07(木) 23:25:26.96ID:bWhZSlTM
この板今日来たばかりだけど
◆QZaw55cn4c この人どういうキャリアの人なん?
なんかえらい上から発言してるみたいだけど
どっかの有名な何かのコミッター?
本書いてたりする人?
それとも業務で20年以上書いてきたような叩き上げの人?
202デフォルトの名無しさん
垢版 |
2019/02/07(木) 23:49:29.22ID:UFwIxg8c
>>200
すまんな。最強言語はこれ。的な書き込みをよく見るから何かの指標(速度でも人気でも書き易さでも)が欲しかったんやけど、C++おじさん召喚しただけやったわ。
2019/02/08(金) 00:09:23.84ID:0dQnaPPd
QZ は、ピラフ大王・片山先生(蟻人間)に比べると、プログラミング技術はすごく低い

ピラフなんて、PowerShell で、5ch をスクレイピングするような猛者!
気付いたら、Ruby でもプログラミングしていたし、恐ろしい成長力!
2019/02/08(金) 05:56:34.73ID:RJawxqEm
今時はJS処理系も基本的にVMなのだが…
205デフォルトの名無しさん
垢版 |
2019/02/08(金) 17:54:00.40ID:8xyArS0I
いやあ。名言出たね。いいねえ。


今時、C++を書けないのは馬鹿の極みだと思いますね


素晴らしい。最後にキリッって付けたくなるね。
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って爆発するんでしょ?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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