次世代言語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/
2021/03/27(土) 01:07:42.58ID:71XDemdj
Javaの☆のやつのがきもい
2021/03/27(土) 01:09:38.24ID:+DporzDl
>>705
ごーふぁー君はイラっとくるキモさだが
こいつはリアルに純粋にキモいなw
2021/03/27(土) 02:04:50.15ID:ViXMOfbR
しかも名前がLispエイリアンとかふざけてる
2021/03/27(土) 02:39:16.96ID:ZUW1x11T
舌足らず(lisp)なのかな
710デフォルトの名無しさん
垢版 |
2021/03/30(火) 02:28:48.17ID:uKQPYHO8
>>614
よく分からないなら職場の先輩に聞いてください。あなたのくだらない煽りに答える所ではありません。
無視しても良かったのですが、あまりにも気持ち悪すぎるので書いておきます

RustのRc、Arcと言っているのに、それにまったく気づかない文章読解能力の無さどうかと思います。
ARC (automatic reference counting) というのアルゴリズムです。
言うまでもなくRcは(reference-counting)です。単純な参照カウントを改良・自動化したのがARCです。
改良すべきは細かい話になりますが、1つ目が値の受け渡しによるコピーをなくすためのムーブ操作です。
理論上は、ムーブセマンティクスと呼ばれる、C++11/14からある所有権のムーブで、メモリーコピーを
防ぎます。これは「所有権」という言葉からRustを想像すると思いますが、まさしくそれでRustはムーブを
明示的にシンタックスで行いますが、VやNimbleなどはそれが自動化されます。strong/weak/unownedの
キーワードが必要になりますが、確かSwiftもARCです。Vの場合はmutが必要です
2番目にスレッド間でのデータが共有されるため、ここも単純なRCと比べて改良されています。
他にもRCに比べて利点があります。多くの単純な例ではオーバーヘッドと見做されるようなカウント操作を
行わないようになります。これは明示的に所有権の移動を行うRustと同じです。Rustの利点はGCが不明な
箇所では行われない事です

簡単に表せば、最も単純な例では関数を抜けた後にメモリ解放を必要とする変数のデストラクタ呼び出しを
コンパイラが自動的に挿入します。(ここでカウント操作はありません)ただ循環参照を処理する場合には
参照カウンターとは別にサイクルカウンターが必要となります。
Rustはunsafeを使わずとも「循環参照は、メモリをリークすることもある」と認めていますが、独自データ
構造で循環参照を作った場合、メモリーリークしないよう保証するのは実装者の自分自身が必要です。

JavaなどのGCがあるとされる言語は多くはこれを解決するために、マークアンドスウィープを使用して結果的に
Stop the Worldが発生します。これを解決して抑えるためコンカレントGCを作りましたが、常にGCされるので
に結果的にパフォーマンス低下します。
2021/03/30(火) 09:11:59.50ID:BHNwTu7Q
>>710
RustのArcはAtomically Reference Countedの略な
2021/03/30(火) 09:44:21.64ID:ZeIxFSpI
>>710
RcとArcの違いが全然分かってなさそうだけど大丈夫か?
カウント操作にアトミック命令使ってるかどうかだけなんだが。
713デフォルトの名無しさん
垢版 |
2021/03/30(火) 15:01:48.57ID:3h4JBsbE
あまりにも気持ち悪すぎるwワロス
こいつらマウント取りたくて必死すぎだろwなんも反論になってないw
そんなにVが嫌いならダメな所あげたら良いのに
2021/03/30(火) 16:45:27.89ID:QeTs/eYE
ReScript良さそうだな
2021/03/30(火) 16:50:58.07ID:ZCSqiewq
見たくないものは見えないんだなあ
2021/03/30(火) 18:21:16.68ID:bKhExOEr
最新の言語ってデバッグのための値操作とかどうやるんですか

JavaやCだと変数値は変えられるのがデフォだから
一応元の処理は流したうえで値を書き換えてやるのが基本だった気がするけど
最近のってletでデフォconstじゃないですか
2021/03/30(火) 22:53:17.23ID:hcFmxLDn
デバッガからなら書き換えられるのも多いのでは?
2021/03/30(火) 23:09:39.66ID:hr1twhx6
メモリ操作するよりセーブしてからファイル操作してロードできればいいのにな
GCにたとえるとストップアンドコピーってとこか
2021/03/30(火) 23:25:34.80ID:PerNg8Uc
純粋関数型言語で値の書き換えできるやつってあるのかな
HaskellとかElmで変数(とは言わないかもだが)表示しながらステップ実行とか式の評価の履歴みれるのは知ってるけど
2021/03/30(火) 23:31:06.76ID:p2ycBMb7
できない理由はないんじゃない?メモリ上に置かれないような最適化とかされない限り。
721デフォルトの名無しさん
垢版 |
2021/03/30(火) 23:58:23.09ID:2Xqp7lc5
24日、最新版となる「Julia 1.6」をリリースしたと発表した。
2021/03/31(水) 00:29:37.70ID:asE4SEMA
ステップ実行やりたいがためにCのライブラリ呼び出しすんな派と
Cライブラリ呼び出しーや派
言語の流行はほぼこれで説明がつく
2021/04/01(木) 20:50:12.42ID:4OCi/swF
「AsyncAPI Initiative」がLinux Foundationに参画、イベントドリブンなAPIの記述標準化を目指す
https://www.publickey1.jp/blog/21/asyncapi_initiativelinux_foundationapi.html
2021/04/08(木) 04:40:42.69ID:kgR5ZIDd
>>710はスルー力検定?
2021/04/08(木) 08:12:35.42ID:oHbd1x+/
Rust言語でAndroidはより強固・安全に 〜GoogleがOS開発への導入を進める
C/C++コードの完全な置き換えは非現実的だが、新規コードへの活用は不具合の予防に効果あり
https://forest.watch.impress.co.jp/docs/news/1317183.html
2021/04/08(木) 15:38:13.33ID:YWFqFncu
Rustほんと人気だね
2021/04/08(木) 15:43:04.97ID:CsfSuBCz
Javaのパクっておkの勝訴の影響はどうなるの
2021/04/08(木) 19:17:59.07ID:ByNsu0yr
フェアユース
2021/04/08(木) 21:12:55.75ID:KJ+7YtJl
googleがイニシアチブとってくるとかなり変わってくるな

ただfirefoxの遅れ取り戻すために作ったものが今後chromやedgeにも使われるとなるとどうなんだろ?
2021/04/09(金) 01:33:52.25ID:q4HnPycb
GoogleのJavaはそもそもドロイドのアプリ層でしか使ってないとオモウ
なのでOpenJDK標準になってたりKotlin押しになってるアプリ開発環境は変るかも
731デフォルトの名無しさん
垢版 |
2021/04/09(金) 07:43:56.69ID:PY9i7lti
節子!それ盗作ちゃうで!インスパイアかフェアユースや!
2021/04/09(金) 11:54:55.40ID:1od6wqSM
フェアユースの定義はどう見ても自然科学の管轄外なので
どちらかといえばコミュ力に近い能力が役に立つ事案
2021/04/09(金) 20:44:39.89ID:ae3tE6Ku
やったもん勝ちでいいじゃんいいじゃん
2021/04/10(土) 09:37:11.94ID:WdqgOojm
中国人みたいなこと言いよる
2021/04/10(土) 09:56:08.18ID:xmdeuDkH
そういう判決だったからな
2021/04/16(金) 16:43:46.37ID:iRzpcHGc
Go言語はos.Open()の戻り値のエラーはスルーできないのに
File.Close()の戻り値のエラーは普通にスルーできるのが気持ちわるくてやめた
(だいぶ前の話だから今どうなってるかは知らない)
せめて
_ := f.Close()
にしないと警告出すくらいのチェックはほしい
2021/04/16(金) 17:20:31.43ID:U88khvJX
>>736
どういう事?
voidではない関数の戻り値もかならず代入文によって捨てるコーディングがしたいってこと?
2021/04/16(金) 18:28:46.84ID:iRzpcHGc
>>737
そういうことです
当時そういうオプションとか探したけど見つからなかった
2021/04/16(金) 20:10:02.72ID:U88khvJX
>>738
うーん、他の言語もタプルとかとして受け取るなら一部だけ受け取るなんてこと出来ないんだし、一般的な仕様だと思うけどな。
2021/04/16(金) 22:00:20.82ID:iRzpcHGc
>>739
その部分だけで考えれば普通なんだけど言語全体で考えるとバランスが悪い感じ

Openの方は

f, err := os.Open(..) // errを使わないとコンパイルエラー
f, _ := os.Open(..) // 敢えてエラーチェックはしない

の二択だけど、Closeの方は

err := f.Close() // errを使わないとコンパイルエラー
_ := f.Close() // 敢えてエラーチェックはしない
f.Close() // エラーチェックしないの?

の三択になって、例外を使わずに変数の使用を強制することでエラー処理を明示的にするっていう
Go言語のスタンスがぼやける気がする
(そのスタンス自体が私の思い違いかもしれないけど)

Closeだとエラー無視しても大したことないけど、Chdirあたりだと
エラーをスルーできて例外も飛ばないのは危険さを感じてしまう
C言語と同じだと言えばそれまでだけど、変数の不使用はコンパイルも通さないのに
戻り値の不使用は警告も出さないっていう仕様はアンバランスだと思った
2021/04/16(金) 22:43:53.10ID:U88khvJX
>>740
errを使わないとコンパイルエラー、は違うよ。
_ = err
と捨ててもコンパイルエラーは避けられる。

例外を使わず、は正しいけど、変数の使用は実質強制されてない。

そういう、errを捨てるような書き方は、Javaのthrows書きたくないからとExceptionで大雑把に例外を握りつぶしてるメソッドみたいなもんで、躾の問題だと思うよ。
2021/04/16(金) 23:39:26.78ID:h4psCBcA
>Javaのthrows書きたくないからと
極刑を望む
2021/04/16(金) 23:53:42.11ID:iRzpcHGc
「使う」の意味が曖昧だったかな
errを使うっていうのはエラーをチェックをするという意味じゃなく
コードの中でそのerrをどう扱うかを明示するって意味で書いた
(普通はエラー処理だけど)

>>741の例だと
_ = err
の中で「そのエラーはチェックしない」って意図を明示するためにerrを使ったことになる

_ := f.Close()

f.Close()
の違いは、下の書き方だと
・そこでエラーが返される可能性
・そのエラーを無視するという意図
の2つが伝わりにくくなること

もしかしたらコードを書いた本人もCloseがエラーを返す可能性を見落としてるかもしれなくて
そうなると想定しない状態でプログラムが動き続けて予期しない結果を招くかもしれない

もしコンパイラが戻り値を受け取らないパターンを弾いてくれればそういう見落としは防げるようになる
(そこで何も考えず戻り値を捨てる書き方をして予期しない結果になったならそれはもう躾の問題だけど)


Javaで例えるならExceptionで握りつぶすというよりcatch(Exception)して何もしない感じかな
自分は「飲み込む」と表現してる
2021/04/17(土) 02:30:54.76ID:6GAIvEwc
そんなに説明しなくても>>736だけで十分わかるよ
https://github.com/golang/go/issues/20803
https://github.com/golang/go/issues/20148 <― Rob Pike
2021/04/17(土) 02:59:32.14ID:Cl8a1wE7
同じこと言った記憶あるなあと思ったら一昨年だった

https://mevius.5ch.net/test/read.cgi/tech/1567602619/927
927 デフォルトの名無しさん sage 2019/09/29(日) 19:19:16.64 ID:siw3JIyP
deferのためなんだろうけど、返り値全捨てでの握り潰しがコンパイルエラーにならないのは不満
2021/04/17(土) 09:13:21.49ID:GZ3nvsuU
>>743-744
これは俺が不勉強だった。Issueも立ってたのか。
この議論は確かに有益だな。
issueで書かれてるように、deferで雑に閉じたいとかそういうケースが確かに漏れるか、ってぐらいだな。

うーん、なかなかバランス難しいもんだな。
とはいえRustみたいな気難しいコンパイラになられるのもなかなかだし。
2021/04/17(土) 09:39:43.53ID:WqZ6rzHC
>>742
それは形式的に判断できるものじゃなくて、大雑把かどうかはその内容によるわな。
握りつぶしていい例外は存在するしそれは握りつぶしていい。
2021/04/17(土) 11:00:28.48ID:tBKly9ku
throwsを書くのは関数や変数の型を書くことと同じ
それに対し「型を書かなくていい変数は存在する」と
言い返したのと同じだから痛快だね

全ての変数に型を書くのに今までどれだけ無駄な努力をしていたか
2021/04/17(土) 12:15:23.05ID:WqZ6rzHC
>>748
Javaの検査例外はたしかに例外を型安全に扱うための仕組だけど、throwsを書かないのは
いわばvoid型のようなもので、型推論や動的型付けで型を書かないのとは違う。
2021/04/17(土) 12:35:03.15ID:GZ3nvsuU
検査例外は「ただの大域jmp、しかも行き先が自分ではわからないやつ」っていう例外の悪い部分をうまく取り扱うための、そこそこいい仕組みだと思うんだけど、
いかんせん例外で対応することが多すぎた気がする。
このメソッドより外側には漏れ出しません、ってのは俺はいい宣言だと思うんだけどな。

今はかなり改善されてるんだろうけど、Javaにいい印象なくてなかなかJava系の言語やる気持ちになれないや…。
2021/04/17(土) 13:37:15.96ID:GMKTrofB
Javaの例外処理は独自の例外クラスを作って低層の例外を取り込んでいく設計を知らないと
throwsの中身が膨れ上がって大変なことになるね
throwsが面倒っていう人は独自の例外クラスを作るのが面倒なんだと思う

GoとかRustは返せるエラー型が原則1つに制限されるから必然的にそういう設計を迫られる
2021/04/17(土) 17:29:58.69ID:GZ3nvsuU
>>751
C#で言うInnerException的な?
まあ、業務ロジックでハンドリングするならアプリケーションで定義した例外に包むわな、確かに。
2021/04/17(土) 22:12:19.57ID:IisFsCzs
Javaの検査例外は直上でのハンドリングを強制したのが失敗
Goみたいに一種類だけならまだしも、全種類はさすがにノイズになりすぎた
コンパイル時にチェックしたいだけならthrowsは暗黙的にコンパイラが生成し、最終的にキャッチされないままの例外があったら警告出すくらいで十分だったんだよ
結局Javaはmulti catch導入して、型を緩める方向に舵を切っちゃった
2021/04/17(土) 22:53:24.71ID:/69X/cno
throwsを暗黙的に生成するのはそんなに簡単じゃない気がする
2021/04/17(土) 22:59:40.59ID:WqZ6rzHC
検査例外がというより、そこは例外に多彩な型を持たせること自体が失敗だったと言うべきだろうな。
例外というものは呼び出し階層の複数の階層を越えて上位層が下位層に依存してしまうんで
それをSOLID原則のに従うようきっちり依存性逆転させるのは骨が折れる。
2021/04/17(土) 23:31:17.79ID:dnL36O9R
例外の型って大抵デバッグ目的で持たせるエラー情報の種別に応じて作られるわけだけど、
それってプログラムでのエラーハンドリングの制御とは異なる関心事なんだよな
それをごっちゃにしてしまったのがJava系の例外の失敗だと思う
プログラムの制御にとっては、成功、リトライ可能な失敗、リトライ不可な失敗、くらいの分類があれば十分で、それ以上細かくしてもノイズになるだけ
2021/04/18(日) 00:47:22.61ID:z4d4288G
プロセスやスレッドを起動するならexitでいいのに
シングルタスクでイベントループを終了しないで続けるためにthrowとcatchがある

上位層が下位層に依存するのはシングルタスクの欠点だが
それは旧世代言語の欠点だというのがなぜか定説になってしまった
2021/04/24(土) 08:05:00.86ID:8O98k7om
> 例外というものは呼び出し階層の複数の階層を越えて上位層が下位層に依存してしまう

これどういうこと?
上位下位というのは継承関係?コンポジションの関係?
いずれにせよピンと来ないんだが
759デフォルトの名無しさん
垢版 |
2021/04/24(土) 08:18:28.13ID:8O98k7om
https://ideone.com/gvbImJ
class A {
void foo(int value) {
if (value != 42) throw new IllegalArgumentException();
}
}
class B {
void bar(int value) {
new A().foo(value);
}
}
class Ideone {
public static void main(String[] args) {
try {
new B().bar(0);
} catch (IllegalArgumentException e) {
e.printStackTrace();
}
}
}
たとえばこう↑したとき
どこに「上位層が下位層に依存してしまう」部分があるの?
2021/04/24(土) 09:21:13.32ID:PpOY6z/o
呼び出し海藻だろ
2021/04/24(土) 10:02:36.99ID:K4uxnQki
>>759
A が IllegalArgumentException を投げるかもしれないという事実に Ideone が依存している。
2021/04/24(土) 12:02:10.01ID:X9M/vDl3
>>761
そのことをもって「上位層が下位層に」と表現しているってことでおk?
2021/04/24(土) 12:15:38.69ID:h2P4AVL3
だいたいその認識だったな、俺も。
2021/04/24(土) 15:59:57.86ID:tHtLe+wG
IllegalArgumentExceptionならまああまり依存してる感はないかもしれない
特に問題になるのは、FooException のように、barがfooに依存しているという事実を晒してしまうような例外を投げるケースだな
2021/04/24(土) 20:23:23.95ID:UtBZJqS8
やっぱJavaってオワコンなのか書店のJavaコーナーどんどん縮小してるし
以前はJavaコーナー一番広かったのに最近は大概他の言語(Python,JavaScriptなど)に負けてるな
何はともあれ業務上必要で売れるならある程度の面積は占めるはずなんだが
766デフォルトの名無しさん
垢版 |
2021/04/24(土) 21:19:03.86ID:pIwkRpva
俺がインターンの子にジャバをやらされる企業には絶対いくなといってるからだろうな
2021/04/24(土) 21:44:59.76ID:tDy/GOTv
新卒奴隷送り込む商売がやりづらくなっただけなのと
六ヶ月リリースになって書籍が追いつけなくなっただけでしょ。

「やさしいjava完全に理解した!」が減っていいことだ。
2021/04/25(日) 04:27:20.08ID:HtPKTQ5q
リリースに出版が追いつかないだけの理由なら別に書籍のコーナースペースが縮小したりしないと思う
スペースが狭くなってるって事は需要の絶対数が減ってるからでJavaをやる新人ってのが減ったのは確実なんだろうな
2021/04/25(日) 05:12:25.49ID:fxJVYt9g
ただ単にkotlin使うようになっただけでしょ
まだまだjvm使ってるとこは多いと思う
今後はわからんけどね
2021/04/25(日) 06:29:37.85ID:NMiXqa1m
Javaが採用されてきた大きな理由の一つとして、実行環境としてUNIXをターゲットとする場合に、工員の開発PCがWindowsでも比較的支障が少ないってのがある
ただ最近では業務系でも開発にMac使うところは増えてきたし、
.NETもLinuxに対応したりNode.jsやPythonも主にUNIXで運用される主要なスクリプトの中では比較的Windowsの相性が悪くない方だったりして、ライバルも増えた
そもそもクラウドやコンテナの普及のせいで、直接Windows上で開発するということ自体がこれまでよりも困難になってきているし、Windows自体もWSLにより完全なUNIXを備えてしまったためこれまたJavaに拘る理由がなくなってしまった
2021/04/25(日) 06:56:54.09ID:wIbtFVmU
売り場面積が根拠ならjava云々でなく単に棚分類コードの関係で書店の扱いがいいジャンルに業界がシフトしてるだけの話よ。
鉄板はEXCEL本、python本、後は今ならディープラーニング関連かな。
オライリー・ジャパンですらwebもプログラミングも関係ない分野の本出してんの知らない?
javaならむしろ去年の六月にswingの新刊出てる。

>>769
kotlin使うようになったらからが理由ならscala使うようになった頃に取って代わってるだろうね。
2021/04/25(日) 13:13:44.43ID:oFpMkyEJ
Java は、GitHub に銀行のソースコードを上げた人とか、
20年やっても年収200万円とか、IT 土方の多重請負構造で、
客には1人月100万円を請求しているはずが、80万円抜かれる

プログラマーに還元されない。
というか、関数内だけを作っている、
システムを作っていない単純コーダーだから

工事現場の見習いみたいな感じ

そのIT業界の多重請負構造を、
YouTube で有名な、雑食系エンジニア・KENTA が、
ばらしてしまったので、日本中に広まった

IT土方Java vs 自社開発系Ruby
SES のモロー vs KENTA
2021/04/25(日) 13:18:37.83ID:KtTIhOup
推奨NGワード: 土方
推奨NGワード: 請負
推奨NGワード: 雑食
推奨NGワード: KENTA
推奨NGワード: 自社開発
推奨NGワード: Ruby
推奨NGワード: SES
推奨NGワード: モロー
2021/04/25(日) 15:27:32.41ID:HtPKTQ5q
ちなみに言語じゃないけどDenoってこれから伸びる可能性あるんかね?
2021/04/25(日) 15:38:35.22ID:8jr05iQT
もしかしてDartって若干伸びてきてる?
2021/04/26(月) 08:02:24.55ID:xaTdJ+wC
Youtubeよりも5chで荒らしとして有名になってる件
2021/04/26(月) 10:52:47.24ID:vu3N8V9m
denoというかwasmがくるよ
2021/04/27(火) 01:13:44.64ID:ybAp8EWh
ということはRustが来るのか
2021/04/28(水) 11:37:01.99ID:3EuQZ3Ew
実際にプロジェクトで使ったことない人には定評あるね
2021/04/28(水) 12:18:47.51ID:Gm/vyyE5
インフラとか組込とかミスの許されない/修正リリースできない現場は
形式証明機能のある言語を実際に使うとか聞いたで
F*だかidrisだか忘れたけど
ググったらRustでもCHCソルバでプログラム検証しまーすとか普通にでてくるし
クリティカルなとこではちゃんと使われてんじゃないかい
2021/04/28(水) 13:26:23.31ID:GFgIUmSe
大規模開発で使うっていう都市伝説が検証されるだけで一歩前進か
2021/04/28(水) 16:26:28.05ID:3EuQZ3Ew
そんなとこで使われてるわけねーだろ。。
その手の証明ツールを使ったことあればわかるがテストコード書く方がまだまともなアプローチだわ。
実際に使われてるのは不確定性をうまく論理化してプロトコル検証をするって使い道はある。
そう言う使われ方は分散アルゴリズム周りでは少しやってるとこもあるがほんの一部だわな。
2021/04/28(水) 16:31:19.72ID:yDqZolk/
組込みRustという本がちょうどこの前出たぞ
784デフォルトの名無しさん
垢版 |
2021/04/28(水) 21:17:46.00ID:85tuN82O
意図もわからずなんとなく動くからそのメソッドを使い、借用をつければなんとなく動くから 借用し、
変更する予定はないけどmutし、ここはエラーだからとpanic!し、補足するなと言われているのに
catch_unwind/recoverして、血の涙で泣きながら渡されたソースをシコシコ直すおまいら・・・
rustのどこが良いか全然わからない
2021/04/28(水) 23:38:51.58ID:2VQTxO/e
マルチするな
2021/04/29(木) 07:18:17.94ID:KLHt34b8
ちょっと改変すればどの言語にも適用できそう
というかそういう元ネタあんのかな?
2021/04/29(木) 10:33:36.01ID:tR6uAqfq
補足?足なんて飾りです!偉い人にはそれがわからんのです!

早くモデル検査が当たり前になぁれ!
2021/04/29(木) 12:41:21.56ID:JBnzphH4
>>781
大規模開発ってプロジェクト人数が多そうだし精鋭にはならんだろうから寧ろ不向きだろうって直観的に思う
2021/04/29(木) 12:43:37.33ID:JBnzphH4
>>783
この前それ立ち読みしたけど去年秀和から出た実践〜の8章理解しとけば十分な気がした
2021/04/29(木) 14:27:34.72ID:earX3YoR
>>786
>ちょっと改変すればどの言語にも適用できそう
ほぼこれが主張だぞ。
2021/04/29(木) 15:23:01.97ID:bEP8m5yM
落ちないからヨシ!
2021/04/29(木) 22:26:54.16ID:3tiS91aO
検査で「偽陰性」になったソースを渡されたら血の涙で泣く
ということは
血の涙が出たら陽性、という検査を追加すればいいんだろ
793デフォルトの名無しさん
垢版 |
2021/04/30(金) 16:54:11.94ID:U7XnfxJa
個人的には
どの次世代言語がいいかじゃなくて
次世代言語にはどんな言語機能を備えていてほしいかで語ってほしい
2021/04/30(金) 17:05:12.65ID:8uDUVNfy
いうほど必要な機能なんてない。
ここ50年の結論はバカは何使ってもバカということだろう。
2021/04/30(金) 17:34:44.55ID:8aEpEI3N
用途によって欲しい機能が違うんだからすべてを満たす言語が出来るはずがない。
796デフォルトの名無しさん
垢版 |
2021/04/30(金) 18:12:44.65ID:U7XnfxJa
macroとか型クラスとかあるやろ具体的には
2021/04/30(金) 18:16:43.42ID:TuBhqj3T
ようとに応じた欲しい機能すべて実装すりゃいいだけだろw
2021/04/30(金) 20:12:42.07ID:19g7m0Bn
「二刀流はズル」という価値観を捨てれば矛盾する機能でも両方実装できる
2021/05/01(土) 19:29:31.85ID:wiEZYnrW
結局必要なところはcで書いてバインディングできるような言語設計をほとんどの言語が行なっている。
それが答えだろ
2021/05/01(土) 21:16:05.18ID:0VFft9ft
いや、違うと思う
2021/05/02(日) 16:15:43.74ID:F4olHNfs
レガシーコードとの連携のためとかいいわけしながら
結局ユーザー2層構造が暗黙の仕様になってるような
2021/05/03(月) 23:13:29.51ID:AyvebyYK
ちなみにおまいら具体的にはどの言語に手を出した事あるの?
803デフォルトの名無しさん
垢版 |
2021/05/03(月) 23:22:14.10ID:N/p1rn3A
Java,C,VB.NET,C#,F#,Haskell,Elm,Rust,Idris2

F#とIdrisがすこ
2021/05/05(水) 04:20:34.48ID:roWASgUj
どっちも流行ってないね
お前の逆を行くと良さそう
2021/05/05(水) 11:02:40.08ID:1EwqoC8k
最近あんまGoって聞かなくなったけど使われてるとこでは使われてるの?
■ このスレッドは過去ログ倉庫に格納されています