X



次世代言語Part8[Haskell Rust Kotlin TypeScript]
レス数が950を超えています。1000を超えると書き込みができなくなります。
0851デフォルトの名無しさん
垢版 |
2018/02/25(日) 00:02:11.41ID:/LdYt4iz
ちなみにredoxというrustで書かれたosはコンパイルは早いんだろうか。lunuxと単純比較はできないだろうけども
0853デフォルトの名無しさん
垢版 |
2018/02/25(日) 07:45:46.39ID:Pn1I1KPs
そりゃチューリング完全であることが問題なんじゃなくてそのチームに問題があったんだろ。
世の中にチューリング完全なシステム(言語)は腐るほどあるわけだし。
0855デフォルトの名無しさん
垢版 |
2018/02/25(日) 09:34:28.35ID:5I/H3HR9
できちゃうことが問題なんじゃないの
c++の型システムがチューリング完全だと自分たちだけがコンパイル速度に気をつけても
依存しているサードパーティライブラリまでは保証できないでしょ。
だったら言語側で制限がかかっておいてほしいって話。

Cの依存性解決も#ifdefを駆使してプリプロセッサの自由度を持って後付で解決していた。
プリプロセッサ自体便利なものだけど、それが原因でコンパイル速度の低下を招いた。
というのが >>819 に書いてる。

汎用性がある機能はなんでもできるからこそ、コンパイル速度を落としたり迷惑を書けることも可能。
swiftもGoも後発言語だけどプリプロセッサのってないもの
rustのマクロの自由度は知らんけども。
0856デフォルトの名無しさん
垢版 |
2018/02/25(日) 10:45:11.82ID:AkGT52Is
テンプレートやマクロで無茶をする奴が
コードジェネレータで無茶するようになるだけ
0858デフォルトの名無しさん
垢版 |
2018/02/25(日) 11:41:56.21ID:oFPVlXbE
あるC++のファイルを変更したら
そのファイルがincludeした全てのコードを再コンパイルする
型情報のみをincludeすればいいのに型ではない値とコードが大量に入ってる
この値とコードが原因だよね
チューリング完全はそこから生じた結果の一つ
0864デフォルトの名無しさん
垢版 |
2018/02/25(日) 15:13:14.53ID:iLEoqX9J
>>853
まあバカな奴をチームに入れないためにc++を採用しないって主張をするリーナスは
ある意味正しいな。
0865デフォルトの名無しさん
垢版 |
2018/02/25(日) 16:03:19.53ID:jkdNIq8n
>>858
それはちょっと違う
そもそも今時フルコンパイルなんてそんなに重いものではない
C++がまずいのは、includeしたヘッダのコンパイル結果をコンパイル単位(.cpp)を跨って共有できないことだ
プリプロセッサのせいで毎回変わる可能性があるからな
0866デフォルトの名無しさん
垢版 |
2018/02/25(日) 16:17:08.31ID:UX7CM2uT
>>864
リーナスはc++がクソだって言ったんだよ。
その次に使う人間もクソが多いって言ったの。、間違えんな
0868デフォルトの名無しさん
垢版 |
2018/02/25(日) 17:25:46.72ID:eL53m5ic
リーナスはもともとアセンブラーやからのうwww
Cは複数のCPUのアーキテクチャーに適応するためにどうにゅうしたわけやしのうww
0870デフォルトの名無しさん
垢版 |
2018/02/25(日) 18:22:22.98ID:iLEoqX9J
linux もだいぶヘッダマクロでテンプレみたいなことはやってる。
もちろん型安全ではないがそれでもc++のテンプレート使うよりマシという判断をしてるわけだよ。
0873デフォルトの名無しさん
垢版 |
2018/02/26(月) 01:07:52.73ID:NUAGFWAP
jsのhyperappみたいに300行くらいでreact + reduxなライブラリを作ったように

haskellでも小さなコードですごいことをしてみせる実用ライブラリってあるかな?
0874デフォルトの名無しさん
垢版 |
2018/02/26(月) 01:08:12.13ID:NUAGFWAP
jsのhyperappみたいに300行くらいでreact + reduxなライブラリを作ったように

haskellでも小さなコードですごいことをしてみせる実用ライブラリってあるかな?
0876デフォルトの名無しさん
垢版 |
2018/02/26(月) 05:56:26.51ID:KYXdLiJx
コードから改行をスペースに変換して一行にするライブラリーを作ればいい。
0877デフォルトの名無しさん
垢版 |
2018/02/26(月) 11:09:00.46ID:AYoEpEU8
プリプロセッサは遅くないぞ
C++のテンプレートやコンパイル時処理のほうがよっぽど遅い
RustもSwiftもプリプロセッサを排除する代わりにC++と同じようなことをやってる
0878デフォルトの名無しさん
垢版 |
2018/02/26(月) 11:28:37.86ID:OBKUk/zi
>>877
プリプロセッサが遅いんじゃなくてプリプロセッサに依存したビルドが遅いんだろ
コンパイル単位という時代遅れな概念さえなければ話はずっとシンプルになる
0879デフォルトの名無しさん
垢版 |
2018/02/26(月) 11:57:47.68ID:LqmnPPXl
コンパイル単位ってコンパイル高速化するためのものと思ってたんだけど、今は無い方が速いのか?
0880デフォルトの名無しさん
垢版 |
2018/02/26(月) 11:58:09.67ID:tiI6jRqU
文字列処理は結果をファイルに保存して再利用しやすい
クラスやオブジェクトの処理はファイルシステムと連携が難しい
かといってファイルシステムがない環境でも動くコンパイラを作る意欲もなさそう
0881デフォルトの名無しさん
垢版 |
2018/02/26(月) 13:46:15.14ID:IYGVTnOb
>>877
プリプロセッサが、遅いかどうかはどう作るかによるのでは?
何でもできる分、遅く作り込むことも可能。
だからgoとかは組み込みのimport機能を作ったわけで。
0882デフォルトの名無しさん
垢版 |
2018/02/26(月) 13:50:29.38ID:IYGVTnOb
>>875
jsのhyperappに感動してしまったから
感情的になってしまった。
300行でしかも比較的読みやすいコードで
react+reduxなライブラリが作れたことにびっくりしたんす。
勉強用の教材としてもうってつけ。

こういうのが他の言語のライブラリでもないかなと思って。
0883デフォルトの名無しさん
垢版 |
2018/02/26(月) 16:02:15.05ID:CBNL7amJ
>>879
✕高速化
○メモリ節約
今の1/1000のメモリでデカいウンコを無理矢理出すための手法で、今となっては百害あって一理なし
0885 ◆QZaw55cn4c
垢版 |
2018/02/26(月) 21:02:06.28ID:5mZ9QExD
>>883
make -j での高速コンパイルに感動することしきりです、いつか 32thread な CPU を買おうと思っています
0888デフォルトの名無しさん
垢版 |
2018/02/26(月) 22:43:29.59ID:+1zKWNLy
boost 大好きな奴がビルドのベストプラクティスとして
1ファイルに全て書く言うてたな。
バカとしか言いようがないが面倒だから黙ってた。
0889デフォルトの名無しさん
垢版 |
2018/02/26(月) 23:37:01.37ID:hKYTqf2f
小規模なら1ファイルに全て書いても問題ない
普通に書いたら数百とか数千ファイルになるようなものなら馬鹿で間違いない
0890デフォルトの名無しさん
垢版 |
2018/02/26(月) 23:38:45.60ID:vKciEg6e
インターフェースとその実装とかは、小規模なら同じファイルに書いてるのもよく見かける
0891デフォルトの名無しさん
垢版 |
2018/02/27(火) 03:24:43.50ID:Rnz77xQ6
世の中にはhaskell使い結構居るっぽいのになんでここには全く居ないんだ
githubやstackoverflowまで行かないと出会えんのか
0892デフォルトの名無しさん
垢版 |
2018/02/27(火) 05:49:52.64ID:5KO97NM4
一つのファイルに書かなくても
複数のファイルをつなげて一つにするプログラム書けばいいだろ
そのやつ馬鹿やんなwww
0893デフォルトの名無しさん
垢版 |
2018/02/27(火) 05:53:33.06ID:5KO97NM4
昔の偉い人はトップのファイルにだけインクルードを書く手法をつかったらしいからな。
これは複数のファイルを一つにつなげるプログラムとおなじことやんな。
0895デフォルトの名無しさん
垢版 |
2018/02/27(火) 11:58:06.25ID:hiD/gfTg
分割できないのはC++のtemplateだけ
Cは問題ないからほとんどの言語はCのライブラリに依存する
他言語から利用するならさすがにファイル分割せざるをえない
0897デフォルトの名無しさん
垢版 |
2018/02/27(火) 13:02:26.29ID:osJwhRBM
優秀なコンパイラ使ってるんだな
そのためのexport構文は実装が難しすぎて廃止されたんだ
0898デフォルトの名無しさん
垢版 |
2018/02/27(火) 14:30:07.64ID:hiD/gfTg
Vector<T>の内部で無引数のVectorを利用するだけみたいなパターンがある
このパターンに従ってなければ異端視されるリスクはあるだろう
0899デフォルトの名無しさん
垢版 |
2018/02/27(火) 16:21:26.72ID:ZLoGDkNB
Railsってなんだかんだいって未だに人気があるみたいだけど、
なんでなん? Rubyって動的言語だよね? PHPを使ったフレームワークとどこが違うの?
なんであんなに1強状態で人気があるの?
Rubyの魅力とセットで教えてください。
0900デフォルトの名無しさん
垢版 |
2018/02/27(火) 16:31:55.21ID:hlxRjRwD
優れているわけではなく、バカチョンで作れるから安易に選ばれやすいのだろう
Railsで始めてみることより、仕様が固まったら次のまともな言語やフレームワークに移行できるかの方が重要
実際、それに失敗(あるいはその必要性すら見越せず)して炎上する案件も後を絶たない
小さくは産めるが大きく育てることはできないのがRails
0901デフォルトの名無しさん
垢版 |
2018/02/27(火) 16:57:52.59ID:NW0j8e0V
バカチョンなのはphpじゃなくて?
なんか意識高い系が使ってるイメージなんだけどRoR
0907デフォルトの名無しさん
垢版 |
2018/02/28(水) 10:14:44.58ID:BRgV9W3l
>>899
これに誰もコメントできないということは意識高い系エンジニアはもう2chにはいないってことかな
0908デフォルトの名無しさん
垢版 |
2018/02/28(水) 10:54:54.72ID:pZIdeYdH
煽られたのでレスする

>>899
エコシステムが優れているの一点に尽きる
日本語のユーザーが多いので大抵の問題は検索で解決する
とりあえずgem入れれば大抵のことができる
Rubyであることは恐らく関係がない(Rubyの魅力ってなんだろ?ないんじゃね)

このような特長によりラピッドプロトタイピングでは他の追随を許さないため、
早急に成果物が必要なWeb系スタートアップなどでとても重宝される

ユーザーが多くて問題が検索で解決するということは学習コストが低いので、
プログラミングが全くわからないという初心者にも人気

誤解を恐れずに言えば、PHPなどの他の言語のRoRライクなフレームワークは、
Rubyを新たに学習するのを嫌がった既存言語のユーザーのためのパチモンである
0910デフォルトの名無しさん
垢版 |
2018/02/28(水) 18:04:09.73ID:51qUbh2+
次世代言語スレで枯れたスクリプト言語の流行り廃りなんて話題にしたくないって人が多いんだろ
0912デフォルトの名無しさん
垢版 |
2018/02/28(水) 20:24:05.75ID:BRgV9W3l
>>908
Rubyが嫌いって結局ガッツリハマった人の意見じゃないなぁ。
結局外から観測してる人の意見じゃん。
やっぱりいないんだな。2chには。

ちなみにRubyの良いところって多分プリミティブ型が存在しないことなんかなと
完全に純粋なオブジェクト指向言語を目指したって作者の人も言ってるし。
数字にメソッドが生えているのはたしかにすごいと思った。
0913デフォルトの名無しさん
垢版 |
2018/02/28(水) 20:29:48.68ID:BRgV9W3l
>>912
あとElixirはかなりRubyに影響を受けてると聞いた。
だからRubyには魅力があると考えている人は確実にいる。
0915デフォルトの名無しさん
垢版 |
2018/02/28(水) 23:56:12.70ID:DmvhFr4C
>ちなみにRubyの良いところって多分プリミティブ型が存在しないことなんかなと
心の底からどうでもいいわ。
0916デフォルトの名無しさん
垢版 |
2018/03/01(木) 00:14:26.84ID:mwB1G/ka
>>915
まぁそうよね。俺もRubyを外野から見てるから、正直それがどうプログラミングに役に立つかわからない。

でも、今もiOS開発でcocoapodsが使われてるなら
あれは設定ファイルがrubyで出来てるはず。(DSLを作りやすい言語だとも聞いた。)
0917デフォルトの名無しさん
垢版 |
2018/03/01(木) 01:01:03.87ID:PEqveR2A
>>909
捨てられない、壊せない、低学歴のゴミ捨て場
池沼保守が更なる池沼保守を招き、公共事業になる

COBOLですか?いいえ、ペチプァです
0919デフォルトの名無しさん
垢版 |
2018/03/01(木) 02:34:21.42ID:mwB1G/ka
>>918
JSも毎年進化してるしasync-await周りの進化を楽しみにしてます。
array系メソッドのasync-await対応入れて欲しい。

TypeScript全然今現役だし。むしろこれからじゃないの。
結構型定義ファイルを最初から提供してくれるライブラリも増えてきたし。
0920デフォルトの名無しさん
垢版 |
2018/03/01(木) 02:51:20.00ID:3GQv6gfc
動的言語の良いところは連想配列と無名関数だぜ
オブジェクトとか参照透明とかいう思想を無視して使うと良い
0924デフォルトの名無しさん
垢版 |
2018/03/01(木) 09:14:47.72ID:QH9XRV0O
rubyで作ったものといえばhomebrewとかchef、vagrantとか環境構築系統の奴が多い気がする。
0925デフォルトの名無しさん
垢版 |
2018/03/01(木) 11:41:14.60ID:mwB1G/ka
でもPHPってなにげに関数型っぽい性質を思ってるよね。
requestを入力にresponseを出力するだけの機能しか作れないわけだし。
ただ言語自体が副作用を許容するのが残念なだけで。
0928デフォルトの名無しさん
垢版 |
2018/03/02(金) 16:36:06.39ID:cw2CU0bm
細かい組み込み関数は暗記しなくていいとPerlの作者は言ってる
でもみんな人の話を細かいところまで聞いてない

そして、組み込み型が存在しない言語があれば完璧に覚えられるんじゃないか
完璧に覚えられないPerlは欠陥品じゃないかと誰かが思いついた
0930デフォルトの名無しさん
垢版 |
2018/03/03(土) 01:42:16.88ID:6xQIfmrF
詳細を暗記しなくていいって言い方は何か違うな
全容を理解しなくても使えるみたいな言い方だった
0933デフォルトの名無しさん
垢版 |
2018/03/03(土) 14:24:12.16ID:xVbk5YBO
機能を詰め込んだ言語はどれも同じようなこと言うが、
あればどっかのバカがドヤ顔で使うもんなんだよ。人が分からないこと機能を使うことがそいつの生きがいだったりするし。
0934デフォルトの名無しさん
垢版 |
2018/03/04(日) 04:04:02.15ID:H2uta8yU
結局次世代覇権はどれなの
0936デフォルトの名無しさん
垢版 |
2018/03/04(日) 08:27:34.15ID:ZzYgGHv3
覇権とはつまり無料で伝わってくる評判や情報
たしかにソースコード自体はただでもらえることが多いが
全ての情報が無料になるとは限らない
0937デフォルトの名無しさん
垢版 |
2018/03/04(日) 08:43:02.11ID:jVv2tvmI
Dartまだ生きてたんだな
flutterで久々に名前聞いたわ
0938デフォルトの名無しさん
垢版 |
2018/03/04(日) 09:06:46.22ID:wkppZr3e
死産だろ
AltJSはTypeScriptだけでいい
Flowのある今、TSですら要らなくなりかけてるしな

コヒースクリプトとかいう究極の糞ゴミもあったなそういえば
0939デフォルトの名無しさん
垢版 |
2018/03/04(日) 09:27:49.51ID:JhMcbRX8
javascriptのpython的な感じのnode.jsが
サーバ側javascriptとかいってわけのわからない何をするものかわからない
説明しかないウェブ上にないから選択肢にならないのが駄目なんだよな。
0940デフォルトの名無しさん
垢版 |
2018/03/04(日) 09:58:27.75ID:ok4FvQ1Q
Dartの戦略はosから全部google製に置き換えるという壮大なものっぽい。
flutterはUI部分はビデオゲームみたいに0から作り直してるからAndroidの断片化問題を回避してる。
結論はdart死んでなかったんや
0942デフォルトの名無しさん
垢版 |
2018/03/04(日) 12:11:02.48ID:wkppZr3e
自社で使ってねえ、いつ投げ出すかもわかんねえプロダクト使えるわけねえだろ
Angularなんて全く自社で使ってないから、案の定グダグダでReact対抗なんか遙か遠く、Vueにすら劣るゴミやン
0943デフォルトの名無しさん
垢版 |
2018/03/04(日) 12:37:54.80ID:vieJ9/i2
>>942
わかる
自社で作ったフレームワークを自社が使わないってどうなのよ?って思う
まだベータ版だからとかそれなりの理由があるならともかく、そうでなければ
自分の作ったフレームワークは使うに値しないって言ってるも同然だよな
そんなフレームワークを使う気になれないし趣味以外で使う奴の気が知れない
0944デフォルトの名無しさん
垢版 |
2018/03/04(日) 12:39:21.59ID:DGFKECqx
さすがに手を出しかねるよなあ
flutterに関してはアーリーアダプターさんに頑張っていただいて、僕はレイトマジョリティになるでござる
0945デフォルトの名無しさん
垢版 |
2018/03/04(日) 13:04:30.62ID:PM/22zQa
angularみたいに色々ごった煮するよりか
reactみたいに単なるviewライブラリって割り切ってもらった方が個人的には好みかな。
0947デフォルトの名無しさん
垢版 |
2018/03/04(日) 16:54:18.25ID:esyJJEGF
Googleって社内の開発に関しては保守的な印象
Googleともなると、新しい玩具に飛びつくことが長期的にどれだけの利益または不利益を生むかが定量的に分かってしまうんだろうね
0949デフォルトの名無しさん
垢版 |
2018/03/04(日) 17:17:55.41ID:P0TPEWFs
逆に、つかえねえ自社開発ツールを>>943みたいな理屈で開発環境として現場に押し付けるのもどうかと思うが
公開しないんじゃなくて、できないレベルで使えない、公開したら株価下がるレベルのやつ

ある程度は公開してフィードバック貰わないと腐るよ
0950デフォルトの名無しさん
垢版 |
2018/03/04(日) 18:24:47.56ID:vieJ9/i2
>>949
いや、自社開発のクソみたいなツールを使えと言っているわけじゃないんだが…
例えばReactはFacebookが作っていて、Facebookは自社でReactを積極的に利用してるわけだから
そういう開発者自身が積極的に利用してるツールじゃないと魅力を感じないってだけで

あと、公開するなとも言ってないんだが…
自社では利用してないツールなら正式版としては公開するのはどうかと思うってだけで
ベータ版としてならむしろ積極的に公開してほしい

Googleはコード資産が膨大だから全てをAngularに置き換えるのは到底無理な話だが
一部のツール(例えばGmailだけ)を実験的にAngularに置き換えることは可能だろ
でも、それさえ行われてないわけでそんなものを正式版と言われても魅力を感じないと言いたかった
0951デフォルトの名無しさん
垢版 |
2018/03/04(日) 18:53:56.69ID:ok4FvQ1Q
Flutterをとょっと触った感じすごくReactぽい。なんというか今のトレンドはReactに皆寄せるんかな
レス数が950を超えています。1000を超えると書き込みができなくなります。

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