次世代言語26 TypeScript Swift Go Kotlin Nim

■ このスレッドは過去ログ倉庫に格納されています
2022/06/21(火) 09:27:46.30ID:5vOFCGpG
スレタイ(順番はRedMonk準拠)以外の言語もok

※ Rustは現世代最強言語なので除外します

前スレ

次世代言語25 TypeScript Swift Go Kotlin Rust Nim
https://mevius.5ch.net/test/read.cgi/tech/1650185555/
2022/07/30(土) 12:51:57.77ID:s2073y24
そういや、c/c++みたいにスタックに置くインスタンスとヒープに置くインスタンスを区別する言語てどれくらいあるのかしらん?
2022/07/30(土) 12:54:04.01ID:EF2/0cvh
Rustさえ使えばメモリは安心安全
2022/07/30(土) 12:57:52.28ID:YI8isAMR
>>729
コードが書き終わるかどうかは保証なし
2022/07/30(土) 13:03:07.00ID:s2073y24
>>729
初心者は無理だね。
初心者を無視したHaskellとかLispの二の舞。
2022/07/30(土) 13:09:33.66ID:/CjwjaIl
Haskellになれるんなら上出来じゃん
2022/07/30(土) 13:11:20.56ID:YI8isAMR
もうHaskellでしかコード書かないとかいう記事がいっぱいあったけど
あの人たちどうしたん?

副作用とかのご高説投げ飛ばして
もうRustでしかコード書かないって言ってそうなんだけど
734デフォルトの名無しさん
垢版 |
2022/07/30(土) 13:18:47.71ID:ZTMi/t93
ここまで全然次世代言語の話無し
2022/07/30(土) 13:26:07.79ID:lvsm0et/
>>727
アロケータの性能が問題になる場合はc/c++はそれ専用のアロケータモジュールを自前で用意するのが普通。
736デフォルトの名無しさん
垢版 |
2022/07/30(土) 13:34:22.66ID:PTbJKKoA
>>733
上位互換のRustへ移行したのでは?
2022/07/30(土) 13:41:46.57ID:YBnrvLJY
>>734
このスレはRustゴブリンやGoゴブリンに乗っ取られたのでシン・次世代言語スレを建ててそこでちゃんとした次世代言語の話に花を咲かせればよいのでは。
738デフォルトの名無しさん
垢版 |
2022/07/30(土) 13:45:54.51ID:PTbJKKoA
だから5chで次世代言語と言えば織田信長しかないのに、なんで無視するのさ。
2022/07/30(土) 14:03:54.41ID:7y/PdVwP
だって君たちFlixもGleamもスルーするじゃん……
2022/07/30(土) 14:15:21.87ID:YI8isAMR
ファッションプログラマはいりません
741デフォルトの名無しさん
垢版 |
2022/07/30(土) 14:23:08.85ID:PTbJKKoA
>>740
ファッションプログラマで検索してみると、株式会社オプトの人事部インタビューが出てきた。
ずいぶん上からなご意見をお持ちのようで、これじゃあ利益を上げる優秀な人間は採用できないだろうと思った。
742デフォルトの名無しさん
垢版 |
2022/07/30(土) 14:43:34.19ID:5b4tKXes
>>739
話題を振ってください
2022/07/30(土) 15:02:59.30ID:v+3Xyc3D
次世代言語といえばPonyが良いと思うよ
2022/07/30(土) 15:04:59.08ID:v+3Xyc3D
PonyはRustよりも安全
データ競合だけでなく、デッドロック、実行時例外が起きないことも保証されてる
745デフォルトの名無しさん
垢版 |
2022/07/30(土) 15:08:15.54ID:PTbJKKoA
良いかもしれんね。
2022/07/30(土) 15:23:50.77ID:jrTi3WXO
>>735
arenaで検索してね
2022/07/30(土) 15:27:43.89ID:1qBADAB3
>>733
副作用をエラーにするHaskellコンパイラは存在しない
副作用を誹謗中傷する人間が負けてコンパイラが勝っただけ
2022/07/30(土) 15:34:56.21ID:YI8isAMR
昔聞いた話

大隈重信が若いころ
字を書くのは自分が一番上手だ誰にも負けないと吹聴していた

ある時明らかに自分より上手な人が現れてそれでもう字は書かない
書かないから下手もクソもないって言いだして残りの人生で字を書かなかった
749デフォルトの名無しさん
垢版 |
2022/07/30(土) 15:38:59.20ID:5b4tKXes
>>743
面白いね
パフォーマンスに重点を置いてるみたいだが、GCあるし、ストップザワールドは発生しないんかな
アクターの概念も興味深い、意外に実践的な言語なのかも
2022/07/30(土) 15:39:13.75ID:ubkbv7J1
>>729
メモリ安全は、CやC++みたいな代替になり得る言語に対してはアピールになるけれど、GC有り言語に対しては、意味ないよね。
2022/07/30(土) 15:58:08.34ID:1qBADAB3
並行並列マルチタスクに対してはGCがアピールになりにくい

ブラウザのクッキーを消してもサーバー側のゴミは消えないから
2022/07/30(土) 15:59:01.24ID:KHG8L45z
>>750
メモリリークは「メモリ安全」だから仕様としてカバーしないおまけ付き。
2022/07/30(土) 16:19:21.47ID:JJS+3w9D
>>750
GC言語ならNull安全機構が現代言語の基礎機能
2022/07/30(土) 16:34:35.02ID:3yfXvlmT
>>742
>>56
755デフォルトの名無しさん
垢版 |
2022/07/30(土) 18:48:59.58ID:PTbJKKoA
ジョジョかよ。
756デフォルトの名無しさん
垢版 |
2022/07/30(土) 19:17:35.02ID:7D+RM/xA
GCあり言語はもうお腹いっぱいなのでGC無しorGC制御できる言語で頼みますわ。
757デフォルトの名無しさん
垢版 |
2022/07/30(土) 19:20:31.68ID:PTbJKKoA
C++はメモリー管理を自由に変更できる。
しかし、GCはほとんど使われていない。
ということは、メモリー云々はほとんど需要がないのでは?
2022/07/30(土) 19:33:32.66ID:2sMkvp6M
>>753
ところがnull安全でないGoというダメな言語があります
新たに作られた言語の中でGoだけが様々な欠点を抱えています
退化しているGoを次世代言語と呼ぶのは滑稽でもあります
2022/07/30(土) 20:34:13.98ID:1qBADAB3
C++以外のOOPでは、null安全は実装継承のボーナスみたいな感じ
実装継承を使わなければ無駄なポインタが増える
スタックガーヒープガーと同じ理屈で実装継承を使う方が勝つ
2022/07/30(土) 20:52:20.28ID:BN91FBRx
その欠点のある言語のが有名な基盤ソフトを作ってることについてもっと頭を使って考えようね。
2022/07/30(土) 21:13:52.36ID:SZsGBOts
Goは並行並列プログラミングを特殊化したC言語って感じ
今さらそんな貧弱な言語を使うのはヤダ
2022/07/30(土) 21:26:41.67ID:YNdaXkm1
>>758
ところがNull安全は本当に絶対必須でしょうか?あなたのコードはmatchでキチンとNoneを考慮しているでしょうか?
ログあるいはコンソールにメッセージを出し、終了あるいはpanicしているだけではありませんか?
言うほど熟練のプログラマになればなるほどNull安全など、どうでも良い事を「次世代」と言うことに疑問を感じるものです
ニワカと、口だけ雄弁で高い志と低い能力を持つものは、大変に有難がる

本当のNull安全の意味は、それはNoneでもNilでもなく、関数型言語のように変数の宣言と初期化が同時一体になっている言語のことです。
関数型言語の真似をするプログラミング言語が手続き型言語が増えていますが、
Result/Optionなどというプログラミング例外からの反動から来た戻り値の粘着的統一誇るようなNullが存在できない言語を
次世代言語と呼ぶのは*甚だ*滑稽でもあります
2022/07/30(土) 21:32:41.56ID:YI8isAMR
>>762
リアルな会話でで はなはだ や こっけい と言うワードを一切聞いたことがない
おじいちゃん世代かなあ?
2022/07/30(土) 21:32:55.93ID:xwnMTwge
>>761

なんでHaskellやScalaはGoよりも前に出てるのにGoだけ流行るの?

シンプルな言語が求められてるからでは?
2022/07/30(土) 21:54:11.36ID:RPaCgO4f
>>717
OCIコンテナはRust実装あるよ
2022/07/30(土) 22:09:21.95ID:MuK8+gHd
言うほどGo流行ってないけどな

それに使われてる理由は言語がシンプルだからじゃないんだよな
2022/07/30(土) 22:15:12.45ID:PnFWbFUc
>>762
Rustを叩くならRustをもう少しちゃんと学ぼうよ
RustのNoneはOption<T>型
つまりT型の変数にNoneは絶対に代入できない
コンパイル時点で静的にNull安全が保証される
もちろん最近の言語は当然備えている必須の性質(退化しているGoを除く)
2022/07/30(土) 23:25:28.07ID:zHogqexf
> 本当のNull安全の意味は、それはNoneでもNilでもなく、関数型言語のように変数の宣言と初期化が同時一体になっている言語のことです。
とかアホなこと言ってる自称熟練プログラマの相手すんなよ...
2022/07/31(日) 00:03:18.44ID:yCe0hy+/
>>767
Noneが代入できる・できないなんて話はしていない。Noneを正確に処理しているかという話をしている、「コンパイル時点で静的に」なんて話もしていない。
Nullを表すことが出来ないという話をしている
2022/07/31(日) 00:26:51.03ID:FStFDS54
>>762
キミはNull安全に詳しいんだね
本当のNull安全とやらを見せてくれ
2022/07/31(日) 00:34:03.03ID:AhwAlAAo
>>768
その難解?な文章が理解てきるなんておまえスゴイナー
2022/07/31(日) 01:13:59.69ID:1Fc8vI4A
>>769
普通の型(ポインタや数値や文字列など全て)がNullを表すことができないのがNull安全
Null安全な言語でNullを表すときは元の普通の型に対して特殊なNullableな型を用いる
そしてNullableな型はNullableを外して元の普通の型にしないとNullableなままでは元の型として使えない
つまり元の型とは別の型となっているためコンパイラが静的にエラーとすることができる

具体的にはRustならぱ元の普通の型Tに対してNullableな型はOption<T>となりNullはNoneと表記するNull安全な言語
このように表記は異なるがSwiftやKotlinなどもNull安全な言語

一方でGoはNullをnilと表記するがそのnilがそのままポインタなどに代入可能
つまり実行時にヌルポ参照のランタイムパニックが起きるNull安全でない言語
773デフォルトの名無しさん
垢版 |
2022/07/31(日) 04:44:43.27ID:pdOIFS3A
C++20のコンセプトのほうが色々使えて良いのでは?
2022/07/31(日) 05:29:20.33ID:21uzlcdA
>>772
>具体的にはRustならぱ元の普通の型Tに対してNullableな型はOption<T>となりNullはNoneと表記するNull安全な言語
なんだよこの説明w
おっさんもNull安全の意味わかってねーじゃん
長文書く度に墓穴掘るな
2022/07/31(日) 06:15:29.02ID:j7G9Xjcb
>>774
KotlinやSwiftといったNull安全な言語は全て同じその方式だぜ
T型にNullは許容されず、Nullable<T>型にのみNullを許容
両者の型を厳格に区別することでNull安全を保証
Nullable<T>型は言語毎に記述が異なり「T?」型だったりOption<T>型だったり様々
776デフォルトの名無しさん
垢版 |
2022/07/31(日) 06:33:53.74ID:pdOIFS3A
その程度ならtype_traitsで十分では?
2022/07/31(日) 06:53:26.13ID:j7G9Xjcb
C++は何でもあるとともに、ほとんどの機能は皆に使われない、失敗した言語
言語の機能は有効に洗練して採り入れてこそ、初めて意味を持つことを示した反面教師
Null安全に関しては、言語としてNull許容を制限できなければ意味を持たず、C++はもちろんNull安全ではない
778デフォルトの名無しさん
垢版 |
2022/07/31(日) 07:06:06.96ID:pdOIFS3A
でも、C++そのものは、みんなに使われてるよね?
Rustが足元にすら近づけないほどに。
2022/07/31(日) 07:13:07.41ID:UwyiR8NW
>>778
だからなに?
使われてて色々欠点も見えてきたから新しい言語が作られてるわけで
780デフォルトの名無しさん
垢版 |
2022/07/31(日) 07:16:07.63ID:pdOIFS3A
C++で使われない機能を主役にした言語を作っても使われないのでは?
実際、使われていないし。
781デフォルトの名無しさん
垢版 |
2022/07/31(日) 07:19:03.47ID:pdOIFS3A
なんだかんだ言ってC++は強力で便利なんだよな。
自分のやりたいことが実現できる。

何でもできるのは良くないことだから機能を制限するのは理論的に正しいのかもしれない。
しかしそれが使われるようになるのは難しいと思う。
2022/07/31(日) 07:36:22.56ID:kBDjWwI8
>>781
C++が失敗したから山のように様々な言語が出来てきた
C++は何でも出来るのではなく整理されていない後付け機能が多数あるだけ
ようやくC++と同じ速度で動く諸言語が出揃ったので過去からの蓄積維持を除いて今後はC++を使うメリットは全く無い
783デフォルトの名無しさん
垢版 |
2022/07/31(日) 07:50:16.84ID:pdOIFS3A
C++はあからさまに成功した言語だと思いますが。
2022/07/31(日) 08:06:27.82ID:yP580+hE
++してないC言語は今でも組込みやらカーネル界隈では現役バリバリだけど
C++として使ってるものに関しては必ずしもC++でやらなきゃいけないわけじゃないんだよな
2022/07/31(日) 08:29:01.99ID:ytAzHhbq
みんなの共通認識
C言語は1階平屋の素朴だけど長く住めるしっかりした家
C++はそこへ2階3階とどんどん縦へ建て増し横にも増築と違法建築状態のダメな家
部屋は大量に増えたけど住みにくいので使われていない部屋が多数
2022/07/31(日) 08:29:30.15ID:UwyiR8NW
>>780
> C++で使われない機能を主役にした
なんの事を言ってるの?
それあなたが(批判するために)勝手に主役だと思ってるだけじゃないの?
2022/07/31(日) 10:36:19.32ID:MJ3nboxa
>>775
おっさんほんとに不勉強だな
そんなんじゃ新人にもバカにされるぞ
788デフォルトの名無しさん
垢版 |
2022/07/31(日) 12:12:18.58ID:pdOIFS3A
C++20のコンセプトのほうが良いのでは?
2022/07/31(日) 12:13:40.14ID:FStFDS54
C++にborrow checkerがあればC++でもいいかもな
790デフォルトの名無しさん
垢版 |
2022/07/31(日) 12:15:54.80ID:pdOIFS3A
静的解析ツール使えば良いだけでは?
2022/07/31(日) 12:20:57.48ID:rndY06V7
Null安全は次世代言語に必須だな
これを省くメリットはない

>>790
ツール不要
Null安全な言語ならコンパイラがエラーとて指摘する
792デフォルトの名無しさん
垢版 |
2022/07/31(日) 12:24:56.81ID:pdOIFS3A
静的解析ツールなら、コンパイラとは次元の違うレポートを得られる。
2022/07/31(日) 12:28:11.09ID:XG1p6vz6
静的解析ツールタダじゃないじゃん。やたら時間もかかるし。
2022/07/31(日) 12:58:08.09ID:UwyiR8NW
>>792
C++でCoverity使ってたけどそれでもメモリー安全とかヌル安全は完璧には捉えられなかったけどね
完璧に捉えられるツールがあるなら教えてくれ

>>793
Coverityは差分解析とかもできるからそんなに時間がかかるって感じはしなかったけど
2022/07/31(日) 13:06:46.97ID:QQQkQO80
なんで仕事でもないのにC++使うんだろ
何にも意味がないのに
2022/07/31(日) 13:21:03.75ID:jgEDwA8h
高抽象度なものはC++向けのインターフェースしか提供されてなくて、自前でCからのFFIラッパー書かなきゃないけないけど書きたくないからかな……
2022/07/31(日) 13:29:59.32ID:FStFDS54
既存のOSSがC++が多いからな
みんなRustに移植されてればいいのに
798デフォルトの名無しさん
垢版 |
2022/07/31(日) 13:35:33.83ID:pdOIFS3A
>>795
何でもできるからでは?
799デフォルトの名無しさん
垢版 |
2022/07/31(日) 13:38:21.32ID:pdOIFS3A
極端な話、高位合成によってC/C++をハードウェア記述に使うことが当たり前に行われているけども、Rustでは無理でしょう。
2022/07/31(日) 13:39:24.24ID:hztgN1yG
でもRustはメモリが安全だよ
801デフォルトの名無しさん
垢版 |
2022/07/31(日) 13:41:40.43ID:pdOIFS3A
2021年秋にRustへの移行を発表して以来、Metaの時価総額はどんどん下がってますしね。
市場の評価は正直だと思いますよ。
2022/07/31(日) 13:44:03.00ID:QQQkQO80
>>797
いうほどC++のOSSって多くないような…
803デフォルトの名無しさん
垢版 |
2022/07/31(日) 13:45:52.08ID:pdOIFS3A
Rustへ移行する。

お花畑系か?

企業価値が下がる。

当然の成り行き。
2022/07/31(日) 13:55:24.43ID:QQQkQO80
メタクエスト2とか1.5倍以上に値上げするのを発表したばかり
売り上げが下がってもおかしくない
805デフォルトの名無しさん
垢版 |
2022/07/31(日) 13:56:08.98ID:pdOIFS3A
https://trends.google.co.jp/trends/explore?q=%2Fm%2F0dsbpg6,%2Fm%2F0jgqg
どうやらRustは日本でだけ突出して関心を集めてるようだけど。
2022/07/31(日) 13:59:52.84ID:QQQkQO80
メモリリークするかもしれないC++を使う理由は本当にあるのか?
pythonやjavaやC#
それか次世代言語使えばいいじゃないか?

C++使う意味は本当に薄れてる
807デフォルトの名無しさん
垢版 |
2022/07/31(日) 14:03:41.92ID:pdOIFS3A
誰か仕掛け人がいるんだろうな。
地域を日本に限定すると、6月初めに急激に検索ボリュームが増えて、その後低下し始める。
この時、何かがあったのであろう。
本の宣伝のためにQiitaで記事を書くとか、5chでスレ立てとか。

他の国では一貫してGoのようなライバルより検索ボリュームが低い。
10倍とかではなく、たとえばGoと比較すると、Rustは100倍ほど検索ボリュームが低い。

ところが日本では6月に一時的とはいえ、RustがGoを超える。
100倍の差を乗り越えて。
韓国面に落ちてそう。
2022/07/31(日) 14:06:22.51ID:uG3GBCfz
令和にもなってC++マンセーする低能クソジャップさん…w
809デフォルトの名無しさん
垢版 |
2022/07/31(日) 14:08:34.98ID:pdOIFS3A
Rust、C++、Goで比較すると、地域によって関心度がはっきりと色分けされる。
北米、中国、オーストラリアはGoの関心度が高い。
欧州、カナダ、ロシア、日本はC++の関心度が高い。
ただし、Rustの色はどこにもつかない。(百分の一のボリュームしかないから。)
2022/07/31(日) 14:33:18.26ID:3aGOnqYZ
YouTube で有名な雑食系エンジニア・KENTA は、
初心者のキャリアパスは、Ruby on Rails → Go だけと言ってる。
Laravel, Django を使わないように言ってる

Rust, Elixir は、普及のキャズムを越えなかった。
越えたのはGoだけ

でも、Stack Overflow では、Rust, Elixirの人気がトップ。
めちゃめちゃw
初心者をRust, Elixirの仕事で使うわけない

TIOBE は、Rubyは難しすぎて滅ぶから使ってはいけないと言ってる。
KENTA天敵・モローも、YouTubeで言ってた。
Rubyは滅ぶ。これからはJava・PHP の時代だと

それが今になって急に、Railsのキャリア相談までやり出したw
Java・PHPのSES・客先の仕事はどうなったの?w

YouTubeのモローの動画。
【2022年版】Ruby on Railsの将来性
2022/07/31(日) 14:37:31.33ID:qRvFCaIs
>>792
静的解析ツールは役に立たないことも多いうえに面倒
レガシーなC++をさっさと捨てるのがベスト
2022/07/31(日) 15:52:49.59ID:KfEgiHCF
Haskellいいよね
2022/07/31(日) 15:57:42.86ID:QQQkQO80
えっ
2022/07/31(日) 16:00:43.28ID:UwyiR8NW
>>799
それはそう言う処理系がまだ作られてないだけで技術的にできない理由はないと思うけど?
2022/07/31(日) 16:19:34.85ID:swJh8Av0
>>807
それゲームのほうのRustやで
816デフォルトの名無しさん
垢版 |
2022/07/31(日) 16:58:04.44ID:pdOIFS3A
>>815
プログラミング言語のRustと指定できるのですよ。
2022/07/31(日) 17:02:31.12ID:CJiuqKJm
>>816
ゲームの方のRustで6月頃にYoutuber向けのイベント?か何かがあって急激に検索が増えている
逆に言語の方は特に増える要因はない
つまり「プログラミング言語のRust」という指定でも指定しきれていないということ
2022/07/31(日) 17:08:43.44ID:g6mgJ8gi
Google Trendsの詳細データがわからないしなんともいえんね
「日本の友達に聞いたらみんなRust好きって言ってたもん」程度の信頼性
2022/07/31(日) 17:25:45.61ID:CJiuqKJm
まぁなんともいえんのはそう
とはいえGoogle検索に影響するほどバズったQiita記事やら5chスレなんていう
存在しないものを仮定するよりはゲームの影響を排除できてない
と見るほうが自然だろう
2022/07/31(日) 17:27:41.53ID:Y9nAVmbr
キミらって井戸端会議みたいなん好きよね
どっちが人気あるとかどーのとか
技術的な話してるやつ少ないね
821デフォルトの名無しさん
垢版 |
2022/07/31(日) 17:35:17.35ID:pdOIFS3A
>>817
トレンド見たならわかると思うけど、Rustなんて世界では全く注目されていなくて存在しないも同然。
しかし、5chではRust推しが異様に多くないか?
トレンドではGoが注目を浴びていて、Rustは存在しないも同然だぞ。
やはり、日本は特殊なのでは?
822デフォルトの名無しさん
垢版 |
2022/07/31(日) 17:40:54.26ID:pdOIFS3A
そもそもRustは使いたいと思うような特徴が無いんだよな。
何か理由があってRust推ししてる人が、たかだか数人いる状況では?
例えばセミナー商法始めたとか。
823デフォルトの名無しさん
垢版 |
2022/07/31(日) 17:55:36.40ID:SahQ8VsR
>>806
Javaは論外
C#は使っても良い
Pythonは適材適所
C++万歳
824デフォルトの名無しさん
垢版 |
2022/07/31(日) 17:55:42.92ID:pdOIFS3A
Rust本の著者とかが怪しいな。
825デフォルトの名無しさん
垢版 |
2022/07/31(日) 17:57:48.82ID:SahQ8VsR
>>821
5chはNim推し
昔はD推し
2022/07/31(日) 17:58:52.41ID:5HP0foYy
最近はAIだの大規模分散処理だのk8sだの、小手先のプログラミング技術よりもずっと上位のレイヤばかりが注目される風潮があったから、
久々にプログラミング言語だけでマウント取れるチャンスが来て嬉しいんだろう
小手先のコードで難しい風のことをやるのが好きな割にそんなに頭良くないからHaskellとか本質的な概念の難しさでマウント取れるほどでもない、Scalaとかあのへんの人達
827デフォルトの名無しさん
垢版 |
2022/07/31(日) 18:01:52.52ID:pdOIFS3A
もしかして統一教会がRustの取り扱い始めたのか?
日本だけなんだかおかしいぞ?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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