次世代言語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/03/03(日) 00:31:37.22ID:AftJRPR0
今どきCとか組み込みおじいちゃんか?w
2019/03/03(日) 02:21:33.63ID:cmngH9hR
おじいちゃんかどうかはCのバージョンによるんじゃね
K&Rとかだと何とも言えんが
2019/03/03(日) 02:28:15.76ID:eREWiz41
組み込みとかそのアーキテクチャてCのコンパイラしかないってのなら分かるけど
正直x86とかARMでKernelとか以外の分野でC使うのは多くの場合無駄だな
2019/03/03(日) 02:48:42.82ID:vKWKyL5A
今時100円のチップでもpythonが動く時代だもんな。
BBC が英国の小学生に無料配布しているmicro:bit もmicroPython が基本だし。
日本では2500円位 これでいてARM coretex M マイコンが入ってる。
2019/03/03(日) 06:01:20.35ID:W/IicyBd
nimでええやん
2019/03/03(日) 06:08:54.37ID:E/fs4r7E
自分で処理系を実装しない人はC書かなくてもいいかもね。
2019/03/03(日) 07:54:54.63ID:M9fY+xVL
よう知らんけど、コストとか消費電力の関係でもっとプアな環境なんじゃないかね
1万円の炊飯器と1万2500円の炊飯器なら1万円の炊飯器買うだろうし
2019/03/03(日) 08:27:11.78ID:LWbZmqMl
>>416
処理系とは?
2019/03/03(日) 09:01:42.26ID:E/fs4r7E
CPythonとかJVMとか。
2019/03/03(日) 09:42:44.41ID:lR61Mxqr
自分で実装してんのか
凄えな
2019/03/03(日) 10:16:29.46ID:BbxzBxVK
アルゴリズム実験なんかはやっぱcで書くけどな。
メモリ使用量とランタイム速度の実測について一番素直な結果だすし。
2019/03/03(日) 13:18:38.08ID:AftJRPR0
すごいとは思うけど、すごい生産性低そう
2019/03/03(日) 14:15:42.74ID:OYYbHdWa
コード量そんなないんじゃね
2019/03/03(日) 14:23:33.25ID:7s5GQtvL
別にC禁止って話じゃないしな
思考停止すんなってだけで
2019/03/03(日) 14:41:07.13ID:LWbZmqMl
>>419
自分でそんなもん実装しない人が大半だと思われ
2019/03/03(日) 22:29:55.16ID:jlgIhl+j
>>410
IO Ninja は IoT デバイス開発用のターミナルエミュレータ、各種治具、デバッガといったところだね。
開発元の Tibbo Technology 製のIoTデバイスって国内に代理店なかった気がするので、あんまり有名ではないな。
427デフォルトの名無しさん
垢版 |
2019/03/03(日) 23:17:48.52ID:2JgnAl3w
じゃあjancyとやらもマイナーなままだろう
2019/03/04(月) 14:04:54.79ID:/O719wMt
JVM言語でもjitやらoptimizeやらを切れば(お前の実装方法に応じて)素直な結果を出すと思うけどなあ
2019/03/05(火) 05:52:58.54ID:437fdADv
goが行けるならopenBasicが流行っても良さげと思うんだがどうか?
2019/03/05(火) 08:31:24.63ID:0SMIqw+w
>>426 その手のものでは、最近はmicropython が主流だろ。
100円くらいのボード(EPS32など)でも使える様になってる。
昔は(今でも入ってるのは多いが)timyBasicだった。
micro:bit ですらmicropython
スクリプト系が人気なのは、プログラムが小さくコンパイルの必要がないからターゲットボードの中だけで完結できるからだろう。
ラズベリーパイは、フル仕様のPython を標準としている。

Pythonが人気なのは、CPUやOSにとらわれなくてポーティングが楽だからだろうな。
昨日Sublimeをインストールし直したら中身の殆どがPythonに置き換わってた)、PgAdmin もPythonに変わった。
431デフォルトの名無しさん
垢版 |
2019/03/05(火) 09:11:57.31ID:DIrFqE8l
>>430
死ね
2019/03/05(火) 10:50:30.76ID:sKpoKHWu
JVMもjitやらoptimizeやらを切り捨てればrun anywhereが嘘にならなかったと思う
2019/03/05(火) 11:18:13.80ID:v05Rblfl
>>429
BASIC 系なら BlitzMax NG や Monkey2 のほうが良くね? それすら嫌なら X11-BASIC としか。
2019/03/05(火) 11:22:06.42ID:CG3neAsc
JIT?JNIだろ元凶は。
2019/03/05(火) 11:22:33.66ID:v05Rblfl
>>427
C互換言語はマイナー落ちするのが宿命。
いまは仕方ないな。
そのうちなんとかしてみるよ。
2019/03/05(火) 13:27:24.14ID:sKpoKHWu
シェルスクリプトのJNIことmain関数の手口に学べ
GUIを切り捨てろ
2019/03/05(火) 22:54:13.54ID:exrcDGV2
goはgoroutineとchannelがあってこそだと思うがなあ。
逆に、そういう面白味がない言語はたとえよく出来ていてもいまいちウケが悪いような。nimとか。
438デフォルトの名無しさん
垢版 |
2019/03/05(火) 23:38:38.28ID:wt60grpv
しっくり来た
2019/03/06(水) 01:45:21.11ID:n2VNtnMC
SwingとJavaFXってJREから切り離されてなかった?w
2019/03/06(水) 08:11:56.51ID:EtzkUYHr
そもそもJRE自体が廃止された
441デフォルトの名無しさん
垢版 |
2019/03/06(水) 09:33:23.47ID:FCOQEIBI
Kotlinもよろしく
2019/03/06(水) 22:16:22.83ID:rYBjnE2S
micro:bit持ってるけど、あれって専用のHEX吐いてるよね?micropythonそのままで動いてるの?
2019/03/06(水) 23:30:58.77ID:NglcYyrq
>>437
goroutineのchannel待ちリークに対する言語機能が期待される。
あれは結構やばい。
2019/03/07(木) 09:13:43.68ID:E2eXaClF
>>442 micropython そのものが埋め込まれてるよ。 少しだけ独自ライブラリを持ってるだけの話。
だからHEXを読み込ませた後は、teraterm などで入れば直接REPLが使える。
2019/03/07(木) 09:15:26.42ID:E2eXaClF
独自ライブラリというのもmbed の少し古いバージョンが入ってるだけ。
2019/03/07(木) 19:23:07.57ID:ciULrZzx
pythonの型がクソザコすぎてイライラする
よくこんなゴミ言語で開発する気になるわ
ゲエジしかおらんのか
2019/03/07(木) 20:06:20.64ID:rioBJ/QG
そのくらいでいちいちイライラしとる方が世間的にはゲエジですけどね。
2019/03/07(木) 20:23:38.54ID:E2eXaClF
>>446 動的型付けに文句を言っても仕方ないだろ。 それが言語なんだから。 慣れ不慣れ
2019/03/07(木) 22:51:01.92ID:ciULrZzx
>>447
は?ワロタ
2019/03/07(木) 22:52:11.02ID:ciULrZzx
>>448
phpやperlは正しくゴミと認識されてるのに、なぜかpythonだけ私違いますよみたいな顔してんのがイラつく
バカp言語3兄弟、仲良くゲエジしてろよと言いたいね
2019/03/07(木) 22:58:20.38ID:C5DOGguC
Cで作ったライブラリをキックするためだけの言語
それがpython
perlだな
2019/03/07(木) 23:15:23.60ID:ciULrZzx
プェ〜ルはLinuxコマンドを叩いてUTも書けないゴミだろ
何いってだ
2019/03/07(木) 23:21:02.99ID:oTfLqBj1
ぺーるは時代遅れなだけで偉大な言語だろ
徹頭徹尾クソなphなんたらと同列にしてはいけない
454デフォルトの名無しさん
垢版 |
2019/03/07(木) 23:24:06.09ID:jEbiMY7g
phpは型導入間近だよな
2019/03/07(木) 23:26:48.09ID:E2eXaClF
時代遅れより時代に乗ってる方が良い。
2019/03/07(木) 23:33:32.43ID:ciULrZzx
phナントカは時代に乗ってるんじゃなくて糞を乗っけて転げ落ちてるゴミだよ
2019/03/07(木) 23:48:34.40ID:E2eXaClF
いくら悪口を言っても、妬みとしか聞こえないな。
なんだかんだ言っても人気があるのにはそれなりの理由がある。
人気がないのはそれなりの欠点がある。
2019/03/07(木) 23:50:57.23ID:cPei42ec
>>448
そこは排他関係じゃないんだがなあ。
動的型付け言語で静的に型チェックすることが可能だってのはTypeScriptを見ればわかるはず。
Pythonにも型ヒントはあるが出来がいまいちってだけ。
2019/03/08(金) 00:11:03.26ID:5pI9JP8x
PHPが人気ってマジ?
俺の周りじゃ技術選定の候補どころか、名前すら挙がらなくなって久しい

一時期LAMP(笑)とか言って持て囃されてたよなぁ
2019/03/08(金) 00:16:50.69ID:z/Z4PF0F
>>459
wikipedia/mediawiki は PHP ですね
461デフォルトの名無しさん
垢版 |
2019/03/08(金) 01:29:39.26ID:UQS1HGyr
全ウェブページの3割がWordPress
CMSのみのシェアに限ったら実に6割
2019/03/08(金) 05:42:06.78ID:K0bH1TMP
>>450
Rubyだけ関係ないみたいな言い様だな
2019/03/08(金) 07:33:12.97ID:33ZLM8BT
>>461 それは言語じゃないじゃん。
2019/03/08(金) 07:35:34.69ID:8yRCoRZ4
>>459
人気だよ
Web系なんて特に、品質に興味のない動けば良い派が多数派の世界だもん
同様の理由でRubyも人気
2019/03/08(金) 07:54:29.48ID:5pI9JP8x
>>461
コーラとハンバーガーの話思い出した
悲しい世界
2019/03/08(金) 12:53:09.89ID:zYACOqEV
>>463
WordPressがPHPで動いてるってことかと
2019/03/08(金) 15:11:54.86ID:enrIbZX0
>>466 そんなこと言ったらほとんどのサイトでJavascriptが使われてるとか、Javaサーブレットの比率が高いというのと同じだぞ。
殆どのOSはC系で動いていますとか?
PHPの人気が落ちてきているのは否定しても仕方ないだろ。

IEEEランキング
https://news.mynavi.jp/article/20180806-674740/

GitHub(Octoverse) ランキング
https://octoverse.github.com/projects#languages

どちらでもPHPはランクを落としている。 
2019/03/08(金) 22:48:30.06ID:v8tJTPJS
>>450
pythonだけは本当に違うからね
ドカタ風情がどう考えるかとか関係ない
2019/03/08(金) 23:19:04.24ID:33ZLM8BT
>>468 ちょっと見た目が初心者用風に見えるから、誤解する人も多いんだろうけど奥が深いな。
特に日本人にとっては、Python3 でUTF-8 が使えるようになってから使える言語になった。 既に10年になるが。
2019/03/08(金) 23:51:54.75ID:pPe1nc2w
Pythonはリスト内包表記がよく分からなくてやめた。
2019/03/09(土) 00:21:15.90ID:dWvjadlp
pythonはmapとfilter組み合わせるときとかの見た目がphp並にゴミなので、リスト内包表記の方がわかりやすくなってる希有な言語
2019/03/09(土) 00:29:49.32ID:BaMgJESG
リスト内包は気持ちいいけど他のほとんどがイライラさせるから仕事では使いたくないな
2019/03/09(土) 00:39:12.52ID:IRFnMIKL
Pythonはリストやマップを使い倒すほどに激遅になっていくから
ループ処理するものは全てCやら何やらに全て置き換えてライブラリ化してから使うしかなくなるからな
2019/03/09(土) 00:46:34.01ID:jmJNTA16
>>473 リストを使わずに、セットや辞書を使えば良いんじゃないの? リストは遅いと書かれてるんだし。
セットや辞書はHash
2019/03/09(土) 01:26:39.24ID:wV17wiJS
いやいやあんた何言ってんの
2019/03/09(土) 01:30:33.77ID:HqfcKPNw
最近データ構造の勉強を始めたんじゃろ
2019/03/09(土) 02:03:10.56ID:bnJe64DG
>>473
無限の可能性をもつ次世代言語なんかじゃなくてCに置き換える
っていうビジョンが見えてるのが素晴らしい
478デフォルトの名無しさん
垢版 |
2019/03/09(土) 03:01:35.52ID:n56g/PGg
じゃあ最初からCやれよ
2019/03/09(土) 08:50:59.24ID:ylwqDFWx
最初にやるのは、Cに置き換えないと激遅になる証拠をしっかり押さえること
2019/03/09(土) 08:54:53.67ID:jz9xUaFa
得意な部分は他の言語にやらせたらいいっていうのはわかりやすくて良い。
なんでもアピールするバカよりよっぽど良いのは現実と一緒だな。
481デフォルトの名無しさん
垢版 |
2019/03/09(土) 08:58:56.37ID:6GEF2scy
Pythonは何が得意なの?
2019/03/09(土) 09:01:21.52ID:v9lhRDY6
>>473
cythonやnumbaを知ってから批判しましょうね
2019/03/09(土) 09:05:40.00ID:e3G7+PXr
>>482
最初からCで書けよクソゴミで済む話なんだよな
2019/03/09(土) 09:12:31.13ID:ylwqDFWx
同じことを同じ言語で二回書くのはクソゴミだが、言語を変えるなら二回書いてもいい
2019/03/09(土) 09:12:48.57ID:jz9xUaFa
>>481
糊付け
duckタイピング
2019/03/09(土) 09:20:36.93ID:v9lhRDY6
>>483
全然違うよ
numbaで書くのはcで書くより遥かに簡単だからね
2019/03/09(土) 09:29:01.65ID:4ewQpv+T
ダックタイピングと呼ばれるものって、実際には同名のメソッドが存在すればそれを呼ぶことができる
(動的バインディング)ってだけで、「アヒル」や「タイピング」は関係ないよな。
アヒルのたとえ話の趣旨からすればTypeScriptのようなstructual subtypingが近いんだろうが。
2019/03/09(土) 09:29:17.49ID:jmJNTA16
>>481 ちょこちょこ変更できてなんでもできる事。
だから入門者用としても入りやすい。小学生から学者まで。

特にライブラリーが揃ってるから統計分析など科学技術計算には強い。 特に機械学習やAI は、Python
また、Excel との相性も良い。

コンパクトなバイトコードになるから、IoTの様に小さな所でも動け、REPLが動くから実機で変更テストができ自由度が高い。だから、IoT用言語としての地位も確立している。
2019/03/09(土) 09:37:11.61ID:uR+z9zTM
>>487
Pythonにはどっかの赤い宝石とは違ってドキュメントをきちんと書く文化がある
そして、本当に正しく書かれたドキュメントには「プロトコル」としてアヒルが満たすべき要件が定義されている
そこまでやってはじめて「ダックタイピング」と言える
2019/03/09(土) 10:01:14.60ID:4ewQpv+T
Pythonのプロトコルというとイテレータとかああいうやつ?あれなら確かにダックタイピングと
言えるかもしれないけど、あらかじめ定義されているもの以外に「アヒル」プロトコルとか
追加できるんだっけ?
2019/03/09(土) 10:22:47.01ID:ylwqDFWx
文章力があればプロトコルの数学的定義を覆せる文化
それがドキュメントを書く文化につながる
2019/03/09(土) 11:05:03.57ID:ktQSUaaW
>>490 デスクリプタ汎用プロトコルがあるからユーザが定義できる。
https://qiita.com/knzm/items/a8a0fead6e1706663c22

デスクリプタ HowTo ガイド
https://docs.python.org/ja/3/howto/descriptor.html


Duck Typing は動的型付けな言語(Python, Ruby)等における型付けの作法である
ある処理に必要なオブジェクト A と同じ振る舞いができるのであれば、継承関係のある/なしにかかわらず、そのオブジェクトはAと同じとみなして良いというもの。

Python のダックタイピングの例
PythonのABC - 抽象クラスとダック・タイピング
https://qiita.com/kaneshin/items/269bc5f156d86f8a91c4
2019/03/09(土) 11:58:15.18ID:GVs3bbIF
Ruby のStringIO は、Duck Typing

StringIO クラスは、IO クラスと継承関係はなく、
単に、read, write など、IO と同名の関数名を使っているだけ

これだけで、StringIO に対して、入出力操作を行うことで、
メモリファイルを扱うことができる

最近は、ガチガチの継承よりも、委譲やDuck Typing を使うことも多い。
宣言無しのinterface みたいなもの
2019/03/09(土) 12:11:53.03ID:4ewQpv+T
>>493
>宣言無しのinterface みたいなもの

なるほど、そういう解釈ならしっくり来た。
2019/03/09(土) 12:17:10.91ID:BnoVO+GE
Rubyは大クラス主義といって、移譲だのプロトコルだのまどろっこしいことするよりどんどん継承しようぜ!という考え方が主流
だから実際にはほとんどダックタイピングは使わない
静的型検査なしでドキュメントも書きたくないとなると、Pythonのような紳士協定ベースなやり方は確実に破綻するので、
実装継承を多用するというのは「実装が仕様」なルンペン文化には適したスタイルではある
2019/03/09(土) 12:34:00.97ID:jso+Oksr
interfaceがあってこそのduck typingだなとtypescriptやって思った
2019/03/09(土) 12:42:38.75ID:BnoVO+GE
interfaceは元々は「堅い」言語で既存コードに極力手を入れずに建て増ししていくための仕組みだが、
今ではそれが高速な開発におけるデグレ防止に役立ち、生産性において動的型を圧倒したというのは皮肉な話だな
2019/03/09(土) 12:47:14.54ID:4ewQpv+T
Javaのinterfaceを初めて見たとき、Goのようなものを期待したら違っててがっくりした思い出。
2019/03/09(土) 12:51:39.03ID:ylwqDFWx
静的型は悪くないが静的型を正しく教えるノウハウをだれが持ってるんだろうか
目か?目で盗むのか?
2019/03/09(土) 12:54:03.55ID:GVs3bbIF
Duck Typing だと、たまたま同名の関数名があった場合に、バグる危険性があるから、
自分が使うものだけを、interface 宣言させて、バグを避けているのだろう

最近は、その宣言がガチガチ過ぎて面倒なので、Duck Typing が流行ってきている
2019/03/09(土) 13:40:27.53ID:ylwqDFWx
危険と安全の対立が今は主流になっているがCの型にはサイズを計算する意味もあった
2019/03/09(土) 13:54:13.53ID:jz9xUaFa
流行り廃りは行き来するもんだからな。
動的も静的もいいバランス具合にそのうち落ち着いていくだろう。
本当に流行り廃りを超えてる技術というのはユニットテストやリファクタリングといったものなんだが、
そういうのみんな嫌いでしょ?
2019/03/09(土) 14:07:25.26ID:ylwqDFWx
仕様と実装言語が独立しているレベルになったら言語の布教に不都合だから
実装は仕様に依存するぐらいがみんな好きでしょ
2019/03/09(土) 19:48:43.49ID:YBbU7zqD
>>497
> 動的型を圧倒したというのは皮肉な話

そもそも言語機能としてのinterfaceは動的型(具体的にはSmalktalk)のダックタイピング(当時はそうは言わなかったが)を
静的型のメリットを殺さずにやるアイデアから考案されたんだから順当だろう
http://www.cs.utexas.edu/~wcook/papers/OOPSLA89/interfaces.pdf
2019/03/10(日) 13:14:29.15ID:E4pQDIKL
C++はvirtualを使わない技術、Haskellはラムダを使わない技術を磨いている
Rustも同様
virtualが動的型を圧倒したとか言ってるのは時代錯誤
2019/03/10(日) 20:02:03.91ID:iWdySZoH
ラムダを使わない技術ってなんなん?
2019/03/10(日) 20:02:56.59ID:/oBaS06x
なんだろね
ポイントフリースタイルの話かな
2019/03/10(日) 20:22:04.07ID:8hqMg5Px
ラムダを使わずコンビネータを使う、とか言ったりして。
2019/03/10(日) 20:48:07.67ID:E4pQDIKL
quickSort :: Ord a => [a] -> [a]
でも昇順とか降順とかを変えるのが大変だな
2019/03/10(日) 22:35:21.02ID:iWdySZoH
sortByしたくなったらどうするんよ?
ラムダなしHaskellとかコード量が2倍で済まなさそう。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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