次世代言語21 Go Nim Rust Swift Kotlin TypeScript

■ このスレッドは過去ログ倉庫に格納されています
2020/04/19(日) 15:06:02.92ID:jAOW5aqE
スレタイ以外の言語もok

前スレ
次世代言語18 Go Rust Elixir Kotlin TypeScript (実質20)
https://mevius.5ch.net/test/read.cgi/tech/1569866283/
101デフォルトの名無しさん
垢版 |
2020/06/04(木) 08:22:36.72ID:4kMLpsX6
例が二つともよくわからん
俺は困ってない
2020/06/05(金) 14:04:47.29ID:9ZNDO7sq
GoとRustが合体したみたいな言語があればいいんだが
2020/06/05(金) 20:41:52.51ID:Yb4qiw/3
Gost作るか
2020/06/05(金) 20:46:55.91ID:QJHD9Kma
スレタイにある言語って第7世代?
2020/06/06(土) 20:29:52.43ID:C1du69au
今度Windowsにネイティブ対応するらしいSwiftは?
2020/06/06(土) 21:40:05.53ID:XYysOhiX
まあ対応してから判断すればいいんじゃね?
2020/06/06(土) 23:40:53.02ID:sd6np5wi
日本人が作って今でも発言権があるということを重視すると、Ruby
2020/06/07(日) 04:35:46.58ID:ISISpwjU
そもそもプログラム言語より英語が読めないのが辛い。
2020/06/12(金) 08:28:38.75ID:/yGoBGzJ
英語勉強しろ
2020/06/13(土) 21:14:39.52ID:Co+z+oK9
英語勉強したくないのでなでしこに乗り換えます
2020/06/15(月) 14:44:07.98ID:hPgxSRbu
Hegel,新しいJavaScript型チェッカ
https://www.infoq.com/jp/news/2020/06/hegel-type-checking-javascript/
112デフォルトの名無しさん
垢版 |
2020/06/15(月) 16:38:45.12ID:iqqqiJ5Y
禿そう
2020/06/15(月) 16:49:35.07ID:b7BGzTns
ヘーゲルの弁証法のヘーゲルもハゲって話をするんじゃない
2020/06/15(月) 17:06:31.59ID:TP6e6Qn5
屁ー出る
2020/06/15(月) 19:54:29.55ID:8sQ2Zw5k
コメントでメタデータをあれこれするライブラリは成功例を見たことねえなあ
2020/06/15(月) 22:05:17.87ID:uwscV1ya
TypeScriptと比較した短所
・TypeScriptはJavaScript文法をたくさん拡張しているのにHegelは少ししかない
・TypeScriptにはany型があるのにHegelでは使えない
2020/06/15(月) 22:35:54.06ID:Qz5pUzob
静的型付けマンセー人類からすれば静的型付けと言いながら悪魔の様に万能なany型の禁止は長所だけど
2020/06/15(月) 22:37:50.44ID:yqEOs8la
>>115
コメントでメタデータをあれこれしてるように見えたんですねw
2020/06/16(火) 08:37:02.16ID:9fjqT2W8
OSSの宿命だけど、こういうのって少ししたら俺も俺もって、新しいのが作られて、お互いに食い合って、消えていくんだよ
重要なのは、長期的に責任をもって、メンテナンスしてくれるかどうか
TypeScriptの成功は、マイクロソフトへの信頼があってこそ
2020/06/16(火) 08:56:17.23ID:JSqevQjl
Concurnas - 並列およびGPUコンピューティングのための新しいJVM言語
https://www.infoq.com/jp/news/2020/06/concurnas-jvm-gpu/
2020/06/16(火) 22:48:27.54ID:KGIo06cm
どういう売りの言語なんだ?
2020/06/17(水) 09:10:16.82ID:RREhDXpr
まあアノテーションで動作注入するってのは意味が広すぎるからぱっと見、動作がわからんってのはある。
2020/06/17(水) 11:11:39.35ID:x68gmLFY
Jが付くのは大体糞だな
2020/06/18(木) 06:55:32.16ID:9/W/0Gtf
Java
Japan

Korea
Kotlin
2020/06/18(木) 07:36:48.15ID:jBRL/Eep
トレンドマイクロはJavaとJavaScriptを区別できないらしいな
2020/06/18(木) 13:00:41.64ID:o6buD/Ym
goが流行ってるのって静的言語の中ではビルドが楽って理由じゃね?
2020/06/18(木) 13:22:18.44ID:jBRL/Eep
他と比べてそんなに楽かい?
2020/06/18(木) 13:56:16.60ID:cP/SUrV2
JVMに依存したくない
.NET runtimeにも依存したくない
クラウド上で使うので出来るだけ少ないリソースで動かしたい

消去法で残る選択肢の代表格がGo
2020/06/18(木) 14:24:44.95ID:jBRL/Eep
.NETも.NET Coreになってからは快適だけどな
130デフォルトの名無しさん
垢版 |
2020/06/19(金) 11:00:03.40ID:imkL+tNk
Rustって実用性ってどんなもん?
ライブラリの充実度とか色んな面で
2020/06/19(金) 11:34:29.32ID:/tlJ1uju
Rust自体は既にプロダクションの実績がいくつもあります
貴方にとって実用になるかどうかは開発メンバーの脳味噌の実用性次第です
132デフォルトの名無しさん
垢版 |
2020/06/19(金) 11:57:46.89ID:imkL+tNk
>>131
えー!!
教えてくれてありがとう
でもさ、言語ってさコンパイラ作ったら終わりじゃないじゃん
cmake、Mavenのようなビルドツール
Webフレームワーク
IDE
デバッカ(C++の場合finstrument-functionsよる実行時関数トレースまで出来る)
プロファイリング
Valgrindみたいな仮想機械
静的コード解析
コンパイラによる最適化
などなど言語作るって本当に大変だと思うんだけどRustがオープンソースでそこまでしてくれてるのかなーって思ったんだ
開発メンバーが優秀でもそこまで自分たちじゃ作れないもん
2020/06/19(金) 12:19:28.67ID:Q7Nlzsqk
全部込みなら結局.NETが最強ってわけよ
2020/06/19(金) 12:40:44.64ID:fVZkw9Lt
.NET使いが本当に.NET使えてるのか疑問に思うわ
2020/06/19(金) 12:55:25.35ID:Nn1N7UYA
>>134
「本当に言語(やフレームワーク)を使う」ってどういう意味?
2020/06/19(金) 15:23:42.80ID:Ipe4ECyW
Valgrindは言語非依存だろ
137デフォルトの名無しさん
垢版 |
2020/06/20(土) 15:52:56.50ID:NfAnNyQw
結局V言語のメモリ管理ってどうなったのさ?
2020/06/20(土) 16:06:26.98ID:s+0TrQkE
だから詐欺だって言ったじゃん
139デフォルトの名無しさん
垢版 |
2020/06/21(日) 20:59:09.47ID:jqoo3LUF
>>132
大企業のバックアップがいくつかあるから
うちでは小さな企業だけどいくつも製品に適用してる
2020/06/22(月) 01:34:11.04ID:vjvn7WrE
素人質問なんだけどNimってGCだからRustよりメモリ消費量が増大するのかな?
GCが優れてたらRustの出番なくなる気がするんだけど
2020/06/22(月) 07:52:04.28ID:YYa85moB
その僅かなGCもクリティカルになる場合で必要だから出番は無くならない
2020/06/22(月) 08:59:44.79ID:OECHtCBQ
そうかなあ
Rustのメモリ管理はどっちかというと、人間にとってある程度の予測可能性は犠牲にしつつもGCほどには不確定ではないっていう、
GC頼りからのクォリティアップのための選択肢としての性格が強い印象
本当に厳密に全てを人間が把握する必要があるような用途ならメモリは静的に確保するのが基本なんで、むしろC/C++で十分
143デフォルトの名無しさん
垢版 |
2020/06/22(月) 11:06:52.85ID:HUDePNlz
GCの問題ってメモリの使用量より実行コストなのでは
何にせよ「優れていてたら」という曖昧な評価を前提に議論するようなことではない
2020/06/22(月) 12:53:01.15ID:pgI7+Dvz
>>142
個人的印象じゃなくて仕様から動作説明しろよ
2020/06/22(月) 13:08:53.95ID:vjvn7WrE
>>143
コンパイル時間は多少かかるけど最適化されたcが出てくるから実行は早いんだよ
https://pbs.twimg.com/media/DoLuLlsUUAATlmC.jpg
https://twitter.com/nim_lang/status/1045659954923724802

ただGCにも限界あるし大きいファイル高速に処理したりとかは無理なんだろうな
https://twitter.com/5chan_nel (5ch newer account)
2020/06/22(月) 13:20:43.45ID:cZQabspg
まずGCがなんたるかを勉強してこい
2020/06/22(月) 14:27:48.17ID:5DKYw5ah
Rustはdropのタイミングでfreeされるんだから完全にコントロール出来るだろ
148デフォルトの名無しさん
垢版 |
2020/06/23(火) 02:21:40.09ID:LtGjLWJA
freeしてもすぐ解放されないよ
厳密にやるならそもそもヒープ使わないだろうし
glibcも使わないんじゃないの
2020/06/23(火) 11:33:30.58ID:bQuRMpOx
こういう反論されると話の最初の前提を勝手に変えだす
奴と議論するのは無益
150デフォルトの名無しさん
垢版 |
2020/06/23(火) 11:35:56.34ID:4kHZmTBE
動くゴールポスト
勝つとルールが変わる
2020/06/23(火) 11:53:24.52ID:EpfZjwCv
言い忘れたからって
現実に前提が存在してるときはしょうがないだろ!
2020/06/25(木) 11:21:03.93ID:XA10qT73
ガンダムみたいに戦闘しながら議論した方がいいかもね
そうすれば議論は勝敗やゴールとはあまり関係ないという事実がわかりやすい
2020/06/25(木) 12:30:00.05ID:i+VkGREF
基本議論しかできない掲示板でひどい開き直り
2020/06/25(木) 12:50:45.88ID:XA10qT73
ニュータイプは戦果を出すことしかできない機械なのか
という議論もガンダムでやったやつだ
2020/06/25(木) 14:19:19.47ID:oLCCqb60
次世代言語(笑)
やっぱり実績のある言語じゃないと

Announcing Perl 7
https://www.perl.com/article/announcing-perl-7/
2020/06/25(木) 14:27:20.56ID:t7+TBcnO
そういえば次世代みこそ薄いけど富岳はFortran,C,C++,Java,Python,Rubyだそうだ
京はFortran,C,C++,Java,Python,R,Rubyっぽい?のでR除外の理由が気になるところ
パッチ当てが追いつかなったって説はあるが
157デフォルトの名無しさん
垢版 |
2020/06/25(木) 15:34:28.47ID:2XRewe5U
描き忘れたに+1
2020/06/26(金) 03:31:18.99ID:4Xp41V6m
皆、移行したから

R, Matlab → Python → Julia
159デフォルトの名無しさん
垢版 |
2020/06/26(金) 21:12:36.04ID:Op8/e6Io
スレタイにflutterいれろよ
2020/06/26(金) 21:34:30.95ID:cCyoeEbx
言語じゃないし
2020/06/26(金) 21:39:30.43ID:TT3ZMIPw
言語じゃねぇし。Rails入れろ、WordPress入れろと言ってるようなもん。
2020/06/26(金) 22:07:41.65ID:Hs7cx7hb
DartならKotlinと同世代だしスレタイに入る資格あるんじゃね
ようやくNULL安全になりそうってレベルだけど
2020/06/27(土) 06:45:52.74ID:mR8TbkIn
>>100
>調べに草w

上手いこと言ってて草w
164デフォルトの名無しさん
垢版 |
2020/06/27(土) 09:16:57.07ID:e0+LQFD/
nimなんて聞いた事ないのねじ込んでくるなよ
スレタイから外せ
165デフォルトの名無しさん
垢版 |
2020/06/27(土) 10:11:44.16ID:QSLeN3Uh
喰わず嫌い良くない
Nim やってみなよ
2020/06/27(土) 10:22:27.59ID:aTkq7ke+
Nim Nanて何処Nimo使われてNaimoN
167デフォルトの名無しさん
垢版 |
2020/06/27(土) 15:27:43.23ID:e0+LQFD/
つかスレタイからElixer外したやつ誰だ?
なんで外したん?
2020/06/27(土) 15:31:40.51ID:Xu05bxNt
>>167
スレ立てる奴が好きに付け外ししていいから。
169デフォルトの名無しさん
垢版 |
2020/06/27(土) 16:50:26.92ID:PIc799Td
この半年くらいでRustが一つ抜けてしまったから他はどうでもいいわ
2020/06/27(土) 17:12:05.58ID:NFShXxR/
スレタイ入り言語ランキング
Rust:19回
Go:13回
Kotlin:12回
TypeScript:12回
Swift:8回
Haskell:7回
Scala:5回
Elixir:4回
Dart:3回
Julia:3回
Erlang:2回
Bospue:1回
Crytal:1回
V:1回
2020/06/27(土) 17:39:03.98ID:qbf/CKsA
つまり大器晩成だとおだてられ続けて気が付けば還暦を過ぎていたクソ言語
2020/06/27(土) 19:38:02.86ID:dHy1PVbN
Dart(Flutter)は新しい言語に興味を示さないタイプの同僚が
これはいいと使い始めてるからちょっと興味ある
2020/06/28(日) 08:45:17.63ID:UQNu08lk
Zigも入れようぜ!
2020/06/30(火) 12:15:19.76ID:FwIuBGzE
Zigは演算子がダサいから無理
175デフォルトの名無しさん
垢版 |
2020/07/01(水) 11:46:50.25ID:IfUrt5hg
スレありますか?
https://ja.crystal-lang.org/
https://ja.wikipedia.org/wiki/Crystal_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E)
2020/07/05(日) 20:04:09.93ID:0gld4/HX
Dartマジ無理
177デフォルトの名無しさん
垢版 |
2020/07/06(月) 10:37:27.36ID:vjiPzzt6
スレありますか?
http://kuina.ch/kuin/tutorial1
https://github.com/kuina/KuinInKuin
https://github.com/kuina/Kuin
2020/07/06(月) 12:34:42.05ID:KZ2tcQsg
クソ単発ガイジ
179デフォルトの名無しさん
垢版 |
2020/07/17(金) 12:19:32.48ID:x8/LfrV9
Haskell、いつの間にかマルチスレッド書き易くなってたから再参入して良い?


932 デフォルトの名無しさん[] 2020/07/13(月) 11:46:57.33 ID:Bw4cVoP9
Haskellによる並列・並行プログラミング読み進む内に、普通のシングルスレッドプログラムを簡単にマルチスレッドにする方法が書いてあった。

import Control.Parallel.Sterategies

main = (print.f) [9999800..1000000]

f xs = map g xs `using` parList rseq

g n = sum [1..n]

上の通り、シングルスレッドプログラムに
import~と、`using`~を追加するだけ。

コンパイルと実行の時にもコマンド引数が必要で、コンパイルの時、

>ghc -O2 filename.hs -threaded

と言うふうに速さ重視の最適化とスレッド対応を明記。

実行時にはスレッド数をNnの形で指定する。(ここでは2スレッドを指定)

./filename +RTS -N2

普通のプログラミング言語だと、シングルスレッドとマルチスレッドでは似ても似付かないコードになるから、これには感動した。
(2スレッドと4スレッドでもコードが違う事がまま有る中、これは本当に感動)

Haskellマジお勧め。
2020/07/19(日) 15:03:03.44ID:Xms4b6hK
Haskellにはseq=簡単、モナド=難しいという俗説があるようだ
181デフォルトの名無しさん
垢版 |
2020/07/19(日) 15:26:10.25ID:mM+s32W9
モナドは一言でいえば「箱から出して、何かして、箱に戻す」と言う動きに付けた名前。
モナドのreturn関数は箱では無く、階層として捉えたと考えられる。
「階層から降りて、何かして、元の階層へ『戻る』」

ただそれだけなのに、名前が無い(モナドとしか名前が無い)から、具体的に何なんだと言われても困るってだけ。
182デフォルトの名無しさん
垢版 |
2020/07/19(日) 15:29:14.11ID:mM+s32W9
詳しくは拙著「あっけなく覚えるHaskell」(kindle本)をご購入下さい。
2020/07/19(日) 15:43:05.45ID:UW3G0u72
こんな説明が下手なやつも珍しい
2020/07/19(日) 15:45:54.45ID:Xms4b6hK
モナド=型を書かない人には難しい
seq=型を書いたらモナドの再発明
2020/07/19(日) 16:06:36.18ID:kKBDrrZH
クラステンプレートのメソッドがモナド則満たしたものをモナド言ってるだけだぞ。
なおプログラム的に制約を満たすかどうかはチェックしない模様
2020/07/19(日) 16:25:35.06ID:OIQ5n+6G
プログラム的にモナド則を満たすか検証できる型システムを入れるのはめちゃくちゃ大変だし型推論も大変な事になるし記述しなきゃいけない量も爆発するから…
187デフォルトの名無しさん
垢版 |
2020/07/20(月) 21:31:52.03ID:kCiG6sTQ
もしかしてHaskellが難しいって言ってる人達って、モナドが何か分からないから難しいって言ってるだけだったり?
モナドが何かとかの理論的背景は難しいけど、モナドの使い方自体は難しくない。
スクーターの運転は難しく無いけどスクーターの構造は難しいのと一緒。
それでスクーター難しいってのは的外れ。

Haskellそのものは簡単。
それを支えるモナドや圏論の理論が難しい。

そこは切り分けなきゃ。
2020/07/20(月) 21:37:51.03ID:uvZgkaZD
初心者に説明する人が切り分けてないので。
嬉しそうに理論的背景を唱えてくる。
効果はばつぐんで深い眠りに落ちる。
2020/07/20(月) 23:31:34.22ID:L10CJ4Gi
哲学のモナドとまったく何の関係もないのだと納得するまで混乱しまくった
190デフォルトの名無しさん
垢版 |
2020/07/21(火) 00:09:36.21ID:O3jPbwEs
Haskellで書かれているので次期LinuxはWindowsの20倍速いという噂。
2020/07/21(火) 01:06:01.32ID:pGVS9bJf
うそだろwwwwww
2020/07/21(火) 21:35:47.16ID:nyC/Po7o
Linuxカーネルが難しい?Rustで実装しよう!
https://medium.com/nttlabs/linux-kernel-module-with-rust-d5363c2f9085

まとめ
現状、RustでのLinuxカーネルモジュール実装は、Rustだけなく、C言語でのカーネル開発知識も必要になり、C言語で実装したほうが簡単ということが分かりました。
しかし、全てのLinuxカーネルモジュールを、Rustで書き直すとなれば、この先10年間ぐらい、エンジニアみんなの仕事を作ることができます。業界愛ですね。
193デフォルトの名無しさん
垢版 |
2020/07/21(火) 23:46:13.85ID:4GG7eaxB
Dが出た頃に同じ様な話を聴いた覚えがある
MonaOSとか今どうなってるかなω
2020/07/22(水) 00:15:45.05ID:z4DE/LFz
C++と違ってRustにLinusが切れてないのは大きい
2020/07/22(水) 00:19:40.79ID:YZRjR+YG
ちゃちいコンパイラで判断できる安全性を判断するためだけに
Rustに書き換えるのか?
ナンセンスだ
196デフォルトの名無しさん
垢版 |
2020/07/22(水) 01:48:12.20ID:nm/iTumD
誰かが、RustでUnixライクなOS実装すれば、流行るかもね
2020/07/22(水) 08:26:18.70ID:C3ALD0gE
後のRunixである
2020/07/22(水) 08:38:41.88ID:VhKfQKt/
絶対この書き方しかしないのにチェーンメソッド連連書かされるのを省いたトランスコンパイラ作れば流行りそう
2020/07/22(水) 10:02:06.83ID:2Lry9Yzr
linuxのヘッダーマクロ地獄は確かにcで書く意味あるのか考えたくはなるわな。
コードジェネレーターとかやろうとしなかったのは気になるところ。
200デフォルトの名無しさん
垢版 |
2020/07/22(水) 17:20:34.61ID:rcYeJgob
なんでマクロごときでコードジェネレーターなんて出てくるんだ?純粋に疑問
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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