ぶっちゃけ始めるのにいい言語て何 part5

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2021/06/04(金) 09:25:30.26ID:nHzCWsfU
前スレ

ぶっちゃけ始めるのにいい言語て何 part4
https://mevius.5ch.net/test/read.cgi/tech/1615612545/
634デフォルトの名無しさん
垢版 |
2021/07/28(水) 14:16:41.00ID:+/qzTzZw
>>633
GAFAMでもC++を捨ててRustへの流れ
C++はメンテ要員の仕事になっていく
2021/07/28(水) 14:27:17.13ID:WXztrMah
それは要領良く書く言語としてであって
C/C++しらないでRust書くとか止めてほしい
2021/07/28(水) 14:42:28.06ID:yXqWu11l
だったら、ずぅーっとC/C++で良いじゃないかって思うけど。
みんな違う言語創りたがるから面倒くさいね。
637デフォルトの名無しさん
垢版 |
2021/07/28(水) 14:52:07.93ID:Zb5hS091
>>22
> つまりEmacs最高ということか…
emacs はエディタの名前であって言語の名前ではない。
「TECO」(テキスト・エディタ・コンパイラ)と呼ぼう。
638デフォルトの名無しさん
垢版 |
2021/07/28(水) 15:03:09.18ID:Zb5hS091
>>636
基本的には C でいいと思うんだが、
私のような年寄りはハードウェアべったり
(「あれはコンパイラ言語ではなくて、超高級マクロアセンブラだ」
という人もいる)の言語は、正直体力的にしんどいのですよ。
C++ というのは、C++のコード ⇒ プリプロセッサで処理した
C のコード ⇒ マクロアセンブラのコード ⇒ オブジェクトコードと
いった形になっていて、しかもそれをリンカで統合しようと思ったら
ジェネミスでコケたりする。「三重に皮を被せていて、気持ちよくも
なければ安全でもない」という点からいうと、「Pascal → BCPL →
C → Java」あたりが順当だとは思うのだけれども、それは
「古いパラダイムであり、(現在の)電算業界で戦力になる」という
コンセプトでしかないので、他のアプローチがあっていいと思う。
2021/07/28(水) 15:42:04.82ID:yXqWu11l
>>638
ありがとう。といっても自分理解しているか自信がないけど。
Cにライブラリを足していけば何でも出来るかもしれないけど、
言語の構造そのものにテコ入れした方が、より効率的なこともあるってことか。
640デフォルトの名無しさん
垢版 |
2021/07/28(水) 17:52:10.99ID:zh3fVAA3
>>638
そこで、Rustですよ
現代的な言語で洗練されて書きやすく
それでいてC/C++と同等に速くネイティブにCGなく動き
C/C++と違ってメモリ操作ミスでの穴も生じない言語がRust
641デフォルトの名無しさん
垢版 |
2021/07/28(水) 18:55:33.17ID:blbSRE94
あわしろ氏によると、C/C++はCOBOLのようになるという事です。
2021/07/28(水) 21:50:17.45ID:sjXgCFRV
CやC++は悪い言語ではないとは思うけど、初心者がいきなりやるとコケる人が続出する気がする。
ちょっとやそっとやったくらいではいざ誰かが作ったコードの改修作業とかかなりの無理ゲーになると思う。

そう考えるとVBA、ベンダーロックインが嫌ならPythonやせいぜいC#くらいにとどめておいた方がいいような気がするよ。
643デフォルトの名無しさん
垢版 |
2021/07/29(木) 07:53:31.70ID:MmWaza2b
Facebook、開発言語に「Rust」採用 次期ビルドシステムの開発で
https://www.itmedia.co.jp/news/articles/2107/28/news152.html

Rustを用いることで、どのような利点があるのか。Facebookは記事の中で次の4つの項目を挙げています。

@Rustのasync/awaitシンタックスは、非同期のコードをとてもスムーズに記述できますし、Rustは複雑な並行処理の詳細を正しく理解するのに役立ちます。
BuckのJavaの計算を一つ一つ並行処理に移行するのは数カ月に及ぶ困難な作業でしたし、シングルスレッドの大きなボトルネックがまだ存在しています。

ARustには、開発をより簡単で楽しいものにしてくれる多くの高レベルな言語機能があります。
それらはenum、パターンマッチング、trait、手続き型マクロなどで、Rustの開発者の多くに愛されています。

BRust はメモリの割り当てをより細かく制御することができます。
ガベージコレクションのある言語では、たとえジェネレーショナルコレクションであっても、Buckが行うようなインクリメンタルな演算に対応するのは困難です。

CRustは高性能です。
Rustに移植することで劇的な性能向上を私たちは見てきました。
2021/07/29(木) 10:11:34.29ID:HW2V5ppO
高機能、高速などの言語としての特長が必ずしも始めるのに最適にはつながらない
2021/07/29(木) 10:28:30.59ID:S3gddm5/
まあでも始めるなら、WEB界隈のデファクトスタンダード化してる
JavaScript 系列か Rust に収束していきそうだな。
2021/07/29(木) 10:32:26.85ID:/zE09WOd
プログラミングって話題になってるし何か楽しそうってだけなら
PythonかRubyでいいんじゃないかと思う
Scratchも楽しそうだった
647デフォルトの名無しさん
垢版 |
2021/07/29(木) 12:06:43.59ID:jm6Q/a7y
小学生が憧れるプログラマ第1位があわしろ氏だったな
2021/07/29(木) 16:28:06.24ID:mTab7dlX
どのレスとは言わんが荒らし必死過ぎw
2021/07/29(木) 17:59:57.61ID:6tQJHR0m
個人的にリッチな型チェックがある言語の方が楽しさは上かな
扱い易いかどうかは別として
650デフォルトの名無しさん
垢版 |
2021/07/29(木) 18:03:26.73ID:KDMSOfUO
>>643
GoogleもMicrosoftもAmazonもRustと言ってるし
これからのプログラミング言語で最強はRustで確定のようだな
651デフォルトの名無しさん
垢版 |
2021/07/29(木) 19:37:31.23ID:2QmJme0a
第二位もあわしろ氏です。
652デフォルトの名無しさん
垢版 |
2021/07/30(金) 00:04:07.73ID:T4chNKrF
年寄りの繰り言になるが、仕事で使うんなら
・静的かつ厳密な型チェックがあること
・動的なメモリ管理機能があること
・変数スコープが明示的かつ閉じていること
・大域脱出を含めて、構造的な制禦構造が揃っていること
だと思うけれど、それが「初心者向け」かどうかはわからんなぁ。
いっそ仮想マシンのアセンブラ(あるいはプログラマブル電卓)から
入るのも手かもしれないし。
「そもそも論」になっちゃうけど、
小学生と中学生と大学生と現役社会人と定年後の人とでは、
違う言語でいいと思うわけですよ。
LISP と Prolog と FORTH と Pascal とかいった選択枝は
あっていいし。
「この言語でこの課題を実装するとこうなります」というのを
並べて、「あ、この言語はわかりやすい」「この言語でこれは
ないだろ」みたいなところから、「自分に向いている言語」を
選ぶというのはあるかもしれん。
つーても、手軽に利用できる処理系があるかどうか、という話が
あるわけだが。
653デフォルトの名無しさん
垢版 |
2021/07/30(金) 00:17:59.03ID:xBaIyo+s
>>652
大域脱出なんて考えが古い
GoやRustなど最近流行りの言語には大域脱出は無い
654デフォルトの名無しさん
垢版 |
2021/07/30(金) 00:39:28.63ID:T4chNKrF
>>653
> 大域脱出なんて考えが古い
> GoやRustなど最近流行りの言語には大域脱出は無い
そうなのか。
複数階層の底のほうから抜けるとか、
再帰呼び出しの底から抜けるとかいったら、
いちいち値を返しつつ遡っていくのか?
そんな煩雑なコードを書かなきゃいけない言語が、
初心者向けとは思えないんだが。
「途中で保存していた値を全部吹っ飛ばして戻る」という
C の longjump は乱暴ではあるとは思うが、
LISP の時代から Java にも引き継がれている
キャッチ&スローも使えないのか?
2021/07/30(金) 02:41:59.95ID:7zteHaY0
あるYoutuberがRustはGoに勝てないって言ってたが
ここや世界の評価は違うみたいだね
656デフォルトの名無しさん
垢版 |
2021/07/30(金) 05:05:16.72ID:MBINGgfb
>>654
それは貴方が本質を見失っています。
try/throw/catchといった大域脱出の機構を持たなくても、
複数階層の底から多段に意識せず自動的に抜けることが出来ればどうですか?
そしてそれら途中階層でいちいち煩雑なコードを書かなくて済むとしたらどうですか?
そして多段呼び出しでも再帰呼び出しでも多段メソッドチェーンでも使えればどうですか?
これで貴方が挙げた目的を満たしていますよね。

Rustはtry/throw/catchといった特殊な機構を用いずにそれらを実現してしまったのです。
そのためもちろんRustのメモリ安全性も満たしたまま使えます。
実際のRustのプログラミングでも記述は簡素で美しく、コードが1文字増えるだけです。
これらを理解すれば貴方もきっと感動すると思います。
2021/07/30(金) 10:30:43.93ID:ZEyOs6kv
gafamで使われてるものはメジャーになる
2021/07/30(金) 10:52:17.12ID:6IY+PAJY
Google : C++、JavaScript
Amazon : Java、C++
Facebook : PHP、C++
Apple : ObjC
Microsoft : C++、C#
AppleのObjCやMSのC#を除けば、現実には単にメジャーで無難な言語を選んでいる
659576
垢版 |
2021/07/30(金) 11:31:49.66ID:n/UloM9p
YouTube で有名な、雑食系エンジニア・KENTA が結論を出している

未経験者の転職に必要な、勉強の順番は、Ruby → Go。
これがバックエンドの唯一の時給1万円コース

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

他のバックエンド、Node.js, Django も流行らなかった。
PHP は、一生やる必要がない
660デフォルトの名無しさん
垢版 |
2021/07/30(金) 11:41:19.16ID:fTrLmnNE
>>658
その言語の列挙は意味不明すぎる
例えば今話しが出ている言語Rustも
AmazonもMicrosoftもGoogleもFacebookも使っていますよ
2021/07/30(金) 11:49:55.47ID:2RWmbXMi
>>660
使っている、というだけなら俺が所属する某超有名企業はF#使ってるぞ
ゴミみたいな小物に俺が勝手に使ったことがあるだけだけどな
そらGAFAMくらいの規模なら、使っていない言語なんか無いだろうさ
662デフォルトの名無しさん
垢版 |
2021/07/30(金) 12:08:02.69ID:DLD/M4oB
アマゾンAWS、プログラミング言語「Rust」を重視する理由示す
https://japan.zdnet.com/article/35163089/

AWS(Amazon Web Services)はRustにスポンサーシップを提供するだけでなく、自社の雇用力も活用することでRustをサポートしている。
AWSは先頃、Rustと「Tokio」(Rustで非同期アプリケーションを書くためのランタイム)のコントリビューターの雇用を開始している。
同社の長期的な計画をサポートするために、RustおよびTokioのチームを構築しているという。

AWSのオープンソース戦略担当エグゼクティブMatt Asay氏は、
「われわれはRustに依存しているので、Javaやそのほかの基盤となるテクノロジーと同じように、
Rustについても社内に深い専門知識が必要だ」と述べた。

AWSのシニアソフトウェアエンジニアリングマネージャーShane Miller氏は,
「Rustは当社の長期的な戦略の重要な要素であり、Amazonのスケールで
Rustのエンジニアリングを提供するために投資している。
これには、開発者ツールやインフラストラクチャーコンポーネント、相互運用性、検証が含まれる」と説明している。

そして同社はソフトウェア開発やハードウェア開発、サポートエンジニアリング、
システムおよびセキュリティエンジニアなど、Rustに関連する求人約120名を募集している。
663576
垢版 |
2021/07/30(金) 13:07:33.08ID:n/UloM9p
AWS CloudFormation では、
Ruby 製のChef, Itamae(Cookpad 製), Kumogata2 なども使える

Ruby製のVagrant の作者・Mitchell Hashimoto が作った会社・HashiCorp では、
Go 製のTerraform を使う

Vagrantを作っていた学生が、今や、Goで会社の時価総額・5千億円!
今世紀最大の起業家
664デフォルトの名無しさん
垢版 |
2021/07/30(金) 15:04:54.06ID:T4chNKrF
>>656
> それは貴方が本質を見失っています。
> try/throw/catchといった大域脱出の機構を持たなくても、
> 複数階層の底から多段に意識せず自動的に抜けることが出来ればどうですか?
> そしてそれら途中階層でいちいち煩雑なコードを書かなくて済むとしたら
> どうですか?
> そして多段呼び出しでも再帰呼び出しでも多段メソッドチェーンでも使えればどうですか?
> これで貴方が挙げた目的を満たしていますよね。
だったらコードを晒せ。
「Java だとこうだ」「だけど Rust ではこうなっているので、こういうふうに
書ける」とかいった具体例を示さないと、
どっかの宗教団体と変わらないと思うがどうか。
665デフォルトの名無しさん
垢版 |
2021/07/30(金) 15:48:23.83ID:uPYxkoD+
つまりGAFAMなど大手IT企業たちは宗教「Rust」の信者だというのかね?

プログラミング言語「Rust」のための「Rust Foundation」設立--AWS、Microsoft、Google、Mozilla、Huaweiが創設
https://japan.zdnet.com/article/35166267/

Facebookが「Rust Foundation」に参加
https://japan.zdnet.com/article/35170192/
666デフォルトの名無しさん
垢版 |
2021/07/30(金) 17:28:50.28ID:eb7jkj0S
>>664
あなたは>>652の書き込みから拝見すると今まで色々な言語をやってきているようですが
なぜRustだけ知らないのでしょう?知ろうとしないのでしょう?
何か宗教的なタブーでもあるのでしょうか?
667デフォルトの名無しさん
垢版 |
2021/07/30(金) 17:48:48.67ID:lq+jXo7M
あわしろ氏は このスレいつまで続けてもループにしかならないと言っている
668デフォルトの名無しさん
垢版 |
2021/07/30(金) 18:10:20.88ID:T4chNKrF
>>666
Rust 指定の仕事が入ってくれば吝かではないが、
金も払わん奴にどうこう言われたくないな。
あんたが Rust プログラマとして飯を食ってるなら、
勝手にやってくれ。
ただ、それは「ぶっちゃけ始めるのにいい言語て何」という
スレの趣旨とはなんの関係もない。
「いま、うちの現場で C++ のコードが書ける奴がいないから、
初心者でもいいから頭数を揃えろ」とか言ってる派遣業者と
どこが違うのか言ってくれ。
2021/07/30(金) 18:17:03.99ID:MMQ9ydPn
あっわーの他に神はなし
670デフォルトの名無しさん
垢版 |
2021/07/30(金) 18:22:08.19ID:LWgAHLQH
>>667
あわしろ氏じゃなくても、そのくらいわかります。
671デフォルトの名無しさん
垢版 |
2021/07/30(金) 18:24:29.37ID:LWgAHLQH
>>668
とはいえ、あわしろ氏はRustもお勧めの言語だと言ってますけどね。
Cはともかく、C++は完全にオワコンという事です。
672デフォルトの名無しさん
垢版 |
2021/07/30(金) 18:26:23.18ID:LWgAHLQH
システム開発の世界では、C/C++ではなく、C/Rustという呼び方が普通になってるそうですよ。
そういう意味でRustもお勧めに入れてるようです。
673デフォルトの名無しさん
垢版 |
2021/07/30(金) 18:35:00.07ID:iZ3/zCwn
>>668
つまり君はPrologの仕事やFORTHの仕事をしているから>>652でそれらを挙げたわけだ。
それとも仕事したことないのに知ったかぶり?
674デフォルトの名無しさん
垢版 |
2021/07/30(金) 19:15:09.98ID:T4chNKrF
>>673
中島秀之さんが、「Prolog は、ホーン節の論理を抜きにしても面白い」というので、
共立出版から出ていた『bit』の Micro Prolog の記事を参考に
処理系から作ってみたが、文字列のパターンマッチングが強力でないのと
カット・オペレータの使いどころがわからなかったので、
自前の言語を再設計して使った。
FORTH も自前の(数値計算用の)言語処理系が必要になったので、
仮想マシンとして FORTH インタプリタもどきを作って使った。
あとは教育用に C のインタプリタとかも作ったことがあったが、
ヘッダのインクルードをサポートしていなかったので、
「これなら BCPL でいいんじゃね?」と思った。
言語はいちど作ってみると面白いぞ。
2021/07/30(金) 21:03:26.78ID:7godXkxk
Cのインタプリタ動作は高度だね
実際のところは全ソースなめてからVM動作?
676デフォルトの名無しさん
垢版 |
2021/07/30(金) 21:33:00.97ID:iXl+opK0
Goから始めてええんか?
677Mb
垢版 |
2021/07/30(金) 21:34:03.39ID:T4chNKrF
>>675
そんな高度なことはしていない。
C 言語は「超高級マクロアセンブラ」と云われていたので、
ループを含めた制禦系の構造化ステートメントの実装は
めんどくさかったが、基本はアセンブラそのまんまだった。
for 文に関しては、『やさしいコンパイラの作りかた』という
本があって、「そっちの方が波瀾に富んで面白い」というので
それに倣った。
基本的には、『BCPL ― 言語とそのコンパイラ』と
『やさしいコンパイラの作りかた』を丸パクリしただけ。
678Mb
垢版 |
2021/07/30(金) 21:47:43.54ID:T4chNKrF
スレの主旨からは大幅にズレるが、
中西正和・大野義夫『やさしいコンパイラの作り方』(共立出版。一九八〇)と、
ハリー・カッツァン/池野信一『FORTH への招待』(近代科学社。一九八二)
くらい読んでおくと、「初心者向け/教育用の言語」とかは
「おれはこう思う」で作れると思う。
つーても、「オレはこれがいい!」というのと、「それが、プログラミングの
入口として実効的なのか?」というのはまるっきり別なのだが。
679デフォルトの名無しさん
垢版 |
2021/07/30(金) 22:51:45.09ID:phF/6+UW
>>674
カットオペレータがわからんだと?
Prologはバックトラックが効率悪いので早めに枝切り指定するだけだぜ
FORTHは逆ポーランドのスタックマシンのおもちゃだがいつ頃やったんだ?
どちらも昭和の頃やったっきりだぞ
それならコンパイラ作りもyaccといったところか

それでいてRustやGoなどを理解できないのは新しいことについていけないだけじゃないかね
Java止まりの土方と予想
2021/07/30(金) 22:58:13.20ID:yiMKvLWE
Javaをディスるのは止めろ
681デフォルトの名無しさん
垢版 |
2021/07/30(金) 23:19:14.68ID:XDQb7qZb
Javaは明らかに衰退言語だから、
Javaで時間が止まっている人はIT土方だけでしょう。
682Mb
垢版 |
2021/07/30(金) 23:52:09.82ID:T4chNKrF
>>678
> それならコンパイラ作りもyaccといったところか
「yacc」というのは「いまさらコンパイラ・コンパイラかよ(笑)」
っていうところから命名されている、とかいった話から
始めたほうがいいのか? ジジイの繰り言は長くなるぞ?
683Mb
垢版 |
2021/07/31(土) 00:08:02.23ID:HS2AjqTr
>>679
> カットオペレータがわからんだと?
> Prologはバックトラックが効率悪いので早めに枝切り指定するだけだぜ
「バックトラッキング」というコンセプトそのものが、スタックとか
ヒープとかいった「メモリ・リソースが貧しい」
「CPU の間接 JUMP が遅い」という貧乏性から来た発想なんだよ。
いまどきはリソースをじゃぶじゃぶ使って人間が楽をしようとするのが
トレンドであって、Rust なんかもその方向性だと思う。
とはいえノイマン型のコンピュータ・アーキテクチャについて
無知であっても困るので、「始めるのにいい言語」という意味なら、
ALGOL 系の言語は押さえておいて(現状においては)損はないと思う。
並列協調コンピューティングが一般化するのは、かなり先の
話だろうから。
684デフォルトの名無しさん
垢版 |
2021/07/31(土) 00:17:19.79ID:Pf+7Sam4
先日友人に「競馬の予想のプログラム作ってくれよー」
と言われたんですけど、実際そういうのって作れたりするんですか?

別のプログラムやったことある友人に聞いたら「馬とかジョッキーとかのバイオリズムが〜」とかで難しいと言われまして。

自分自身プログラムに興味がありますが未経験です。

もし難しい様でしたら友人を説得する為にも理由も合わせてお答え頂けると幸いです。 夜分遅くに失礼しました。
685Mb
垢版 |
2021/07/31(土) 00:46:55.68ID:HS2AjqTr
>>684
昔、『一馬』という競馬新聞の依頼で、競走馬の血統のデータベースを
作ったことがあったが、基本的に「強い馬の子供は強い」という
相関がある。ただ、サラブレッドというのは遡ると四頭くらいの
馬になっちゃうので、アラブ馬とかけ戻したりもしているらしい。
ただ、競馬というのは「人間の思惑」というのがあるので、
たとえば「枠連で同枠だと穴が出る」という話がある。
だから、「5-5」とかでオッズが低いときに拾っておくと
プラスになったりする(つーても電車賃も出ない程度の儲けだが)。
そんなわけで、メインレースは外しまくりだが、「馬券を
買う奴が何に期待しているのか」と、「実際にどの馬が勝つのか」
という間隙を衝く、という意味では、競馬とか相場とかで
利益は出るかもしれない。
だけど、種銭(たねせん)は要るわ面白くないわで、けっきょく
相場を安定させることにしか貢献していない。
> 先日友人に「競馬の予想のプログラム作ってくれよー」
> と言われたんですけど、
友人には、「まず地道に種銭を稼げ」「公営のギャンブルやパチンコで
稼ぐのは無理筋だ。『どこに張るか』という目を養え」と
助言してあげよう。ディーラー(胴元)を潰せるのは、
「ラス・ベガスで自閉症者がブラックジャックをするとき」だけだ
(読み筋は、映画『レインマン』)。
686デフォルトの名無しさん
垢版 |
2021/07/31(土) 01:47:36.91ID:6lvWv0/o
>>685
あなたは勝つ馬を知りたいのではなく、儲かる馬を知りたいのではないですか?
勝敗をデータベース化するのではなく、利益のプラスマイナスをデータベース化するべきなのです。
って、あわしろ氏が言ってたよ。
687Mb
垢版 |
2021/07/31(土) 02:19:19.80ID:HS2AjqTr
>>686
> あなたは勝つ馬を知りたいのではなく、儲かる馬を知りたいのではないですか?
だったら中央競馬会に就職してるよ www
688Mb
垢版 |
2021/07/31(土) 02:29:38.39ID:HS2AjqTr
そういえば、スレタイの「ぶっちゃけ始めるのにいい言語て何」という話が
どっかに行っちゃってるんだが、「LOGO」なんかは
タートルグラフィックスとかいったフィードバックがあるので
小学生あたりには好適かもしれない。
高校生で理数系とかだったら、数値計算系の言語が向いているかも
しれない。
問題は中学生だよなぁ。画像系とかじゃダメかな?
689デフォルトの名無しさん
垢版 |
2021/07/31(土) 02:40:10.97ID:6T35aOGu
>>683
>いまどきはリソースをじゃぶじゃぶ使って人間が楽をしようとするのが
>トレンドであって、Rust なんかもその方向性だと思う。

Rustを知らないと言いつつ、なぜそんな嘘をつくのですか?
Rustはリソースをきちんと管理する側の言語てすよ。
もちろん安全性のために僅かなリソースを余分に使う場合もありえますが、じゃぶじゃぶ使うことはありません。
他の言語と勘違いをしていますね。
2021/07/31(土) 04:10:48.58ID:+f9FsYMh
>>688
俺は環境構築が簡単で、ネットに情報が多い言語がおすすめだな
何かひとつインストールするだけで、エディタやデバッガなど開発に必要な機能が全てそろう
加えて、雛形を用意してくれて、アプリを実行するだけなら1行もコードを書かなくてすむ機能がある
WindowsならC#、macならswiftかな

ぶっちゃけ、言語をひとつマスターすればあとは似たり寄ったりだから他の言語の習得も早いしね
691デフォルトの名無しさん
垢版 |
2021/07/31(土) 04:40:50.03ID:0/nflKO9
全てのプログラムは、実行中にコンピュータのメモリの使用方法を管理する必要があります。
プログラムが動作するにつれて、 定期的に使用されていないメモリを検索するガベージコレクションを持つ言語もありますが、
他の言語では、 プログラマが明示的にメモリを確保したり、解放したりしなければなりません。

Rustでは第3の選択肢を取っています:
メモリは、コンパイラがコンパイル時にチェックする一定の規則とともに所有権システムを通じて管理されています。
どの所有権機能も、実行中にプログラムの動作を遅くすることはありません。
RustはC/C++のように高速でありながらメモリ安全性を保証します。
そのため大手IT企業を中心に多くのIT企業がRustを採用しています。
2021/07/31(土) 06:55:18.27ID:qR2a/VF5
>>690
そうだね。
その上基本ブックファイルひとつで管理出来るVBAは最強だね。

>>691
第3の選択肢なんだ。なら参照カウンタを見てObjectを開放する単純な作りのVBAは第いくつ目の選択肢なんだろうね。
693デフォルトの名無しさん
垢版 |
2021/07/31(土) 07:20:42.41ID:wn1A9TeM
>>692
C/C++/Rustはネイティブにコンパイルされる最高速言語
VBAはその土俵の上にすら乗っていない
2021/07/31(土) 07:34:17.13ID:+f9FsYMh
>>693
それが始めるのにいい言語の理由にはならんだろ
2021/07/31(土) 07:40:30.40ID:qR2a/VF5
>>693
で、そのネイティブコードに変換されるから初心者にどういいの?

後 C/C++なみに早いって言ってたよね。
CやC++が速いと言って誰も否定しないのはインラインアセンブラが使えることもあるからなんだよ。
CやC++のコンパイラは結構お利口さんでね、ILの時点で人が手書きしたのとほぼ遜色ないレベルのものが出来上がるんだよ。
それでも更に極めたい人はそこを自前で書くことが出来るわけ。つまりよりアセンブラに近い形というよりその気になればアセンブラで書けるのよ。

そうでなければC#とかだってコンパイラはお利口さんだから速いのよ。それともRustとやらはインラインアセンブラが使えるの?
無理だよねぇ、セーフティーに拘ってるみたいだもんねぇ。

何を持ってC/C++なみの速さと言ったの?
2021/07/31(土) 07:58:34.49ID:+f9FsYMh
RustもVisual Studioのテンプレートに入るようになればおすすめになるかも
そうなればネット上の情報も増えるだろうしね

個人的には、あと数年でそうなると思う
697デフォルトの名無しさん
垢版 |
2021/07/31(土) 08:20:46.65ID:JcugyhaW
>>695
Rustはもちろんインラインアセンブラに対応していてRustとアセンブラを融合して使えるよ。
あと組み込みシステムもRustがよく使われている分野の一つであるし、自作OSやブートローダーなどもRustで書かれることが増えてきたね。
2021/07/31(土) 08:26:34.56ID:qR2a/VF5
>>697
へぇ、それならいいかも知れないね。
納得。ちょっと煽るようなこと書いて悪かったわ。
699デフォルトの名無しさん
垢版 |
2021/07/31(土) 09:23:09.06ID:T3R+79rO
RustがIT企業全方位から人気の理由
@C/C++と同じネイティブ最高速で全分野で置き換え可能
Aコンパイルが通った時点でメモリ安全保証 (メモリ管理ランタイムGC不要)
B現代的言語の主要パラダイムを取り入れ洗練されておりプログラム記述性能も優れており便利快適
2021/07/31(土) 09:25:16.16ID:CRPGt1nw
>>681
今のところJavaに取って代わるほどの言語は出てきてないがな
どれもぱっと見だけ良くて中身は薄っぺらい
701デフォルトの名無しさん
垢版 |
2021/07/31(土) 09:51:47.10ID:1X2sFFKC
>>700
次々とJavaはRustに侵略されてますよ
例えばAmazonは従来Javaで書いていたものをRustへ転換しつつありますし >>662記事
FacebookではJavaで書いていた基幹部分BuckをRust製へ置き換えです >>643記事
2021/07/31(土) 11:51:52.43ID:CRPGt1nw
>>701
じゃあなんでその言語は検索上位ランキングに入ってこないの?
もっともPythonみたいに上位でも浸透してない言語もあるから
あてにならないけど
2021/07/31(土) 13:02:56.24ID:Z1doObbh
検索上位ランキング??
2021/07/31(土) 15:01:42.80ID:ppcaATI2
Rustって5年間一番愛されてる言語だとか
週末最も使われてる言語で1位だよね?

学習コストが高いから初心者が覚えるってなると相当覚悟がいるが
将来性あるし本気でエンジニア目指すなら初学者が覚えるのはありだと思うがなあ
705Mb
垢版 |
2021/07/31(土) 16:09:59.80ID:HS2AjqTr
>>689
いまやバッチ処理というのは気象予測みたいな大規模計算とかで
なければ遣いどころがないので、だいたいリアルタイム処理だろう。
現在のコンピュータ環境だと、人間というのは、プロセッサから見れば
めちゃくちゃノロマなんだよ。人間がキーボード叩いている合間に、
他の仕事ができるじゃん?
だけど仕事がなかったら、プロセッサは空回りしてるだけじゃん。
「本業が疎かにならなければ、マイニングとかの副業可」でいいと
思うんだがどうだろう。
706デフォルトの名無しさん
垢版 |
2021/07/31(土) 16:10:25.39ID:rjmWbnmT
>>702
Rustが新しい言語だからですよ
現在の形に安定したバージョン1.0が2015年
そして>>643でFacebookも絶賛しているゼロコスト非同期機構async/awaitが入ったのが2019年
これらと実利用実績でRustが史上最強言語の立ち位置であると皆が認めざるをえないところとなり
大手IT企業たちがこぞって一致団結して>>665のようにRust Foundationを立ち上げたのが今年2021年
707Mb
垢版 |
2021/07/31(土) 16:14:48.81ID:HS2AjqTr
>>690
> WindowsならC#、macならswiftかな
C# も swift も嫌いだが、基本的な
方向性については禿同。
708Mb
垢版 |
2021/07/31(土) 16:32:45.12ID:HS2AjqTr
「ネイティブコードで動く」というのが嘘臭い。
とりあえず仮想マシンを規格化しておいて、
「Xen microengine」みたいなチップ上で動かすとか
そういう構想があるんならぶち上げりゃいいわけで、
MS とインテルのやることに乗っかる馬鹿は相手にしたくない。
「ネイティブコンパイラ」と言うのなら、
「どんなチップのコードなのか?」を明らかにして、
インストラクション・セット・サマリを公開するところから
始めてほしい。。
709デフォルトの名無しさん
垢版 |
2021/07/31(土) 17:10:00.83ID:TngKn1r8
>>708
あなたはコンパイラを作ったと言っておきながら、LLVMすら知らない無知情弱であることがバレましたね。
710Mb
垢版 |
2021/07/31(土) 17:25:12.34ID:HS2AjqTr
>>709
低水準の仮想機械を最適化したってだけの話だろ?
それと「始めるのにいい言語」の間になんの関係があるかという
話だ。
Pascal でも FORTH でも Modula-2 でもいいじゃないか。
学びたい人に合った言語があるかどうかの話であって、
現在のようなパソコンのリソースが余ってる時代だったら、
プログラミング初心者がどれだけリソースを無駄遣いしようが、
たいした話じゃないだろう。
どうせ自分のマシンなんだから、マシンの前で一時間結果待ちしようが
一週間待とうが、それは自己責任だと思うが。
2021/07/31(土) 17:53:45.38ID:0fGp0Lj/
話し相手のいないおじさん2人の宴w
2021/07/31(土) 17:59:38.38ID:eNkLLY3r
悲しいw
713デフォルトの名無しさん
垢版 |
2021/07/31(土) 18:27:59.22ID:epRldLCW
>>708
考えが時代遅れ
今は各言語と各アーキテクチャに対してm:n組のコンパイラをm×n個作るのではなく
各言語や各アーキテクチャから独立した仮想機械向け中間コードを経由する
すなわち各言語⇔中間コード⇔各アーキテクチャでm+n個で済む
714デフォルトの名無しさん
垢版 |
2021/07/31(土) 18:57:02.41ID:QOT5ODzd
あわしろ氏もRustを薦めていますが、一番がHaskellなのは変わりませんよ。
不変の一位です。
プログラミングの数学的アプローチだからです。
2021/07/31(土) 19:51:09.66ID:NV5lX/1w
ネイティブかどうかより、ライブラリを起動させるだけのプログラミングなら、
RustでもC#やJava、Pythonでも、どうでもいいような気がする。
内容によってはif文すら書かずに済んだりするからね。
716デフォルトの名無しさん
垢版 |
2021/07/31(土) 21:38:29.29ID:ioKlTd1z
>>700
Javaの今後はかなり厳しいと思う。
例えば>>699の3点全てにおいてJavaが完敗。
2021/07/31(土) 21:48:19.81ID:UBWWn47x
インラインアセンブラで全部書くような例外的な使い方をとりあえず除くと、RustはC/C++より少しだけ遅いと以前に聞いたんだけど、それは今、どうなんだろう? そのちょっとの性能の差が問題になる場面がどの程度あるかはともかくとして。
2021/07/31(土) 22:07:51.47ID:6JTsfxHR
JavaってC#が出てきた2000年あたりから
言語仕様としては既に遅れたものにはっていたはず
それでも生き残っているのはほぼビジネス的な理由
719Mb
垢版 |
2021/07/31(土) 23:18:24.72ID:HS2AjqTr
>>716
>>718
「戦前真っ暗史観」みたいな論調だな。
Java は過去にあった いろんな言語を寄せ集めて
オブジェクト志向に押しこめたような言語なので、
正直古臭いが「とりあえずの踏み台としては盤石」な
言語だと思う。Ada は静的な言語なので
制禦系では強力だったが、そのあたりの縛りがきつかったので
一般には普及しなかった。
とりあえず JVM 上で動くんなら、好きな言語を使えばいいんじゃねぇ?
JVM をネイティブコードに変換するネイティブコンパイラがあって、
最適化がうまくいってりゃ特に不満はないのだが。
720デフォルトの名無しさん
垢版 |
2021/08/01(日) 02:27:32.46ID:5JsCCFZv
>>719
現実>>701を直視しよう!
Javaより圧倒的に良いものが出現したのだ。
2021/08/01(日) 03:27:45.12ID:8X1C7Oi5
でもRust色々面倒くさくてむずいねん
722デフォルトの名無しさん
垢版 |
2021/08/01(日) 05:15:25.90ID:m0xE9FOr
今後はRustを扱えるプログラマーと扱えないJava土方に二分化していく未来が見えますね。
2021/08/01(日) 09:31:10.80ID:Hyr0/2Pd
>>721
Cよりマシですか?
2021/08/01(日) 10:20:04.48ID:LvB37w8j
Prologっていうの練習してるんだけどさ、結構面白い
でもちょっとムズイです
725デフォルトの名無しさん
垢版 |
2021/08/01(日) 11:31:43.90ID:boMMlR1G
そもそもSunのマーケティングが頑張っただけで
Javaの仕様は登場直後から糞認定されてただろ
726デフォルトの名無しさん
垢版 |
2021/08/01(日) 12:54:34.21ID:poI7LMFp
>>725
> Javaの仕様は登場直後から糞認定されてただろ
あれは C の悪い意味の遺産なんだわ。
ポインタはねえのに -- や ++ があるっつーのがどうかしとる。
2021/08/01(日) 15:09:02.73ID:k66Qgf1L
>>690
ならSqueak最強じゃん
728Mb
垢版 |
2021/08/01(日) 16:48:10.23ID:poI7LMFp
>>727
どっちだ? Wikipedia で
> なお、同環境に組み込まれた(Squeak Smalltalkで記述・構築されている)
> タイルスクリプティング言語・開発環境のSqueak Etoysも略して
> 「Squeak」と呼称され混同されることが多いが、
> 両者(Squeak SmalltalkとSqueak Etoys)は
> プログラミング言語およびその処理系としてはまったくの別物である。
とか言われているが。
SmallTalk 80 はいい言語だと思うのだが、
「プロ向けには至れり尽くせり」ではあるのだが、
「始めるのにいい言語」としては「それがあたりまえ」だと
想っちゃうと、低水準言語に遭遇すると対応できるかどうか心配だ。
Java の IDE として有名な Eclips は、もともと OS/2 Warp の
VisualAge C/C++ だったので、
「Java + Eclipse + MySQL + Tomcat + JSP + HTML5 + css2」
とかいったラインナップも悪くないように思うんだが。
729Mb
垢版 |
2021/08/01(日) 17:02:02.87ID:poI7LMFp
中学・高校の数学教師が数値実験をするんなら、
N-BASIC という選択もあるかもしれない、という
話はある。
「Isabel」という数値計算用の多倍長言語(フランス生まれ)も
あるのだがね。
システム・ダイナミクス用の DYNAMO、
英語圏の言語処理系の SNOBOL、
データ処理用の awk や R など、いろいろあっていいわけだし、
「実際に触れる処理系があって、周りに仲間がいる」んなら、
ぶっちゃけ言語はなんでもいいという部分があると思う。
730デフォルトの名無しさん
垢版 |
2021/08/01(日) 17:27:05.61ID:KydKzIui
>>728
おまえは低水準言語の意味すら知らないアホなのか?
2021/08/01(日) 18:15:24.15ID:k66Qgf1L
>>728
SqueakはIDE込みの環境で配布されてますよ
732デフォルトの名無しさん
垢版 |
2021/08/01(日) 20:18:59.75ID:TgXLtAXg
あわしろ氏の教えに従うべき。
2021/08/01(日) 22:24:05.30ID:k66Qgf1L
RubyはSmalltalkの影響を強く受けてる
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。