次世代言語12 Go Rust Swift Kotlin TypeScriptat TECH
次世代言語12 Go Rust Swift Kotlin TypeScript - 暇つぶし2ch529:デフォルトの名無しさん
18/07/31 13:56:56.90 zoworXJJ.net
>>504
たしかに、そのとおりです
たとえば数学でいう直積(direct product あるいは cartesian product)の
プログラミング言語上の表現を、一般的には「タプル」と呼んでいる
もちろん ML や Haskell に代表される厳格な型システムを前提に設計された
言語の代数的データ型を持ち出すまでもなく、直積と直和の概念は
計算における数学上の概念の中で基本中の基本です
それにもかかわらず Python では、単なる不変(immutable)な配列に対して
公式文書でこともあろうか「タプル」と命名し、驚くなかれ「1要素のタプル」
といふ数学の概念を超越したリテラル構文を定義しちゃいました
世界的に普及している/していた言語は数多くありますが、こんな命名や
リテラル定義が存在するのは、後にも先にも Python だけ、唯一無二の存在です
まさに Python の設計哲学とは;
  スクリプト言語にとって数学なんてクソ
といふことなんでしょうね

530:デフォルトの名無しさん
18/07/31 14:34:58.99 U3QRqLaV.net
直積集合がタプルじゃなくて直積集合の要素がタプルな
んでもってn個の集合の直積を考える場合普通n=1は除外しない

531:デフォルトの名無しさん
18/07/31 15:00:19.27 zoworXJJ.net
>>478
あのぅメソッドチェーンとは異なり、内包表記というのは
決して万能な道具ではないんですけど、ご存知ですか?
内包表記というのは、高階関数 map/filter とジェネレータという
三つの要素を簡潔に表現できる構文糖でしかありませんから、
内包表記では表現できない課題も数多く存在します
ですからたとえば Haskell では内包表記を提供する一方で、
ポイントフリーといふ関数を繋ぐ流れるようなスタイルでも書けます
つまり「メソッドチェーン vs. 内包表記」という対決の図式は成り立ちません
これでもまだ「リスト内包がわからんってわめき散らすの無知晒してるだけ」と
騒ぎたいなら、以下のお題(>>430-431)を内包表記だけで書いてみてください
 '-'.join(map(lambda x: str(x), reversed(sorted(a))))
>>478氏が無知でなければ、内包表記でサラッとエレガントなコードを書けますよね?
ちなみに以下のような三重にカッコが入れ子になった醜いコードは勘弁してくださいね
 '-'.join(str(x) for x in reveresed(sorted(a)))

532:デフォルトの名無しさん
18/07/31 15:33:57.86 zoworXJJ.net
>>517
>n個の集合の直積を考える場合普通n=1は除外しない
ええ、それが Python 村の中では「普通」で常識なんですよね
でも Python 村から一歩外に出れば:
  n個の集合の直積を考える、ここで n>=2
が「普通」なんですけど、ご存知でしたか?
たとえば手元の教科書(*1)だと、直積は以下のように定義されています
・2つの集合の直積 A × B = { <x, y> | x <- A, y <- B }
・3つの集合の直積 A × B × C = { <x, y, z> | x <- A, y <- B, z <- C }
・4つの集合の直積も同様に定義される
この本では n=1 は定義されていないし、個人としても定義のしようがないと考えます
で、ML/Haskell/Erlang/Prolog といったタプルというデータ構造が存在する言語でも、
「普通」n=1の直積を除外しており、これが世間の常識です
ちなみに「Python村の常識、世間の非常識」といふ格言、聞いたことありませぬか?
ところで、もちろん内包表記はご存知ですよね?
知らないと>>478氏に「無知晒してる」と嗤われちゃいますよ
*1:論理と計算のしくみ
  URLリンク(www.amazon.co.jp)

533:デフォルトの名無しさん
18/07/31 16:01:29.91 6M1+k6px.net
n=1もあるしn=0もある
n=0は直積の単位元いわゆるunit
直和の単位元はbottom

534:デフォルトの名無しさん
18/07/31 16:12:57.41 zoworXJJ.net
>>520
>n=1もあるしn=0もある
>n=0は直積の単位元いわゆるunit
たしかに Python 村の中では、n=0 も除外しないのが「普通」ですね
で、静的型付け言語の ML/Haskell では単位型(unit)として定義され
タプル型とは明確に区別されていますし、動的型付け言語では
nil という特別なアトムで表現することが多く、これが世間の常識です
ちなみに「Python村の常識、世間の非常識」といふ格言、聞いたことありませぬか?
ところで、もちろん内包表記はご存知ですよね?
知らないと>>478氏に「無知晒してる」と嗤われちゃいますよ

535:デフォルトの名無しさん
18/07/31 17:08:51.40 LX5aJa12.net
>>516
なんだか随分と力んでいるみたいだけれど
> それにもかかわらず Python では、単なる不変(immutable)な配列に対して
> 公式文書でこともあろうか「タプル」と命名し、驚くなかれ「1要素のタプル」
> といふ数学の概念を超越したリテラル構文を定義しちゃいました
> 世界的に普及している/していた言語は数多くありますが、こんな命名や
> リテラル定義が存在するのは、後にも先にも Python だけ、唯一無二の存在です
いや、そういうことを言い出せば同じ引数の値で呼び出しても返す値が同じになるとは限らないCなどの「関数」“function”は数学における関数の概念とは全く違う破廉恥極まりない命名だとなるよ
そもそも手続き型プログラミング言語やオブジェクト指向プログラミング言語での「変数」“variable”と呼ばれているものもも数学の変数とは全く異なる
(例えば、それらの言語で書かれたプログラムの検証を考えるとその問題があからさまになる)
つまりプログラミング言語での用語は数学の用語を借りて使ってはいるが数学でのその用語の表していた概念を尊重しているとは限らないということだ
そういう例、つまり数学用語を数学での概念を尊重しない形でプログラミング言語の世界で借用してしまっている例は探せばいくらでもあるだろう

536:デフォルトの名無しさん
18/07/31 17:40:46.67 vAluDZRs.net
そもそも = が代入って時点で数学と違うんだから
いちいち「厳密な定義がー」いう方がどうかしてる。

537:デフォルトの名無しさん
18/07/31 17:55:08.00 zfxDeDFf.net
普通にWikipediaでタプルをしらべたら一要素のタプルの事をシングルというと
書いてあるのだがwww

538:デフォルトの名無しさん
18/07/31 18:08:24.59 zoworXJJ.net
>>522
数学の定義や数式を計算機上で実行するには、
必然的に「解釈」という(あるいは「評価」とも呼ばれる)プロセスを伴いますから、
数学の概念とプログラミング言語との間に乖離(かいり)が存在するのは一般論ですし、
その為に計算機工学という分野で研究成果が積み重ねられてきました
もちろんこうした乖離は一般論ですから、例を探せばいくらでも挙げられるでしょう
たとえば「n個の直積を考える」場合に数学では n=1 や n=0 を除外しないモデルを
構築することは可能ですが(>>517,521)、計算機工学の研究成果を元に設計された
言語だと「n個の集合の直積を考える、ここで n>=2」が暗黙のうちに認知されています
(なぜなら n=1 または n=2 の直積は、一般的には形式的に定義できない為)
ところが、こうした計算機工学の成果である n>=2 を無視し、
そんなのどうでもいいとばかりに「単なる不変な配列をタプルと命名する(>>516)」といふ
深淵の淵へ自ら飛び込んだ稀有な例が Python といふ次世代言語なんですよ
もしも「他のあらゆる言語では計算機工学の常識に沿って設計しているのに、
ある特定の言語ではそれを無視している」という具体例があれば、ご教示願います
たとえば「Python におけるタプルの命名」は、他の言語には見られない唯一無二の例です

539:デフォルトの名無しさん
18/07/31 18:21:46.76 zfxDeDFf.net
A = { x | x <- A}
A × B = { <x, y> | x <- A, y <- B }
普通に定義できるがwww

540:デフォルトの名無しさん
18/07/31 18:36:17.24 zoworXJJ.net
>>478
>それはそれとしてPythonはもっと関数を横に繋げられるようにしてくれ
>Elixirのパイプ演算子みたいな感じでさあ
いや、新たにパイプ演算子みたいな構文を追加しなくても、
オブジェクト指向言語の Python であれば、メソッドチェーンで実現できるよ
だって、Python を除く今時のオブジェクト指向言語では実現できていますから
その具体例が >>430 のリンク先のブログ主様が書いた簡潔なライブラリです
問題は、「なぜこれをやろうとしないのか?」という点です
もちろんライブラリの後方互換性は失われますが、
python2 から python3 で致命的な「後方互換性の断絶」を断行したのが
Python ですから、一貫性のあるAPIを提供するライブラリへの刷新もできたはず
さらに根本原因にさかのぼれば、「なぜ最初から一貫性のあるAPIを設計しなかったのか」
といふ疑念に突き当たります
だって、Python を除く今時のオブジェクト指向言語では設計できていますから
最後に背景原因を考察すると、Python 作者のGuido氏が:
  API の設計において一貫性などはクソ
と考えていたのか、それとも:
  オブジェクト指向が流行っていたから行き当たりばったりに設計した、
  今は後悔している
と考えているのか興味深い

541:デフォルトの名無しさん
18/07/31 18:45:34.71 zoworXJJ.net
>>526
>A = { x | x <- A}
えぇとぉ、{ x | x <- A} というのは単に集合 A を内包的に定義してるだけですから、
それは「1個の集合Aから構成される直積」ではなく単に「単純集合A」を定義してるだけです
あぁそうか、フェイトニスタには内包表記うんぬん以前に、数学の教養が欠けているのですね
ついうっかりしておりまして、大変失礼をば致しますた

542:デフォルトの名無しさん
18/07/31 19:00:43.13 zoworXJJ.net
うっかりミスを訂正:
  >>525
  X:>(なぜなら n=1 または n=2 の直積は、一般的には形式的に定義できない為)
  O:>(なぜなら n=1 または n=0 の直積は、一般的には形式的に定義できない為)

543:デフォルトの名無しさん
18/07/31 19:04:21.79 zfxDeDFf.net
定義するのに集合と同じ定義では同じでは駄目というルールはないから間違っては無いwww
ちなみにn=0の直積は1元集合として定義できるとWikipediaにかいてあるwww

544:デフォルトの名無しさん
18/07/31 19:12:42.47 x816LWzK.net
ウィキペに書いてあるとか言っちゃう人って・・・

545:デフォルトの名無しさん
18/07/31 19:36:15.75 zfxDeDFf.net
正式な定義だと、直積の要素はペアの中にペアがある構造じゃないと駄目www
A × B × C = { <x, y, z> | x <- A, y <- B, z <- C }
↑の定義があってるのは日本のWikipediaだっけでしたwwww
これを使うにはn-fold Cartesian productという直積を拡張した奴じゃないとだめでした残念www
とくにn=1の時はそのままA=Aとちゃんとした本に書いてあるwwww

546:デフォルトの名無しさん
18/07/31 19:38:51.12 xC1/ia91.net
今までの流れをまとめるとpythonはクソ。
TypeScriptが最強。という理解でよいでふか?

547:デフォルトの名無しさん
18/07/31 20:41:56.45 CfkG900T.net
rustが最強
が正しい

548:デフォルトの名無しさん
18/07/31 21:51:57.40 vpErkqT1.net
メソッドチェーンでもリスト内包でも異常なまでのテンポラリ変数嫌悪を感じるのだが、
無理にそんな書き方するくらいならテンポラリ変数使えや。

549:デフォルトの名無しさん
18/07/31 22:05:54.62 CfkG900T.net
メソッドチェーンは無理なく書けるでしょ
変数はバグの餌だから忌諱するのは当然

550:デフォルトの名無しさん
18/07/31 22:09:04.65 4i5flEMB.net
変数があって嬉しいのはデバッガでステップイン実行するときだけだな
そろそろステップの概念を卒業した新発想のデバッガが必要な時期にきてると思う

551:デフォルトの名無しさん
18/07/31 22:10:09.78 /w6/tE8P.net
一時的な内部処理でまでステートを毛嫌いする純粋病の関数型信者と似ている

552:デフォルトの名無しさん
18/07/31 22:14:45.36 hpcufxDD.net
お前らみたいなドカタなら兎も角、数学者がn=0やn=1に自然に拡張できる定義をn>=2に限定するわけないじゃん
ドカタここに極まれりだな

553:デフォルトの名無しさん
18/07/31 22:17:04.70 10MH4XIN.net
メソッドチェーンってワンライナーと同類だろ

554:デフォルトの名無しさん
18/07/31 22:23:11.93 CfkG900T.net
プログラマならバグの素を毛嫌いするのは当たり前じゃん
あくまでリーダビリティを損ねない範疇でだけども

555:デフォルトの名無しさん
18/07/31 22:24:35.12 omk/SwPI.net
>>540
途中でクラスが変わるようなメソッド呼び出しを10個も20個もチェインするヤツは知らんが
コレクションに対する操作を数個チェインするぐらいは別に普通じゃね

556:デフォルトの名無しさん
18/07/31 22:27:24.42 10MH4XIN.net
>>539
ちゃうやろおっさん
型理論的にはn>=2に拡張するために持ち出すのがpair
なのでn=0,1にpairを持ち出す必要がない
別の言い方をすると型理論的にはAと<A>は同じ
そこを区別するのがアドホックにpairを導入した言語ということ
組み込みの土方より

557:デフォルトの名無しさん
18/07/31 22:35:12.06 omk/SwPI.net
>>541
たとえばコレクションのフィルター関数を実装するようなときに
一時的にミュータブルなコレクション作ってループ回して最後にイミュータブルにして返せばいいようなものを
最初の要素が条件満たさなかったらそれを落とした新しい不変コレクション作って返す関数の再帰で書くようなゴミが純粋病

558:デフォルトの名無しさん
18/07/31 22:37:48.27 vpErkqT1.net
>>541
バグの元の一番大きなものは可読性のなさだぞ。
測りにくいものを一切無視するのがこの手の輩のダメなとこだな。

559:デフォルトの名無しさん
18/07/31 22:39:01.83 CfkG900T.net
>>544
なにそれこわい
それってなんというテクニックなの?

560:デフォルトの名無しさん
18/07/31 22:39:55.17 CfkG900T.net
>>545
だから可読性を損ねてはならないって書いてるじゃん
俺のレスは可読性低かったか?

561:デフォルトの名無しさん
18/07/31 22:43:24.72 10MH4XIN.net
>>542
コレクションの操作ってのが具体的にどういうのかしらんけど
(おもちゃのような例は勘弁)
初見のコードだと返り値が何なのか副作用のありなしもよくわかんないのが嫌い
組み込み屋なんでそういうのに神経質なんですわ

562:デフォルトの名無しさん
18/07/31 22:46:40.79 hpcufxDD.net
>>543
お前みたいなドカタには同じに見えるんだろうけど
違うものだよ

563:デフォルトの名無しさん
18/07/31 22:58:39.97 omk/SwPI.net
>>548
おもちゃのような例とやらがなんだか知らんが
「配列にフィルタかけてマップしてソート」みたいなのはメソッドチェインで書くのが普通だし
プロダクトコードで頻出するし
言語組み込みとか標準ライブラリの範囲なので仕様知らないのは知らないほうが悪いで終了

564:デフォルトの名無しさん
18/07/31 23:33:40.73 CfkG900T.net
組み込み屋だからコードが読めないって言い分が通用するのか

565:デフォルトの名無しさん
18/08/01 03:26:51.13 KaW6n03Q.net
b=a.filter(hoge).sort(piyo)はaが変化しないけど
b=a.sort(piyo).filter(hoge)はaが変化するJavaScriptとかもあるし
気持ちがわからんでもない

566:デフォルトの名無しさん
18/08/01 04:53:24.11 52qTUS9q.net
メソチェ嫌い

567:デフォルトの名無しさん
18/08/01 05:46:47.82 Lge0gQj8.net
c=a
b=a.sort(piyo).filter(hoge)
a=c

568:デフォルトの名無しさん
18/08/01 06:24:23.31 KofKD7jP.net
jsのsortはソート結果を戻り値でも返すからよくないんだよね
rustは関数が破壊的な操作をするか一目で分かってよいんだよね

569:デフォルトの名無しさん
18/08/01 07:33:14.80 4GZUmxRn.net
関数の副作用や純粋性が気になるなら
関数型の言語さわるのも良いぞ
F#は宗教論争に発展せず
現場でも実用十分的

570:デフォルトの名無しさん
18/08/01 08:04:53.43 mJtUlzgh.net
>>552
マジかー。副作用あるかないかわかるようにしてほしいわ

571:デフォルトの名無しさん
18/08/01 08:39:51.67 hzuJqRKu.net
JavaScriptはうんこだから仕方ない

572:デフォルトの名無しさん
18/08/01 08:54:45.09 /d6Lb+hA.net
>>550
> 言語組み込みとか標準ライブラリの範囲なので仕様知らないのは知らないほうが悪いで終了
なんでそこで特定の言語前提になってんの?w
標準の範囲なら百歩譲ってありだけど標準だけのデザインという保証はないやろ普通
あといちいちAPIリファレンスで確認しないと使えないってのは言語の可読性低いとも言えるわ

573:デフォルトの名無しさん
18/08/01 09:19:02.07 Lq6vBG3T.net
ドキュメント読まずにコード書くプログラマー降誕

574:デフォルトの名無しさん
18/08/01 09:29:11.08 IFtOcB8Z.net
批評家が口だけで問題解決することを理想としているように
可読性は目だけで解決するのが理想的である

575:デフォルトの名無しさん
18/08/01 10:27:41.74 Lq6vBG3T.net
そしてハンガリアン記法が産まれた

576:デフォルトの名無しさん
18/08/01 10:54:20.08 hzuJqRKu.net
>>559
土方は古代言語をメモ帳で書いてるのか……
写像や部分集合、ソートなんぞはほとんどの言語で標準で用意されてるし
IDEなりプラグイン入れたエディタならリファレンスはマウスオーバーするかショートカット叩くだけだよ

577:デフォルトの名無しさん
18/08/01 11:14:28.61 +WQ1j7Jt.net
やっぱりCOBOLなんだよなあ

578:デフォルトの名無しさん
18/08/01 22:15:44.23 zZ0QT3av.net
>>523
> そもそも = が代入って時点で数学と違うんだから
それは単なる記法上の問題であって本質じゃない
C一族みたいないい加減な言語でなくAlgolやPascalのなどの正統派Algol系言語のように代入を表す記号を “:=” で書く言語であっても変数の概念が数学のそれと全く違うという問題はCなどでの変数と同じ
見掛け上の記号の使い方がいい加減という問題と、ある用語で表される概念がいい加減(間違っている)という問題とはレベルが全く違う

579:デフォルトの名無しさん
18/08/01 22:27:10.95 KofKD7jP.net
それが何レベルなのか知らんけどどうでもいいじゃん
数学とプログラミングは別物なんだし

580:デフォルトの名無しさん
18/08/01 22:44:31.92 vVTk17fP.net
>>565
タプルがどうとかも十分同じレベルだろ。
そんなところで誤解して問題起こす奴なんて代入以上にいねーわ。
自分の理解の都合でイチャモンつけてるだけってことにそろそろ気づけや。

581:デフォルトの名無しさん
18/08/01 23:08:34.73 KaW6n03Q.net
>>554
c=aではオブジェクトは作られないので、そうやってもaは変化する
更に言うと
c=a
b=c.sort(piyo).filter(hoge)
でaが変化する

582:デフォルトの名無しさん
18/08/02 00:36:50.69 RmPassIF.net
こういう話を見ると言語としてイミュータブルな変数しかない言語が良い気がしてくる。

583:デフォルトの名無しさん
18/08/02 03:06:06.93 68/YZkTI.net
「いふ」とか言っちゃうイタイ奴にろくなのはいないな

584:デフォルトの名無しさん
18/08/02 03:23:08.65 7JMdFE06.net
>>518
いつ誰が「メソッドチェーン vs 内包表記」なんて下らん比較したんだよ
内包表記は内包表記で便利だっつっただけで、
メソッドチェーンつーかポイントフリースタイルが内包表記があれば不要なんて言った記憶は少なくとも俺にはないな
つーか>>478下段、まさにPythonにはポイントフリースタイル実現する記法が足りねえっつってんのが読み取れねえのか?
今時エセ歴史的仮名遣いで書き込むクルクルパーは国語の勉強しなおした方がいいぞ

585:デフォルトの名無しさん
18/08/02 03:24:30.81 uTIVZVJH.net
ずっと数学言ってるやついい加減うぜえわ
別スレ立ててそっちでやれやボケが

586:デフォルトの名無しさん
18/08/02 06:18:26.62 iydYt4gP.net
JavaScriptのsortとreverseが破壊的なのがぱっと見わからないのも、
JavaScriptの命名規則がうんこなだけでメソッドチェーン自体の良し悪しとは関係ない

587:デフォルトの名無しさん
18/08/02 06:58:50.64 NbZtWKau.net
関数合成大好きな関数型バカがメソッドチェーン腐すの、マジ笑えるww

588:デフォルトの名無しさん
18/08/02 08:25:49.67 j9EqWGQJ.net
>>573
こればっかりはなぁ。後発の言語は、副作用有無が明示されるようになってほしい。命名規則とか人間が頑張るタイプはやめて

589:デフォルトの名無しさん
18/08/02 09:00:45.23 St12vf3Y.net
やはりRustだな

590:デフォルトの名無しさん
18/08/02 09:09:27.15 eWP0KV4o.net
webサービス作るとき。というかrdbとの連携って静的言語より動的言語のほうが向いてる気がするんだけど、そんなことはない?

591:デフォルトの名無しさん
18/08/02 13:33:10.21 2LzP698W.net
そんなことなかっぺ

592:デフォルトの名無しさん
18/08/02 21:52:10.29 yHWyeNWP.net
TypeScriptは事実上死んだだろ

593:デフォルトの名無しさん
18/08/02 21:54:23.55 RP1FF5pC.net
>>579
>>513

594:デフォルトの名無しさん
18/08/02 21:55:36.74 0KRWeg2T.net
>>579
新しいのが出たんだが

595:デフォルトの名無しさん
18/08/02 22:57:15.05 U+SwOe4H.net
typescriptなしにjavascriptを書こうとは思わないからな

596:デフォルトの名無しさん
18/08/02 23:26:38.99 xmgsCqay.net
頑なに副作用嫌ってる人意味分からん
java.awt.Graphi


597:cs2Dとかにあるような コンテクストオブジェクトをイジイジするのってめちゃ便利やんけ



598:デフォルトの名無しさん
18/08/02 23:45:39.47 Ihv2w8Qg.net
>>575
バカは引数のconst外してでも副作用入れてくるから言語で規制するって発想自体が無駄。

599:デフォルトの名無しさん
18/08/02 23:58:42.08 2ToUeHg/.net
1行に書かなきゃどんどん一時変数を増やさなきゃならない関数パイプラインはそれなりに意義が
あると思うけど、そうじゃないメソッドチェインはわざわざ見にくい1行の式にしなくても、と思う。

600:デフォルトの名無しさん
18/08/03 01:33:05.65 xgfpZ/vV.net
とはいえtypescriptは型情報が嘘つくことあるのがしんどい。ないよりはマシなんだけど。
いまいち信用できない。
jsに、標準で型情報ついてくれないかなー。

601:デフォルトの名無しさん
18/08/03 04:43:38.64 K19AvQuK.net
ESの付け焼き刃的実装に限界があるでしょ

602:デフォルトの名無しさん
18/08/03 06:06:54.20 2wLWPbYE.net
嘘つき「何も宣言しないよりはマシ」
付け焼刃「何もしないよりはマシ」
ギャンブル依存症「何も賭けないよりはマシ」

603:デフォルトの名無しさん
18/08/03 10:32:16.64 bzinJLAw.net
所詮MSの作った詐欺言語だわな

604:デフォルトの名無しさん
18/08/03 10:34:43.31 bzinJLAw.net
>>390
の徹底を求めます

605:デフォルトの名無しさん
18/08/03 10:46:59.25 Nsq6cZsy.net
TypeScriptはもうデファクトスタンダードなのよね

606:デフォルトの名無しさん
18/08/03 11:49:14.47 5Gvag+uQ.net
>>590
病的になんだか拗らせてるのかな

607:デフォルトの名無しさん
18/08/03 14:13:45.54 2wLWPbYE.net
なぜ病気とか健康とかなんですか
悪とか正義とかではだめなんですか

608:デフォルトの名無しさん
18/08/03 14:37:25.10 284JcKyJ.net
Linus氏曰く「マイクロソフト嫌悪は『病気』」
URLリンク(srad.jp)

609:デフォルトの名無しさん
18/08/03 15:01:39.29 2wLWPbYE.net
病人は生産性がないなんて言ったらたぶん炎上するし
悪人は生産性がないと言う方が無難だと思うけどなあ

610:デフォルトの名無しさん
18/08/03 21:26:18.77 2vUMzRdm.net
生産性がないならまだいいが生産性がマイナスな輩というのがいる。
こういう輩を見るとベイシックインカムはいいんじゃないかと本気で思うよ。

611:デフォルトの名無しさん
18/08/03 22:58:37.04 iVE9Y99e.net
>>586
嘘って?

612:デフォルトの名無しさん
18/08/04 10:28:43.19 uVhwgvNs.net
やっぱ副作のないメソチェが最高やろ
リス内記は読つら

613:デフォルトの名無しさん
18/08/04 10:30:16.07 uVhwgvNs.net
>>597
それは愛だよ

614:デフォルトの名無しさん
18/08/04 10:58:41.10 RjyiLlMo.net
初心者用の言語は上級者の要求を満たすことが出来ないということだな。
上級者が初心者用の言語使うのが間違ってるな。
haskellを使えば副作用を分離出来るし、メソッドチェーンも出来るし、
直積のタプルも0次元からN次元まで使えるし(1次元は普通の集合)
解決だな。

615:デフォルトの名無しさん
18/08/04 11:18:31.48 uVhwgvNs.net
ハスルケはセパレイタとしての記号が少ないからリイダビリティが悪い
そして誰もいなくなっただろう

616:デフォルトの名無しさん
18/08/04 12:29:28.79 uqPZ4G5F.net
Haskellはタプルを使わなくてもコンストラクタのアリティを2以上にできる
多変数コンストラクタの具体例のひとつにすぎないのがHaskellのタプル
1変数コンストラクタも無数にある
だから a と (a,) が同じ型にならないPythonを見ても違和感はない

617:デフォルトの名無しさん
18/08/04 14:55:00.60 PeeX9dIT.net
>>601
オレオレ略語とか変なカタカナ表記とか、お前さんのレスもreadability低いぞ

618:デフォルトの名無しさん
18/08/04 16:06:26.17 uVhwgvNs.net
>>603
これが通なんだよなあ

619:デフォルトの名無しさん
18/08/04 18:12:45.89 2981o0py.net
ナウいハスルカー来たな

620:デフォルトの名無しさん
18/08/06 14:41:08.25 mInzEOma.net
>>598
だからなんでリスト内包vsメソッドチェーンの対立になってんだよ

621:デフォルトの名無しさん
18/08/06 16:48:04.88 F/jngZf9.net
ハスケルはエコシステムが腐ってるという話を聞いたけど本当?
言語がいくらすごくても環境構築で、しんどい思いするなら用無しなんですが

622:デフォルトの名無しさん
18/08/06 16:59:19.53 N1MnEH4U.net
改善されたことになっているが正直クソ

623:デフォルトの名無しさん
18/08/06 17:02:40.30 bv191ZQE.net
理論ばかりの頭でっかちの奴等ばっかりだからな。
実用性なんかどうでもいいんだろ。
だから実用されないんだよw

624:デフォルトの名無しさん
18/08/06 19:32:00.71 ykSda89u.net
>>607
パッケージ管理ツールのcabalもstackも依存把握がすぐぶっ壊れる。
あれは何が副作用がないからバグが少ないだって気分になるわ。

625:デフォルトの名無しさん
18/08/06 21:10:23.18 6BhDg/Vc.net
1. 関数プログラミング自体が実は大したことない
2. 副作用禁止の強制が邪魔
3. 使ってるプログラマーのレベルが低い(偏屈しか使わない・ユーザー層が薄い)
4. まだ成熟していないだけ
どうだろう。4だと思いたいが…

626:デフォルトの名無しさん
18/08/06 21:20:23.85 2AWODdBK.net
・Web系→モデルやロジックが単純なので関数型のメリットなし
・ゲーム系→常に時間変化を扱うので関数型のメリットなし
・業務系→PGの単価が上がって割に合わないので関数型のメリットなし

627:デフォルトの名無しさん
18/08/06 21:28:53.61 13KQrLiC.net
関数型の定義が未だに分からない
2だけならどの言語でも原則として受け入れられているんじゃないの

628:デフォルトの名無しさん
18/08/06 21:45:44.03 2AWODdBK.net
関数型はテストするまでもなく結果の明らかな極めて宣言性の高いコーディングができるというのが実用上最大の強みなわけだけど、
関数型マニアの関心は主に無限リストやら再帰やらモナドやら、自らその宣言性を捨てるテクニックにばかり向いていて、
結局関数型の何が嬉しいのかよくわからん状態になってしまってるのが現状

629:デフォルトの名無しさん
18/08/06 21:58:21.43 13KQrLiC.net
具体的にはどんなコードになるの?
そんな単純なコードの断片だけを組み合わせるだけで実用に耐えうる可読性や性能を発揮できるもんなの?

630:デフォルトの名無しさん
18/08/06 21:59:00.02 iAZi0X5l.net
関数単位、メソッド単位でなるべく純粋にしておくのは重要
短い関数内部の実装まで純粋にしようとするのは宗教

631:デフォルトの名無しさん
18/08/06 22:15:10.24 GZIQzwJh.net
平気で数百メガあるようなデータに対して副作用のないメソッドチェーンで加工するのって普通にやることなの?

632:デフォルトの名無しさん
18/08/06 22:27:24.52 YK5LkNr+.net
>>617
そういうのはステップ毎に一時ファイルに書き出すのが普通でしょ
COBOL時代からの伝統的なスタイルであり、今でもHadoopなどに受け継がれている
副作用がなくむしろ関数型的だ

633:デフォルトの名無しさん
18/08/06 23:04:02.54 GZIQzwJh.net
じゃあ数メガぐらいのデータなら?

634:デフォルトの名無しさん
18/08/06 23:11:20.61 4RMVWTln.net
遅延評価だったりストリーム使えるんなら大体気にしなくていいんじゃないかね

635:デフォルトの名無しさん
18/08/06 23:47:33.03 +WS/BAR+.net
関数型言語の本質は関数そのものを柔軟に扱うことだと思うんだけどな
例えばジェネリック関数のある言語ではジェネリック関数をジェネリックなまま引数や戻り値として扱えないと関数型言語っぽくない気がする

636:デフォルトの名無しさん
18/08/06 23:57:07.45 6BhDg/Vc.net
>>613
副作用はよろしくない、というのは確かに広く受け入れられている。
でもHaskellなどが要求する基準は、もっとずっと高い。
ちょっと前にstackツールのコードを見たことがある。今どうなってるかは知らんが当時は、
ある純粋な関数の中でデバッグ用ログをより詳細に出力するってフラグを、ソースコードに即値でベタ書きしていた。
これは他の言語では例えば環境変数を読み込む関数をその場で実行すれば良いだけなのだが、
Haskellでそれをやろうとすると、関数のシグニチャを非純粋なものに置き換えて、使用する全箇所も合わせて換えるか、
あるいはフラグを引き渡す配管を新設するか、などの工事が必要になる。

637:デフォルトの名無しさん
18/08/07 00:00:17.86 Cr+icss0.net
>>620
それは勘違い
遅延ストリームでステップ毎にコピーしてるんなら、コピーするオブジェクト数はバッチでステップ毎に全件コピーするのと変わらん
というかメモリアクセスが細切れになる分だけ遅くなる
遅延ストリームはレイテンシの低減には有効だけどスループットも下がるよ

638:622
18/08/07 00:12:00.15 iXXZIPQ5.net
...という工事が必要になる。だから仕方ないと言えなくもない。
このような事態は純粋な言語では良くあるのだが、このことだけで、すわHaskellあかんやん、は早計だと思う。
Implicit ParametersやGivenのようなアイデアも出てきてるし、これは解決する余地のある


639:課題なのかもしれない。 あるいはこのような事態を引き起こす設計に問題があるのかも。



640:デフォルトの名無しさん
18/08/07 00:18:57.06 UMEYDAwp.net
次世代言語たって、シングルスレッドのJSをこねくり回してドヤってる人と
Native言語でハードウェアの性能を最大限引きだそうとしてる人とで
必要とするもの違うからいっしょに議論してもかみ合わない

641:デフォルトの名無しさん
18/08/07 00:20:39.37 wPKvZYDw.net
そもそもハスケルの仕様通りの評価順序で実装してたらまともな実行速度でないっしょ。
そういうごまかしを含んでる時点でしょーもねーわ。

642:デフォルトの名無しさん
18/08/07 00:30:11.90 Cr+icss0.net
副作用はよろしくない、といってるくせに再帰やら遅延ストリームやらモナドやら状態依存のコードを好んで書きたがるのが関数型マニア
そもそも状態に依存するコードなんか極力書くな、避けられるならモナドなんか使うな、という正論を言えない空気があり、
競って予測困難で難解なコードを書いて「俺すげえ」のマウント合戦を繰り広げている
こんな状態で流行るわけがない

643:デフォルトの名無しさん
18/08/07 01:14:56.51 rAZv+q4y.net
状態依存は避けられないのに状態を禁止してしまったからやたらと状態関連が発達してしまっているけど、状態なしで書ける部分と状態が必要な部分を分けて書くという理念は守られているはず……

644:デフォルトの名無しさん
18/08/07 01:27:00.12 lcDZ2HG8.net
Haskellの定義を知ってる人ならいるけど関数型の定義は誰も知らないんだよ
だから「Haskellは関数型である」とか
「Haskellマニアと関数型マニアは同一人物である」とかいう根拠がそもそも存在しない

645:デフォルトの名無しさん
18/08/07 01:37:43.21 wdyVMIbP.net
つまりおまいらはまたオブジェクティバラブルなコード時代に戻るというの?

646:デフォルトの名無しさん
18/08/07 01:38:48.13 kyOAfGFT.net
日本語でおk

647:デフォルトの名無しさん
18/08/07 01:39:33.68 UMEYDAwp.net
関数型言語の定義ってラムダ計算を計算モデルにしてる言語でいいだろ

648:デフォルトの名無しさん
18/08/07 02:09:48.40 lcDZ2HG8.net
そのラムダ計算には型があるのかないのか
副作用があるのかないのか
なにも定義されていない

649:デフォルトの名無しさん
18/08/07 03:28:30.29 hhcOlifT.net
型なしラムダ計算だったとしてもlispだし型付ラムダ計算だったとしてもML/Haskell/etc…だし広義には問題なくない?
副作用の有無=純粋性は程度で片付けなきゃやってられない(どの汎用言語にもプログラムならどこかしら副作用が存在する)し
定期的に定義に固執しすぎなレス見掛けるけど自分でその問い掛けを考えたか?って感じなのが多い

650:デフォルトの名無しさん
18/08/07 03:47:47.09 1Z28ZkuF.net
計算機科学の研究課題としては興味深いが
プロダクション用途ではないだろう
だから何が悪いというわけではないが

651:デフォルトの名無しさん
18/08/07 06:13:33.64 o88xwRN/.net
>>614 がいいこと言った。
見通しが良いコードにするための宣言型言語のはずが
むしろ見通しを悪くしている。

652:デフォルトの名無しさん
18/08/07 07:56:24.18 c0zbvnlv.net
Scalaという見通しの悪い言語が関数型として世に知られてしまったのも不幸だったよね
意識高い系のオモチャに選ばれたのがScalaではなくF#だったら状況はだいぶ違っていたのではないか

653:デフォルトの名無しさん
18/08/07 07:59:10.87 6yZcjsMn.net
状態に依存する部分と純粋な部分を切り分けること自体は純粋関数型言語じゃなくてもできること
そもそもHaskell使える開発者が集まってるならHaskellじゃなくてもみんな極力そのように書くし、
強制されないと副作用ごちゃまぜコードを書くような土方はHaskellは使えない
純粋性を強制するメリットが禁止して柔軟性を失うデメリットに釣り合ってない

654:デフォルトの名無しさん
18/08/07 08:35:30.11 iXXZIPQ5.net
純粋性を強制するメリット、を考えてみた。
例えばエディタの設定ファイルをHaskell自身で書くことができる。
設定ファイルがSafeHaskellであることを要請して、かつ設定操作に限定された型のみを許すようにする


655:。 これで設定ファイルに、勝手にビットコインを採掘するスクリプトを忍ばせるような悪さができなくなるし、 Haskellそのものの柔軟性を活かして好きなだけ設定を短く表現できる。 安全さと強力さが両立された。



656:デフォルトの名無しさん
18/08/07 08:38:42.25 FVK8LmPZ.net
Haskellは状態に依存するコードを書こうとすると途端に
可読性の低い冗長なコードになるのがダメなところだと思う
純粋な部分の構文に比べて手抜きすぎなんだよ

657:デフォルトの名無しさん
18/08/07 08:54:53.62 UMEYDAwp.net
手抜きではないだろ、むしろ逆
worldを隠しつつ宣言的に書くという変態技のために
モナド用の構文糖衣が多数あるせいで関数型の簡潔さが失われている

658:デフォルトの名無しさん
18/08/07 09:11:21.06 FVK8LmPZ.net
シンタックスシュガーを幾ら用意しても簡潔に書けるようにする工夫がないから
どう書いても冗長って話なんだけど?分かってないなぁ

659:デフォルトの名無しさん
18/08/07 10:46:00.40 rAZv+q4y.net
それは手抜きと表現すべきではない。わかってないなあ

660:デフォルトの名無しさん
18/08/07 10:58:16.01 hbLPpe/0.net
>>642
じゃあ例えばどういう工夫なの?
お前のHaskellの理解力が試されてるから慎重に答えてね
無理なら別に逃げてもいいよ

661:デフォルトの名無しさん
18/08/07 11:45:14.63 7ewfkb5/.net
工夫するたびに言語の差は大きくなって言葉が通じなくなる
逆に言語を一つにしたければチューリングマシンだとかラムダ計算だとか
人が手を加えないまるで手抜きのような方向に行けばいい

662:デフォルトの名無しさん
18/08/07 11:56:41.38 MwJ3Tuus.net
>>644
そうだなぁ。何でもいいんだけど、たとえば in-place quicksort をHaskellで可読性高く書けるかって話ですよ
いままでCにも劣る可読性のコードしか見たことないわ
だから、お前が可読性高い in-place quicksort を書いて見せたらこっちの意見は取り下げてもいいけどね
無理なら別に逃げてもいいよw

663:デフォルトの名無しさん
18/08/07 11:56:53.80 UdLWsfQc.net
関数型は実行モデルに由来する制約が少なくて言語設計の自由度が高い分、アイランドモンキー族にとって馴染みにくいものになってると思うんだよな
「結論から言え」なカルチャーが色濃く出すぎてる

664:デフォルトの名無しさん
18/08/07 12:42:49.18 hbLPpe/0.net
>>646
お前の可読性の基準なんかこっちはしらんがな
お前が言う工夫が例えば何かって聞いてんだよ
まさかノーアイデアで批判だけしてんの?

665:デフォルトの名無しさん
18/08/07 13:44:16.06 iXXZIPQ5.net
可読性が低く冗長なのが問題だ。簡潔に書ける工夫があればよい。
例えばどういう工夫が?
例えば in-place quicksort が問題だ。簡潔に書ける工夫はないだろ?
----
まあ問題意識は判った。確かに可読性と速度の両立は課題だと思う。

666:デフォルトの名無しさん
18/08/07 13:56:33.53 7ewfkb5/.net
CとHaskellの両立ができないやつは二刀流を自粛している
これは自粛であって禁止ではない

667:デフォルトの名無しさん
18/08/07 14:11:05.26 iXXZIPQ5.net
あれっひょっとして >>642
「もっと状態方面を簡潔に書けるよう工夫しろよ」って非難してるのか。
だとしたら誤読だったすまん。

668:デフォルトの名無しさん
18/08/07 14:14:10.11 87aOzLJL.net
インプレースに書かなくてもインプレースにしてくれるのが stream fusion

669:デフォルトの名無しさん
18/08/07 14:20:07.94 7ewfkb5/.net
副作用を書かなくても書ける(副作用禁止とは言っていない)

670:デフォルトの名無しさん
18/08/07 16:25:52.99 1g1T9ybM.net
>>633
> そのラムダ計算には型があるのかないのか
> 副作用があるのかないのか
副作用を入れたものは本来はλ計算ではないよ
そういう変てこなバリエーションをデッチ上げて「何ちゃらλ-calculus」とか呼んで発表してるのは幾らでもあるがゴミばかり
状態などというものを考えず単純に構文的な置き換えだけで扱えるλ計算の長所を破壊し放棄する拡張をしても何もメリットはない
単にほとんど誰にも論文のカウント数を1増やすだけ
まあ御当人の学位取得や助教職のアプリケーションには有効なのかも知れないが

671:デフォルトの名無しさん
18/08/07 16:27:13.31 1g1T9ybM.net
>>654訂正
誤> 単にほとんど誰にも論文のカウント数を1増やすだけ
正> 単にほとんど誰にも読まれない論文のカウント数を1増やすだけ

672:デフォルトの名無しさん
18/08/07 16:59:37.73 7ewfkb5/.net
モナドクラスは副作用を入れたinstanceと入れないinstanceの見た目を同じにする
副作用を禁止しても見た目が美しくなったりしない
Haskellには副作用を禁止するモチベーションがない

673:デフォルトの名無しさん
18/08/07 17:10:14.56 ghIQqx1y.net
副作用あったら遅延評価できないじゃんwwwww

674:デフォルトの名無しさん
18/08/07 17:44:51.87 STmUhm8q.net
>>648
ここはHaskellスレじゃないんですよ?
ゴミ言語にはゴミである理由さえ説明すれば十分ですよ

675:デフォルトの名無しさん
18/08/07 21:56:56.28 rAZv+q4y.net
Inplaceが必要な時はHaskellを使うべきではない
Inplaceが不要な時に力を発揮する言語だし、Inplaceなんて避けておけというメッセージのこもった言語だ

676:デフォルトの名無しさん
18/08/07 22:38:15.68 ThdtCxHP.net
>>659
それって言い方を変えると
HaskellもPythonみたいにクリティカルな部分はCで書いてそれ呼び出せ
って解釈できる気がするんだが、そう解釈しておk?飛躍しすぎ?

677:デフォルトの名無しさん
18/08/07 23:17:08.03 rAZv+q4y.net
>>660
個人的には正直そうした方が良いと思う

678:デフォルトの名無しさん
18/08/07 23:57:01.73 z8E9h/cA.net
たかがin-placeが必要なだけでCの助けが必要って?
そんなウンコは次世代言語に相応しくないな

679:デフォルトの名無しさん
18/08/08 00:39:35.00 MPyzl9Mf.net
結局C++で全部書けばいいじゃんってなる

680:デフォルトの名無しさん
18/08/08 00:41:13.08 wOobAAAA.net
>>662
なるべくin-placeは避けろという言語に対してin-placeがかけないなら云々とかもう思想が合ってないとしか言いようがないな

681:デフォルトの名無しさん
18/08/08 00:46:04.90 LvbSOyDD.net
Haskellは富豪プログラム専用。in-placeがどうしても必要になるような貧乏人の道具ではない

682:デフォルトの名無しさん
18/08/08 01:04:09.78 vRZZuWNv.net
副作とノー副作を合一合体して書けるScalaサイキョってことか?

683:デフォルトの名無しさん
18/08/08 01:05:18.29 vRZZuWNv.net
ちなInplaceって何ンゴ?

684:デフォルトの名無しさん
18/08/08 01:17:44.98 XKTLbEez.net
関数型言語に学ぶ価値はあるけど使う価値はないっ昔から言われてるじゃん
Monad勉強してへーうまくできてんなー(実行効率悪そうだけど)
って思っときゃいいの
そして最近の言語はOptionalとかいいとこだけうまく取り込んでるわけだ

685:デフォルトの名無しさん
18/08/08 01:33:19.58 x4iNladl.net
シンプルさと実用性を兼ね備えたF#が最強でいいよ

686:デフォルトの名無しさん
18/08/08 06:39:46.68 qzF7QRmg.net
>>669
F#って、何処で使われてるの?

687:デフォルトの名無しさん
18/08/08 07:11:01.72 NcOXcLna.net
既存の手続き型言語で培われてきたアルゴリズムは
ミュータブルなデータ構造に対して最大限の効果を発揮するものなんだから
イミュータブルなデータ構造が基本の言語で同じことをやろうとするのが誤り

688:デフォルトの名無しさん
18/08/08 07:27:54.72 wNvOXIQi.net
イミュータブルなデータ構造の方が速い、ってケースはあり得るのかしらん

689:デフォルトの名無しさん
18/08/08 08:23:57.11 IxvHxUWv.net
ミュータブルがイミュータブルを包含するなら無い。

690:デフォルトの名無しさん
18/08/08 08:26:42.80 XKTLbEez.net
速いってケースは思いつかないけど(ヒープを遠慮なく使う時点でたぶんアウト)
SSAとかは興味深い

691:デフォルトの名無しさん
18/08/08 08:42:20.41 Lg30iyda.net
なんか俺がいなくても結局誰かをガイジ呼ばわりして叩くスタンスには変わりないんだな

692:デフォルトの名無しさん
18/08/08 09:16:15.89 HB5JDXH/.net
誰だよ

693:デフォルトの名無しさん
18/08/08 09:16:44.00 2sUSQVhy.net
いや?引き続きお前がガイジだけど?

694:デフォルトの名無しさん
18/08/08 09:24:26.65 vRZZuWNv.net
ビットコドンドコで大負けくらってる僕よりガイジーヌなやちゅなんておらんJARO草ァwwww
んでさでさ、Inplaceて何ンゴンゴ?_?

695:デフォルトの名無しさん
18/08/08 09:48:10.71 x4iNladl.net
宣言的に書くならC#のLinqよりF#で書いた方が速いね
もちろん速くするだけならC#の方が速いけど
>>670
金融、財務とかかね
stackoverflowのアンケでは給料の高い人が使ってる言語の1位になってるし
日本じゃほぼ使われてないのかもしれんけど

696:デフォルトの名無しさん
18/08/08 11:11:01.92 Lg30iyda.net
>>677
それが変わったとは言ってなかろうw

697:デフォルトの名無しさん
18/08/08 11:33:37.96 cLlG8mO/.net
URLリンク(prtimes.jp)
日本だとgoやな

698:デフォルトの名無しさん
18/08/08 11:39:50.23 cLlG8mO/.net
URLリンク(insights.stackoverflow.com)
stackoverflowはこれやな
トップ3は関数型やのう

699:デフォルトの名無しさん
18/08/08 12:50:00.95 LvbSOyDD.net
Clojureたっかw

700:デフォルトの名無しさん
18/08/08 12:50:15.63 5wsfu3zt.net
GoもKotlinもTSももう次世代じゃなくて現世代だな

701:デフォルトの名無しさん
18/08/08 15:37:13.59 PIe5jilU.net
関数型言語が高いんじゃなくて関数型言語使えるような人は土方と違って生産性も収入も高い人が多いってだけなんだよな。

702:デフォルトの名無しさん
18/08/08 15:50:13.09 9m2ggoUL.net
なんでもそうだけど、役に立たない仕事ほど年収が高いんだよね。

703:デフォルトの名無しさん
18/08/08 16:11:31.17 Gn4Y43YU.net
役に立たない仕事で収入を得るのは特別な能力が必要だから当然

704:デフォルトの名無しさん
18/08/08 18:42:53.59 MPyzl9Mf.net
Google社内では本当にDart使用していると言い張っているようだな

705:デフォルトの名無しさん
18/08/08 20:02:34.86 vRZZuWNv.net
俺を無視するな無能ども

706:デフォルトの名無しさん
18/08/08 20:32:13.33 R97WVBzv.net
多数派ほど年収コストカットの標的になる

707:デフォルトの名無しさん
18/08/08 20:48:54.98 8/KZCZf7.net
>>684
それな
ここは次世代スレだからそろそろ退場して欲しい

708:デフォルトの名無しさん
18/08/09 07:19:31.82 a08mMW70.net
最近の言語ってなんで文末のセミコロンを無くしたがるのかはホント理解できんね

709:デフォルトの名無しさん
18/08/09 07:35:24.04 RpjTpAg/.net
文末に。を付けないやつが言うな。

710:デフォルトの名無しさん
18/08/09 10:42:24.61 9RYWVA0H.net
うまいツッコミww

711:デフォルトの名無しさん
18/08/09 11:20:46.07 SPEbgWbN.net
文末は「w」を付けようw

712:デフォルトの名無しさん
18/08/09 11:32:06.24 nOv6o4Tk.net
正解が二個以上あっても正気を保てるのは言語オタクだけだ
だから改行を唯一の正解とする
改行の強制はインデントの強制でもある

713:デフォルトの名無しさん
18/08/09 11:45:07.69 jYulBjzP.net
。文頭に。

714:デフォルトの名無しさん
18/08/09 11:48:54.95 tiCgQYzA.net
>>691
じゃあ次世代言語上げてくださいますか?

715:デフォルトの名無しさん
18/08/09 12:14:58.58 oYkmjdVE.net
次世代言語って、現世代では全く使われていない言語を指すの?
そうなると、ここでは書いたことの無い言語の話しか出来ないんじゃないかな。
もう少し冷静に、新しいか、成長の余地がある言語にすりゃ良いかと思うよ。
新しくもないし凝り固まってるしパラダイムも充分に理解されてるがメジャーではない言語、を入れるかに悩むならわかるけど。

716:デフォルトの名無しさん
18/08/09 12:30:39.38 bosClgwQ.net
Javaみたいなゲージ御用達スーパーゲージ変換じゃなけりゃなんでも良いだろ

717:デフォルトの名無しさん
18/08/09 12:41:46.37 3KvQpafX.net
みんなスルースキル高くて草

718:デフォルトの名無しさん
18/08/09 12:49:51.63 f0O6DFnI.net
>>699
業務でってのが一つの基準な気がするけど

719:デフォルトの名無しさん
18/08/09 13:56:19.73 SPEbgWbN.net
つまりw改行しなければwいいんだなwwww

720:デフォルトの名無しさん
18/08/09 20:59:51.98 e5qVRRjG.net
スレタイの中だとrustかswiftくらいしか成長の余地なくない?

721:デフォルトの名無しさん
18/08/09 21:20:23.73 VJPaXfwo.net
Kotlin もよろしく

722:デフォルトの名無しさん
18/08/09 21:38:29.91 e5qVRRjG.net
kotlinは生まれながらにしてjavaの業を背負ったどん詰まり言語じゃん

723:デフォルトの名無しさん
18/08/09 22:30:00.52 /2nI6M2Z.net
だって必要ないじゃん;
意味ある?;
これ;
(;_;);

724:デフォルトの名無しさん
18/08/09 22:44:04.28 a08mMW70.net
てか何気にRustよりGoの方が古いってのは意外だったな

725:デフォルトの名無しさん
18/08/09 22:47:27.72 blnBsEZw.net
>>706
実行環境についての話でいいなら、Kotlin/Nativeが成長途中という状況だよ

726:デフォルトの名無しさん
18/08/09 22:48:35.50 /2nI6M2Z.net
>>708
ゆとりwwwww

727:デフォルトの名無しさん
18/08/09 23:33:53.62 e5qVRRjG.net
>>709
kotlin nativeはjavaに足を引っ張られたkotlinに足を引っ張られるんじゃないかと勘ぐってるけどそんなことないのかな?

728:デフォルトの名無しさん
18/08/09 23:40:49.80 7Swg8quk.net
それは逆コンパイルしたら中身jvmだったりしないの?

729:デフォルトの名無しさん
18/08/10 01:01:42.40 ucX04wSR.net
しないと思うんだがなあ

730:デフォルトの名無しさん
18/08/10 01:04:16.11 ukxgHu4p.net
じゃあなんでScalaは死んでしまったの?

731:デフォルトの名無しさん
18/08/10 01:10:51.06 IRsv9zVw.net
不器用でScala…

732:デフォルトの名無しさん
18/08/10 02:00:19.91 HdgH4clE.net
>>681
これ見るとkotlinよりscalaの方が求人多くね?
kotlinも死んだ?

733:デフォルトの名無しさん
18/08/10 07:23:01.25 ukxgHu4p.net
>>715
クッソワロピオ

734:デフォルトの名無しさん
18/08/10 09:40:19.54 I/2uhvV4.net
求人件数だけ見るなら ruby 一択だろう
しかしなんだかとても嫌な予感がしないか?w

735:デフォルトの名無しさん
18/08/10 10:45:00.73 VgXmKm4y.net
そんな数字の話をするだけなら靴磨きの少年でもできるからな

736:デフォルトの名無しさん
18/08/10 15:35:01.51 ukxgHu4p.net
>>718
クッソゴミみたいな保守やらされそう
今やRubyもPHPに匹敵するレベルの糞になりつつあるな

737:デフォルトの名無しさん
18/08/10 15:51:54.46 zgyAwqJP.net
rubyは散々馬鹿にしてきたPHPと席を分け合うポジションに収まったのが笑える

738:デフォルトの名無しさん
18/08/10 15:59:34.87 ndPpyRQZ.net
rubyが笑えるのは散々バカにしてきたjavascriptの後塵を拝してるどころか3周差くらいつけられてなお離されてる最中なところ。

739:デフォルトの名無しさん
18/08/10 19:16:31.89 JIBbU2kk.net
rubyやたらディスられてるけどphpみたいにapiに一貫性がない感じになってるの?

740:デフォルトの名無しさん
18/08/10 19:20:49.70 3XHWU+Ek.net
>>704
Rustは既に方向性失敗して、2018editionとやらで互換性壊してなんとかしようとしてるらしい
成長の余地どころかぱいてょん(爆)の後追いで死にに行ってる
Swiftも似た感じだが、圧倒的なプラットフォームパワーでなんとかなってる

741:デフォルトの名無しさん
18/08/10 19:35:13.28 JIBbU2kk.net
elmはどうなん?別なチームが社内ツールで使おうとしてるけど

742:
18/08/10 19:39:33.47 H9lF8aPc.net
>>719
靴磨き!
すばらしい喩えですね

743:デフォルトの名無しさん
18/08/10 19:56:48.45 RwvSx+PQ.net
>>724
ぱいちょんと違って何も変えなければ動くんだから事情は違うでろ
コンパイラ言語なら互換性を無理に維持しなくていいと思うけどな

744:デフォルトの名無しさん
18/08/10 20:11:20.18 gUyFIU0u.net
pythonはよく2 -> 3 を生き延びたな

745:デフォルトの名無しさん
18/08/10 20:33:00.69 ky1dXwBu.net
2にしがみついてる老ガイどもを皆殺しにするウイルスでも仕込めばいいのにな

746:デフォルトの名無しさん
18/08/10 20:52:57.93 USnz8/j9.net
>>723
Rails全盛期の頃に比べると開発端末としてWinが復権してきたのが大きいんじゃないかな
Python をはじめとして Node, Go, TypeScript, VSCode など、比較的Winと相性のいいツールが全体的に伸びてる

747:デフォルトの名無しさん
18/08/10 21:03:08.30 U4E1U51M.net
>>729
こういうカス発言してる奴がクソコード残して逃げてくんだよな。

748:デフォルトの名無しさん
18/08/10 21:13:17.21 ky1dXwBu.net
>>731
おっ 2にしがみついてワイに殺される予定の老ガイか?

749:デフォルトの名無しさん
18/08/10 21:19:54.02 SUY6gjUJ.net
>>728
いやぁ生き延びとらんだろ

750:デフォルトの名無しさん
18/08/10 22:07:09.99 32dlghG4.net
そういやRubyってRPGツクールの拡張スクリプト枠JavaScriptに取られたんだったっけ?

751:デフォルトの名無しさん
18/08/10 22:08:44.06 32dlghG4.net
Kivyのクロスプラットホームで未だにPython2しか対応してないのがガッカリだな

752:デフォルトの名無しさん
18/08/11 09:11:36.35 HU3kTBNR.net
>>733
明日から2が動かなくなってもnumpy, scipy, matplotlibを使ってる連中は全く困らないし、
その辺のユーザを掴んでる限りPythonは安泰だよ

753:デフォルトの名無しさん
18/08/11 11:03:57.70 0vNf6Bak.net
perl5とpython2とpython3を全部インストールしても他の言語1個分より小さい気がする

754:デフォルトの名無しさん
18/08/11 15:30:42.30 C3UbcqEq.net
お前ら、Dartが何か呼吸してるのを気にかけてやれよ

755:デフォルトの名無しさん
18/08/11 16:05:15.59 5KDQ4NhY.net
Announcing Dart 2 Stable and the Dart Web Platform
URLリンク(medium.com)

756:デフォルトの名無しさん
18/08/11 16:22:10.14 D+zTNhHi.net
>>736
え?どれも3では動かなくね?

757:デフォルトの名無しさん
18/08/11 16:38:36.02 UCkmlwiT.net
>>740
いつの話をしているんだ?
全部動くぞ

758:デフォルトの名無しさん
18/08/11 16:41:21.81 nLKVRTP/.net
Dartの功績は、SEOによる情報操作だけでは言語をゴリ押しできないことを証明したこと

759:デフォルトの名無しさん
18/08/11 17:02:48.39 VD7zYIqC.net
つ 反例:Rust

760:デフォルトの名無しさん
18/08/11 17:54:28.51 4JPNuUD1.net
Golangは無実

761:デフォルトの名無しさん
18/08/11 21:01:35.15 HLvH4blK.net
DartってFlutterのオマケでそ?

762:デフォルトの名無しさん
18/08/11 23:13:04.20 dFDFw6X4.net
Dartを「ごり押ししても」メリット無いってきづけよ。Dartをごり押しして、何のメリットがあんだよ?答えてみろよ!?

763:デフォルトの名無しさん
18/08/11 23:25:59.16 okCpsnhc.net
googleが言語仕様をコントロールできるからね
新OSもLinuxから離れてるし内製への拘りが強くなってる

764:デフォルトの名無しさん
18/08/11 23:30:42.85 jeWHIwms.net
goが示したのは
クソ言語仕様を押し付ける暇があったら実装の性能をあげた方がよっぽど良いって事。

765:デフォルトの名無しさん
18/08/11 23:39:35.18 X/mb2cGW.net
どうせ馬鹿に高度なものは扱えないんだから
馬鹿でも使えるものだけ与えた方が混乱がないってこと

766:デフォルトの名無しさん
18/08/12 02:20:35.28 U6PLakfn.net
馬鹿にも理解できる言語仕様だからといって
馬鹿でも素晴らしい成果物を得られるわけではない

767:デフォルトの名無しさん
18/08/12 03:19:07.43 BCWcLjTe.net
かと言って頭のそれなりにある人間も頭抱えるような言語じゃ開発サイクルも早くは回せんけどな

768:デフォルトの名無しさん
18/08/12 08:00:52.41 yev3ahQ7.net
Go2はどんな風になるんだろう。

769:デフォルトの名無しさん
18/08/12 10:02:10.86 EPMyTgCm.net
>>752
Generics実装してmapとかreduceとか使えるようになれば申し分ないんだけどなぁ

770:デフォルトの名無しさん
18/08/12 11:03:46.49 3fjFk3bI.net
Javaのぱくり言語とUnixのぱくりOSはいちいち説明しなくてもわかる
ぱくりじゃないところだけ説明しろよな

771:デフォルトの名無しさん
18/08/12 11:27:08.14 6F6W/tUK.net
大体なんでAndroidの標準開発言語Goにしなかったんだろうな

772:デフォルトの名無しさん
18/08/12 11:29:02.69 /Wm/F5Iv.net
>>741
Googleがなんで機械学習系のライブラリを2系でしか出してないか知らないのか
まともに安定してnumpyまわりが動かないからだぞ

773:デフォルトの名無しさん
18/08/12 11:31:17.00 /Wm/F5Iv.net
>>742
Rustっていう、現在進行形で情報操作でごり押しして
ある程度バカがつられてる言語があるんだよなあ
そういう意味でDartに対するGoogleの姿勢はまだ技術には誠実だと言える

774:デフォルトの名無しさん
18/08/12 11:35:21.08 /Wm/F5Iv.net
>>756
tensorflowも3で動くぞ
マジでしったかだなw

775:デフォルトの名無しさん
18/08/12 11:37:39.00 /Wm/F5Iv.net
>>758
お前のそれ本当にtensorflowなのか?

776:デフォルトの名無しさん
18/08/12 11:45:09.80 m3BnuYl0.net
いや普通に tensorflow1.8.0 は python3 で動いてるぞ。
google cloud 周りは確かに python2 系統だが。
互換性周りの話って、python3推しもpython2推しも普通に嘘つくから嫌なんだよ。
自分の都合のいい話しか信じないっていうのが露骨に出る。

777:デフォルトの名無しさん
18/08/12 11:54:38.90 /Wm/F5Iv.net
>>756
numpyまわりで3系だけの不具合って何?
まともに動かないと言うくらいなら、いくつも例を出せるでしょ?
え?出せない?思いつきで言っただけ?

778:デフォルトの名無しさん
18/08/12 11:58:45.26 3fjFk3bI.net
嘘ついても全ての人を騙せるわけではない
情弱が多数派でなおかつ多数決は正しいという前提がなければ騙せない
多数決やめればいいだけだ

779:デフォルトの名無しさん
18/08/12 11:58:45.27 /Wm/F5Iv.net
>>760
いやTensorflowが3系で動くこと自体がはっきりいって眉唾
公式じゃ動くって言ってるが手元で動いたためしがない
>>761
そもそもインポートでエラー出るんだよなあ

780:デフォルトの名無しさん
18/08/12 12:03:07.71 m3BnuYl0.net
>>762
多数決とろうが動かないものは動かないし、動いてるものは動いてるんだよ。
>>763
だから普通に手元で動いてるっつーの。
少なくともうちの会社の中で問題が生じた奴はいないし、
問題が生じるのは大抵cudaに対するバージョン依存くらい。
お前の環境がイかれてるだけだろうと思うが他の奴にも聞いてみたの?
python3でgoogleが問題になるとしたらプロトコルバファ周りくらいだろ。
あれはもろにstrの変更の影響を受けるのはなんとなくわかる。

781:デフォルトの名無しさん
18/08/12 12:04:20.79 /Wm/F5Iv.net
>>763
>公式じゃ動くって言ってるが手元で動いたためしがない
それお前が馬鹿すぎるだけじゃんw
お前みたいな低脳にはDNNなんて無理だから諦めろwm

782:デフォルトの名無しさん
18/08/12 12:11:54.51 /Wm/F5Iv.net
python3でcudaやtensorflowがセットアップ済みのdocker imageあるから、素直にそれ使えやw

783:デフォルトの名無しさん
18/08/12 13:11:07.06 6F6W/tUK.net
お前らなんで同じID同士で煽りあってんの?

784:デフォルトの名無しさん
18/08/12 13:16:51.13 Vy+afkgd.net
闇が深い

785:デフォルトの名無しさん
18/08/12 13:19:26.01 cynVKITI.net
こんな堂々と自演することある?

786:デフォルトの名無しさん
18/08/12 13:22:32.17 nleagsaG.net
typescriptのジェネリクスのヤバさを目撃すると、どうにもgo2でジェネリクスを導入するのは見送ったほうが良い気がする。
少なくとも、慌てて入れるんじゃなくてgoらしく独自な感じで頼みたい。

787:デフォルトの名無しさん
18/08/12 13:29:17.87 6F6W/tUK.net
同じ家だか会社だか学校の回線使っての意見対立か何かか?

788:デフォルトの名無しさん
18/08/12 13:30:22.02 1hBEMhNj.net
ただのID被りだろ

789:デフォルトの名無しさん
18/08/12 13:35:17.74 3fjFk3bI.net
被る確率と自演の確率
確率の多数決や

790:デフォルトの名無しさん
18/08/12 13:42:50.54 evL76NL4.net
ここでいくら python3 へ移行しても無問題と叫んだところで、
未だに macOS ではデフォルトが python2 のままという事実からは
逃げられないんだな
おまけに次期バージョンの Mojave に至っても、プレビュー版では python2 だし
・Apple、macOS 10.14 MojaveにもPython v2.7.10を同梱?
 URLリンク(applech2.com)
>>729 からすれば Apple は「2にしがみついてる老ガイ」らしいけど、
Apple を罵倒できる男の子ってカッコイイなぁ(棒

791:デフォルトの名無しさん
18/08/12 15:01:21.79 b1qxMcA9.net
>>774
vertualenvどころかhomebrewも使わずにシステムのpythonにnumpyやtensorflowとか入れてんの?
完全にアホじゃんww

792:デフォルトの名無しさん
18/08/12 15:12:08.06 nleagsaG.net
こういうアホの子も機械学習に手を出してるのを見ると俺もやらないとって思うけど、解決したい問題が無いという

793:デフォルトの名無しさん
18/08/12 15:30:23.13 3fjFk3bI.net
珍しく弱気だな
いつもならノーベル物理学賞ですら、それ何の役に立つの?って強気で問い詰めるくせに

794:デフォルトの名無しさん
18/08/12 15:40:32.20 f+bxV/sn.net
>>770
tsのジェネリクスのヤバさ詳しく
興味ある

795:デフォルトの名無しさん
18/08/12 16:23:38.77 nleagsaG.net
これとか
URLリンク(qiita.com)

796:デフォルトの名無しさん
18/08/12 16:28:19.24 nleagsaG.net
型がない言語に型を持ち込んだからだって突っ込まれるかもしれんけど、
こんなことになる可能性はジェネリクスを持つ言語全般に言える。
ちなみにジェネリクス関連のエラーにぶつかるとさっきのリンクみたいな型情報をエラーメッセージに垂れ流して直せって要求してくる。

797:デフォルトの名無しさん
18/08/12 17:22:29.96 6F6W/tUK.net
>>774
AppleじゃなくてもどのシステムでもWindows以外はデフォルトはPython2だよ
だからこそPython3にはシステムが依存せずに最新版選ぶ事ができるんだから

798:デフォルトの名無しさん
18/08/12 17:40:26.13 KcLXNYyk.net
インフラ言語の悲哀だな

799:デフォルトの名無しさん
18/08/12 18:20:40.98 U04Z7MLo.net
Go
Gnericsできることは中身なしのインターフェース型(interface{})できるからいらないって言う人もいて
確かにできるんだけども
欲しいって言ってる人はできるできないじゃなくて実行前にエラー教えてほしい(せっかく静的型付けなんだから)って人たちだから
できるからいらないって言っても納得しないんじゃないの?

800:デフォルトの名無しさん
18/08/12 18:26:35.82 U04Z7MLo.net
"で"できる

できる
になって意味不明の文章になってる
すまん

801:デフォルトの名無しさん
18/08/12 18:28:53.89 U04Z7MLo.net
>> 779
これ、redux に型情報書こうとしてるからこんなことになってるだけで、
int,doubleで2回も同じの書かなくていいみたいのだったらこんなことにならんけど...

802:デフォルトの名無しさん
18/08/12 18:33:03.21 DGxxzN5+.net
>>783
空インターフェイスが問題なんだから、それが絶対に使わないようにする方法があれば良いんだよね。
goにおいてはcode生成が一つの答えだったりする。

803:デフォルトの名無しさん
18/08/12 22:54:48.62 evL76NL4.net
>>781
え、 >>774 のリンク先にも書かれている2015年に公開された
Python の公式文書 PEP 394 もご存知ないんですか?
Windows以外の「どのシステム」というのが曖昧ですけど、
すでに主要な Linux ディストリビューションだと
デフォルトのインストールは Python3 になって移行を完了してます
・LinuxディストリビューションにおけるPython 3デフォルト化の流れ
 URLリンク(orangain.hatenablog.com)
だからこそ、それでも Python2 のデフォを維持しようとする
Apple は「老ガイ」なのか?と >>774 で問題提起したわけです
もう少し Python を勉強したほうが良いのではないかと思われます

804:デフォルトの名無しさん
18/08/12 23:23:16.06 Zm1Hi2Io.net
しがみついてるんじゃなくて放置してるって読めるけど

805:デフォルトの名無しさん
18/08/12 23:36:27.18 9Vi3m6jj.net
システムPythonなんか使わんしどうでもいい

806:デフォルトの名無しさん
18/08/13 01:13:05.86 uSgRX9ke.net
>>786
コード生成はひと手間かかるから敬遠してしまう。



807:コード書き換えたら再生成しないといけないし、 やっぱりC++やRustみたいな感じでジェネリクスくらいはできてほしいと思ってしまうなぁ。



808:デフォルトの名無しさん
18/08/13 01:46:54.15 GxmByJ3O.net
う、うん…

809:デフォルトの名無しさん
18/08/13 03:28:03.67 osySO0wY.net
前メジャーバージョンのサポートを十年以上続けてきた言語って何なんだろうね

810:デフォルトの名無しさん
18/08/13 07:08:12.23 99pSdlxg.net
>>790
ジェネリックってもの自体が実際それくらい手間かかるものって認識した方がいい。
だからエラー出た時に追いづらいわけで。
マクロにしろテンプレにしろ本質的には生成系だよ。

811:デフォルトの名無しさん
18/08/13 07:27:37.29 WcQzhT4t.net
rustがあるのにgoの未来に期待する必要ないよね

812:デフォルトの名無しさん
18/08/13 07:37:37.74 psyuonMt.net
>>793
goaとかコード生成を多用するフレームワークにさわると実感する。
生成されたコードは読みやすいし、
追いやすい。
ジェネリクスは書いてる最中はともかくエラーが出たときに、対応が難しい。
あとgoの言語仕様自体がコード生成に対して最適化されてると思う。

813:デフォルトの名無しさん
18/08/13 07:55:24.83 ECHWlVDH.net
>>787
そうなん?CentOSは保守的だからさておき
RaspbianもPythonって打つと2が動いてたから
まだまだ2がデフォなんだと思ってた
あとAndroidのPython3もいつになったらKivyに対応するんだかね

814:デフォルトの名無しさん
18/08/13 08:06:40.33 2cqRfkG9.net
>>796
対応してる
URLリンク(towardsdatascience.com)
URLリンク(qiita.com)

815:デフォルトの名無しさん
18/08/13 08:18:19.29 2M26tqwU.net
つい最近QPython3をスマホに入れてkivyのサンプル動かそうとしたら2でやれってメッセージ出たんだけど

816:デフォルトの名無しさん
18/08/13 08:21:11.42 2cqRfkG9.net
一言で言うと、馬鹿には無理

817:デフォルトの名無しさん
18/08/13 10:36:37.93 pnDShR42.net
ジェネリクスのエラー対応が難しいってよくわからないなあ・・・
ジェネリクスでエラーでるって言っても複雑な型地獄にはまって出るものと、
結局実行時にエラーになるから教えてくれるものがあるし
後者なら別にエラー直すの難しくない
型地獄にはまるのって


818:関数型言語や関数型インスパイアにフレームワークで厳密に型定義しようとした時しか思いつかない… あと、ジェネリクスって言っても文法上は同じでも種類があって C++… 超高機能なマクロみたいなもの 全部インライン展開される(実行効率はいい) コンパイルに時間がかかるし、実行ファイルサイズが膨れ上がる Java… Java バイトコード上は generics に対応していない Java コンパイラがキャストを自動的に挿入してくれる いわゆる「型消去」 C#… ILにgenerics 用の命令がある ャストの分のコードが減って実行効率がいい ボクシング不要 って種類がってGoはどれになるか... > goの言語仕様自体がコード生成に対して最適化されてると思う。 ここまで書いといてあれだけど 確かにこれは同意だなあ



819:デフォルトの名無しさん
18/08/13 11:50:08.24 uSgRX9ke.net
>>794
RustがGCで動けばRust使ってた。
所有権システムがややこしくて挫折した。
>>793
C++使ってたことあるから、エラー出たときの追いづらさについては、個人的に少々目が瞑れる。
Goで新しく実装されるなら、C++よりはマシにはなるだろう。

820:デフォルトの名無しさん
18/08/13 12:05:41.62 oPzUww3H.net
これ以上有象無象のプログラミング言語を増やすな
全言語LLVM対応してよ

821:デフォルトの名無しさん
18/08/13 12:21:57.16 BGJ7CoIJ.net
そんなことは無理なのは歴史が証明してる

822:デフォルトの名無しさん
18/08/13 12:23:51.46 xXruU6Jo.net
所有権システムって、コンパイラに怒られる怒られない関係なく、C++使ってたことがあると言うなら考えていて当然だし、適応できて当然というか感謝するレベルだと思うんだけど、
何でrustアンチは「C++が書ける」みたいなハッタリかますの?

823:デフォルトの名無しさん
18/08/13 12:32:59.05 HlXiUzAE.net
ややこしくて挫折したと言っているんだから、別にアンチではないでしょ

824:デフォルトの名無しさん
18/08/13 12:35:54.83 xXruU6Jo.net
確かにアンチでは無いか。
言い方が悪かったな。すまん。
所有権意識しない奴がC++書けるって言っても、全然書ける気がしない違和感の事を言いたかった。

825:デフォルトの名無しさん
18/08/13 13:30:54.99 pnDShR42.net
ただの入力補完はもう古い!
人工知能がコーディングを補助!
Visual Stuio IntelliCode
URLリンク(visualstudio.microsoft.com)
・無料かつオープンソース
・Githubでスターの多いリポジトリで機械学習
・あなたのコードの文脈を理解した提案
・今のところC#のみ対応、別言語も提供予定

826:デフォルトの名無しさん
18/08/13 15:55:14.56 dTuvNye4.net
所有権システムの理解と所有権の意識は別の話だと思うけどな
C++と違って型パラメータでライフタイムの整合性取る必要あるし
今のC++はコピー上等の値型指向を右辺値参照でカバーする感じなところなど考え方がやや違う

827:デフォルトの名無しさん
18/08/13 17:48:17.15 HlXiUzAE.net
rustがgoより劣っているのは学習コストの高さと開発支援ツール(racer/rls)がポンコツであることくらいだけども、誰でもコストが払えるわけじゃないし、ボローチェッカーにうんざりする気分は分かる

828:デフォルトの名無しさん
18/08/13 19:16:22.47 99pSdlxg.net
>>808
実際にrust書いてる人でも引数のライフタイムがそこまで全く違うようなコードは
普通書かないでしょ。
あれを複雑に設定しなきゃならんシチュエーションはそもそも設計ミスってる。

829:デフォルトの名無しさん
18/08/13 20:57:16.91 Vpwl+vyM.net
C++ならポインタにはdeleteの義務があるやつとないやつがある
参照カウントがあればカウントが1のとき義務があるのは誰でも理解できる
最適化などと称してカウントを省略するから分からなくなる
そもそもdeleteの義務のことを所有権というから意味が分からない

830:デフォルトの名無しさん
18/08/13 21:22:57.94 TbADB80j.net
C++書ける人ならRustに感謝するってそんなこと言ってるのRustプログラマだけだろ
こんな仕様に感謝したこと一度もない
Rustの二次元配列の要素のswap
URLリンク(qiita.com)

831:デフォルトの名無しさん
18/08/13 21:56:10.59 Vpwl+vyM.net
MS嫌悪は病気と言ったというLinusが嫌悪したC++を書ける人だけが石を投げなさい

832:デフォルトの名無しさん
18/08/13 22:35:37.85 SgYeK0xG.net
>>807
これに頼ったインチキプログラマが大量に湧いてきそうで怖い

833:デフォルトの名無しさん
18/08/13 23:01:44.24 LpvsV7I/.net
ルーストにゴールデンカリバーン(GC)が実装されたら最強カードになるとオモw

834:デフォルトの名無しさん
18/08/13 23:47:48.71 CDXYvfVH.net
Rust(ラスト)ね
発音: r'st

835:デフォルトの名無しさん
18/08/13 23:50:02.28 CDXYvfVH.net
5chは発音記号は無理なのか…

836:デフォルトの名無しさん
18/08/13 23:51:09.53 WcQzhT4t.net
>>812
何度もその仕様を憎むコードを書いたの?
unsafe事案なんだからunsafeで書けばいいじゃん

837:デフォルトの名無しさん
18/08/13 23:54:51.00 uSgRX9ke.net
>>806
C++使ってたときは、所有権(どこでdeleteさせるか)に関して迷うほど複雑なことはしてなかったし、
C++書けるってほどじゃないです。ごめんね。
Rustは特にクロージャ絡んでくると所有権がややこしくて挫折した。
パフォーマンス気にしてRust使ったほうがいい場面もあるかもしれないけど、
GC使って楽できるならそうしたいっていう。

838:デフォルトの名無しさん
18/08/14 00:16:21.60 6wL1SHPP.net
>>806
正論はときに人を傷つけるからやめとけw
kuso設計をスマポ()で誤魔化してる連中には
所有権も借用もライフタイムもまだ早い

839:デフォルトの名無しさん
18/08/14 00:20:28.33 Ur70Uvut.net
rustの1番の問題点はハスケルと一緒でこういう選民思想持ったバカが多いって事なんだがまあ気づかないで言語毎消え去るんだろうな。

840:デフォルトの名無しさん
18/08/14 00:24:17.94 UmfJiPSG.net
それにしても選民思想って言葉が好きだな
そんなにお気に入りなのか?

841:デフォルトの名無しさん
18/08/14 00:25:37.76 GbAAvXu+.net
よく選民思想だって言われてるけど単に一生懸命勉強したほうがいいよってことでしょ
プログラマにとってはそれが仕事じゃん
goとrustで実行に必要なコンピュータリソースに5%差があるならビジネス的には大きなアドバンテージになるのに、ややこしいからという理由で放棄するのはプログラマとしてどうかと思うよ

842:デフォルトの名無しさん
18/08/14 00:36:01.66 6wL1SHPP.net
その位置からだと選民思想に見えちゃうんだなw

843:デフォルトの名無しさん
18/08/14 00:37:36.39 UmfJiPSG.net
>>823
よく言われてるって…
今までこのスレで選民思想って言ってたの多分全部同一人物だと思うよ
俺の記憶にあるかぎりではどれも主張と口調がすごく似通ってるし…

844:デフォルトの名無しさん
18/08/14 00:40:35.89 Ur70Uvut.net
まあいいけどね。。小難しく書くことに価値があると思ってるならそうしてればいいさ。
そのうち誰からも相手にされなくなるだけだから。

845:デフォルトの名無しさん
18/08/14 00:45:34.31 6wL1SHPP.net
その位置からだと「小難しく書くことに価値があると思ってる」ように見えるんだなw

846:デフォルトの名無しさん
18/08/14 00:47:13.83 UmfJiPSG.net
>>826
2行目は壮大なブーメランになると予想

847:デフォルトの名無しさん
18/08/14 09:58:27.32 EmNLnRJK.net
まあこれはインチキ人工知能が人間に勝つための作戦だと思う
人間が小難しいことを考えたら批判する
人工知能が小難しいことを考えたらほめてほめてほめまくる

848:デフォルトの名無しさん
18/08/14 10:11:21.24 gNz6xl68.net
なんの目的もなく「小難しい」事を書いてるわけ無いでしょw
そもそも理解すれば小難しくも何でもないし。
選民思想って言葉は、裏表あるが、選民の方の定義がよくわからん。
ついて行けた人間って事?
なら、ついていけなかった自分の心の平静を維持するために
「あいつらは理解できる人間で徒党を組んで理解できない人間をバカにしている」と思い込まないと仕方ないからのように見えるなぁ。
そうなると完璧に敗北を認めたような発言なんだし、選民思想云々と言って恥を晒さずにおとなしくしてりゃいいんじゃないかな?

849:デフォルトの名無しさん
18/08/14 11:56:14.73 Z5GKQQI4.net
いきなりどうした

850:デフォルトの名無しさん
18/08/14 17:30:29.19 YfFk5ERN.net
自分たちのことを選ばれた民なんて自称する馬鹿は(滅多に)いないので
外から呼ばれる時の言葉に決まってる、という当たり前の話を長く書いてるだけ

851:デフォルトの名無しさん
18/08/14 18:56:49.78 Z5GKQQI4.net
大丈夫か?嫌なことでもあったのか?

852:デフォルトの名無しさん
18/08/14 21:12:37.06 ad4gD3Tc.net
あったんだろうなw

853:デフォルトの名無しさん
18/08/15 03:37:09.83 ayhfUCSc.net
>>816
板ごとの設定による。
言語学板とかは書ける。

854:デフォルトの名無しさん
18/08/15 06:53:04.88 APlu/HCY.net
>>835
何言ってだこいつ

855:デフォルトの名無しさん
18/08/15 07:14:29.89 bFtKUg2A.net
rustで組み込みできないか調べ始めてるんだが
メモリまわり完全に使うがわで制御可能?
暗黙的にヒープ使われると見積りできなくなるからいやなんだが

856:デフォルトの名無しさん
18/08/15 07:16:40.13 bFtKUg2A.net
c代替言語探しても全部そのへんでアウトなんだよね
妥協して適当なヒープ見積りで作るぐらいならcでいいやってなる

857:デフォルトの名無しさん
18/08/15 07:25:16.84 1RF925rl.net
ヒープを使わないのは可能
ヒープを使うときはBoxに入れるので宣言的

858:デフォルトの名無しさん
18/08/15 07:31:23.45 4X7dRJWE.net
平行処理向け、OOP、例外なし、漸進的型付け
URLリンク(inko-lang.org)

859:デフォルトの名無しさん
18/08/15 07:40:18.88 buain2zE.net
このスレ見たことも聞いたことも
無いような言語が出てきて勉強になるw

860:デフォルトの名無しさん
18/08/15 08:06:57.88 5lRW1CT6.net
>>836
文字化けするかどうかの話だろ

861:デフォルトの名無しさん
18/08/15 15:26:38.61 fksu3zh2.net
このスレで教えられた見たことも聞いたこともないような言語:
ponylang
plasmalang
redlang
nimlang
minlang

862:デフォルトの名無しさん
18/08/15 15:51:44.24 KGwvBnlL.net
nimは良さげだけどなぁ

863:デフォルトの名無しさん
18/08/15 16:29:44.37 fSWxnCwv.net
lang大杉

864:デフォルトの名無しさん
18/08/15 16:36:47.86 x9PTY49Y.net
Wikipediaにあるプログラミング言語のリスト
1950年代 FORTRAN LISP ALGOL RPG COBOL
1960年代 CPL BASIC PL/I APL BCPL Simula LOGO B
1970年代 Forth Pascal C Prolog Smalltalk Scheme ML AWK SQL Ada
1980年代 C++ Objective-C Common Lisp Eiffel Erlang Perl Mathematica J
1990年代 Python Tcl Haskell Visual Basic Ruby Lua Delphi Java JavaScript PHP OCaml SuperCollider R ECMAScript
2000年代 C# Scala D F# Go Nim
2010年代 Dart Ceylon Elixir Hack Swift Rust Perl 6 Elm Julia Kotlin
90年代は豊作だったな。

865:デフォルトの名無しさん
18/08/15 16:41:03.73 dVNTKSWz.net
6っていう言語があるのかと思った

866:デフォルトの名無しさん
18/08/15 17:18:12.79 xZmFZlxN.net
>>839
なるほどそんな感じなのか
ヒープのライブラリをすげ替えるのは可能?

867:デフォルトの名無しさん
18/08/15 17:20:39.18 xZmFZlxN.net
ちょっとスレ違いでごまんなさい

868:デフォルトの名無しさん
18/08/15 18:17:20.87 RXe4E/ho.net
>>848
すげ替えとはどんな意味?
Boxは特別扱いされてるから挙動を変えたりはできないと思う
より具体的な話はrustスレがよいでしょう

869:デフォルトの名無しさん
18/08/15 19:49:02.22 q0gKij48.net
chapelを誰かレビューしてください。気になってるけど試してないんだ

870:デフォルトの名無しさん
18/08/15 21:02:28.91 z4s0ucNO.net
>>848
アロケータを変えたいという意味で聞いてるのなら一応可能だったはず。
「一応」っていうのは確かNightly(不安定版)だったはずってのと
使ったこと無いから正直俺もよく分かってないって意味。
因みにデフォルトのアロケータはjemallocだよ。

871:デフォルトの名無しさん
18/08/15 22:26:34.97 APlu/HCY.net
>>840
最初から漸進的型付とかバカちゃうか
型無し糞言語だからしょうがなく漸進的型付と型推論入れて糞をごまかしてるのに
最初から糞丸出しの糞とか糞以外の何糞なんだ?

872:デフォルトの名無しさん
18/08/15 22:55:11.78 I8nQgBat.net
そりゃUnkoだろ

873:デフォルトの名無しさん
18/08/15 23:41:03.78 APlu/HCY.net
UNKOLANGwwwwwwwwwwwwwwwwwwwwwwwwwwww
バカじゃねwwwwwwwwwwwwwwwwwwバーカバカwwwwwwwwwwwwwwww

874:デフォルトの名無しさん
18/08/15 23:41:33.78 E3SEeusM.net
型無しを見下すのも選民思想のようなものだな
HaskellやRustはこいつの手口に学んだのだろう

875:デフォルトの名無しさん
18/08/16 00:05:20.96 8FbEg6pQ.net
でも型のない言語で作られたプロジェクトの9割がゴミだったわ
PHP 5系とかほんと酷かった

876:デフォルトの名無しさん
18/08/16 01:31:52.58 5NhoFyKm.net
サーバーがゴミ
スマホを見習うべき
修理するより10割捨てて買い換えろ

877:デフォルトの名無しさん
18/08/16 08:43:40.33 idL3d23y.net
最初は型ありで、動的言語台頭してきて、
それがまた型ありのほうが良いってなった。
繰り返してるのかな?
また、将来動的言語の方が良いってならないか?

878:デフォルトの名無しさん
18/08/16 08:54:14.64 kykuKPql.net
動的と静的が合体したのがあればいいんだがな(´・ω・`)

879:デフォルトの名無しさん
18/08/16 09:04:42.23 RDv9Hkfh.net
型推論が進化するとむしろ人間が下手に型を書くと推論の邪魔になるから最小限しか書かなくなるようになる

880:デフォルトの名無しさん
18/08/16 09:11:01.01 RvAH1val.net
>>860
動的型付け+型ヒンティングがそれだろう。TypeScriptが理想に近いと思う。

881:デフォルトの名無しさん
18/08/16 09:15:57.05 /RrUMrAm.net
個人的には静的型ベースにdynamic導入が好み

882:デフォルトの名無しさん
18/08/16 09:22:55.02 xlcF1CtQ.net
>>859
多分君が言ってる「型」ってのは、文字列、整数、浮動小数点とか構造体の事じゃね?
初期に普及したCPUアーキテクチャでは、そういった原始的型の実現が重要だった。
ソフトウェの組み方が、プロセス指向、データ指向、オブジェクト指向、メッセージ指向と拡張されるに連れて、必要な型も拡張されてきた。
で、現在「型」って一般的に言ってるのはオブジェクト指向用なんだが、その一方でC言語の入門編では古代の型を教えるから、大抵の人は混乱してしまう。

883:デフォルトの名無しさん
18/08/16 10:14:16.07 MX1EiAP9.net
オブジェクト指向用()

884:デフォルトの名無しさん
18/08/16 10:35:09.79 MHncYzYT.net
最近は動的な型解決が主流なんだろ?

885:デフォルトの名無しさん
18/08/16 11:27:59.24 z7UNiM5y.net
動的にも静的にも良いところはあるんだし、一概にどうとは言えんだろう。
動的型言語に慣れてるやつに言わせれば、コンパイラに指摘されるまでエラーに気づかないのは甘え、テスト不足、みたいな極論になるぞ。
オブジェクト指向もずいぶんアラン・ケイが考えたものと乖離してる気はするしな。
smalltalkは放置するとして、erlangみたいなメッセージ志向の言語はもう少しあっても良いと思う。

886:デフォルトの名無しさん
18/08/16 12:14:27.85 ssQlf9Jz.net
コンパイル通れば安全!IDEが全部教えてくれる!
これぞ最強モダン開発

887:デフォルトの名無しさん
18/08/16 15:59:24.18 WX4SaRqH.net
>>852
ありがーと!

888:デフォルトの名無しさん
18/08/16 17:52:13.43 tq1QhB7i.net
我が社ではサーバ側をrustでリプレイスし始めた
今のところ楽しい

889:デフォルトの名無しさん
18/08/16 17:58:22.15 c6KW4Xnk.net
>>870
どの言語からRustにリプレースしてるの?

890:デフォルトの名無しさん
18/08/16 17:59:57.32 RuepLRLC.net
>>870
ずいぶん思い切ったな

891:デフォルトの名無しさん
18/08/16 18:06:45.11 tq1QhB7i.net
php, java(or kotlin), c(apache module), nginx(lua module), python, ruby
など一通り
負荷の高いところからちょっとずつだけど、phpのは一つ終わった

892:デフォルトの名無しさん
18/08/16 18:10:00.12 kykuKPql.net
>>870
御社すげえな!

893:デフォルトの名無しさん
18/08/16 18:17:13.11 tq1QhB7i.net
弊社ちっぽけな会社なもので、ランニングコストを抑えて価格で勝負しないとやってゆけないのです

894:デフォルトの名無しさん
18/08/16 19:23:57.75 gU4Rlb7s.net
小回りが効くってやつだね

895:デフォルトの名無しさん
18/08/16 19:46:40.67 W9G0HQT/.net
rust案件として俺を雇ってくれない?
仕事なら勉強しそう。TypeScriptなら仕事で使っとります

896:デフォルトの名無しさん
18/08/16 20:15:08.09 wp39v8uB.net
最終的にどれくらい改善されたのか気になるから教えてほしい

897:デフォルトの名無しさん
18/08/16 20:28:34.40 Ffi6604z.net
自分達の稼働コストは無視か
典型的なダメベンチャーだな

898:デフォルトの名無しさん
18/08/16 21:16:00.37 JsfNKmaX.net
偉い上から目線で評価しはりまんなあ

899:デフォルトの名無しさん
18/08/16 21:35:07.40 RTeJ6hpe.net
オープンソースのようにコストを公開する習慣がないから
高いという証拠も安いという証拠もない
だから無視されるんだ

900:デフォルトの名無しさん
18/08/16 22:00:51.30 T9wcum01.net
>>877
仕事じゃなくても勉強しないと!
>>878
元のコードの良し悪しについて無視するならば、phpのシステムはcpu時間が1/2、メモリ1/50、レイテンシ1/2、スループット3倍になった
>>879
無視してないよ

901:デフォルトの名無しさん
18/08/16 22:04:38.50 Ffi6604z.net
>>882
比なんかどうでもいいから金額教えて

902:デフォルトの名無しさん
18/08/16 22:31:32.06 kn91KwfN.net
まあまさか月額百万以下とか言わないと信じてるけど、
動画配信のような本質的に高負荷な事業を除けば、クラウド費用が問題になるのはそもそもビジネスとして成立してないやろ
もしそんな状況なんだったらコスト削減なんかよりピボットして開発に金使うべきだわ

903:デフォルトの名無しさん
18/08/16 22:49:23.38 /AANAq9H.net
サーバを維持&増強するコストが半分になると考えればアリじゃないの?

904:デフォルトの名無しさん
18/08/16 23:10:38.07 T9wcum01.net
>>883
なんの金額?
>>884
なんの金額?
>>885
アリアリだよ

905:デフォルトの名無しさん
18/08/16 23:14:03.67 kn91KwfN.net
>>886
クラウド費用を元々いくらだったのをいくらに削減できたかに決まってるでしょ
金額ね

906:デフォルトの名無しさん
18/08/16 23:23:22.53 yowupTvC.net
そんなもんに決まってたの?w

907:デフォルトの名無しさん
18/08/16 23:24:10.16 KZ+joW8f.net
なんでそうえらそうなんだお前はw

908:デフォルトの名無しさん
18/08/16 23:43:02.90 T9wcum01.net
>>887
オンプレだからそういう計算はできないなあ
ちゃんとペイするからそう心配しないでよ

909:デフォルトの名無しさん
18/08/16 23:46:47.80 7UI9K+jh.net
Rustって国内書籍これくらいしかないのか
URLリンク(www.amazon.co.jp)

910:デフォルトの名無しさん
18/08/16 23:50:05.89 yowupTvC.net
宣伝すんなカスが
マイナス評価つけるぞコラ

911:デフォルトの名無しさん
18/08/16 23:52:22.29 Ffi6604z.net
>>890
だったらクラウドに移行するか、データセンターに運用丸投げするのが先じゃね
手間も含めたらよっぽどコスト削減になると思うけど

912:デフォルトの名無しさん
18/08/16 23:58:40.26 0R5k2Z2g.net
もはや何が論点なのかわからない

913:デフォルトの名無しさん
18/08/17 00:04:51.67 iKck7/UT.net
何このスレ

914:デフォルトの名無しさん
18/08/17 00:14:22.68 3R/NRIs6.net
>>892
ここでアピっとけば誰かがビジネスチャンスだと思ってもっととっつきやすい本執筆してくれるんじゃないかっていうなんかそういうのだよ

915:デフォルトの名無しさん
18/08/17 00:22:10.39 nb1Don8C.net
>>893
そんなことはないんだけど、残念ながら納得いただけるだけの材料を提供することはできないからなあ

916:デフォルトの名無しさん
18/08/17 00:37:35.02 5IhifcNY.net
単純に自分の金が欲しいという話ではないんだよな
自分だけでなくみんなが金を欲しがって欲しいという話だから面倒臭い

917:デフォルトの名無しさん
18/08/17 01:23:14.14 PG+Ia7h3.net
君らはRustに親でも殺されたのかね

918:デフォルトの名無しさん
18/08/17 07:33:34.97 eJodi2Ev.net
今出向してるベンチャーで工数が3倍になるのを覚悟してでも社内システムの開発用言語を関数型にしようとしてる。
最初はHaskell+elmだったけど、エコシステムが腐っているという理由によりScala+elmに変わった。rustは最初から除外されてた。学習コストが半端ないという理由により。
(まともに使えるのに2ヶ月かかる)

919:デフォルトの名無しさん
18/08/17 07:40:59.38 3zz7SNuw.net
Scalaって最近微妙によくきくな
昔いろいろ入れすぎて一瞬でオワコン化したって聞いたが

920:デフォルトの名無しさん
18/08/17 08:04:37.32 M6ILHp7j.net
Rustのコードを書くと借用チェッカにコテンパンにされて工数かかる、とでも思ってんのかねぇ。
実際は真面目に設計してりゃそこまで問題でもなかろうに。

921:デフォルトの名無しさん
18/08/17 08:05:36.14 wPZU9Mur.net
Scalaで生き残ってるのはSparkだけだよ
Sparkがビジネスで受け入れられ始めた頃にKotlinやDottyで無茶苦茶になってアーリーアダプタが一斉に引き揚げ、負債として残っちゃった

922:デフォルトの名無しさん
18/08/17 08:07:51.84 3R/NRIs6.net
コンパイルと言えばTypeScriptってめっちゃエラー出てるのにちゃんとjsファイル生成されるのには笑う

923:デフォルトの名無しさん
18/08/17 08:08:05.32 xjFqJl5K.net
>>900
> 工数が3倍になるのを覚悟してでも社内システムの開発用言語を関数型にしようとしてる
これはなんで?

924:デフォルトの名無しさん
18/08/17 08:22:15.36 /a+SCakG.net
関数型なら、Elixir を使えば?

925:デフォルトの名無しさん
18/08/17 08:24:57.45 lGFS5gdF.net
声の大きい関数型信者がいただけでしょ
社内システムだとビジネス観点の統制もないだろうし
俺も社内向けの仕事するときは毎回新しい言語使ってるぞ

926:デフォルトの名無しさん
18/08/17 08:44:50.39 PxGxdgOM.net
まあ、社内システムっていつでもごちゃごちゃになるもんだし、本当にできるなら関数型にすればテストは楽だね。
俺が作ってたシステムは、言語は関数型ではないけど、何が何でもキュー処理システムが処理する結果が正で、それ以外の書き込み許してなかったから、ジャーナルを流し直すとデグレてないかテストができるよ。
業種の問題なんだろうけど。売ってるシステムも、キュー処理システムだけが書き込み出来


927:るようになってる。 非同期対応とかも、もともと非同期を前提にしてたから何も困らんし、キュー処理システムは処理ロジックとして何でも呼び出せるからモックにしようが本番にしようがなんとでもなったな。 変な言語で出来てるけど、どんな言語に持ってっても移植できると思うわ。



928:デフォルトの名無しさん
18/08/17 09:21:55.29 73aOPBuv.net
意識高い系のエンジニアに対してビジネスサイドによる適切な方向付けができてないと、
こうやって誰も求めていない非機能要件を勝手に創造してオナニーを始めるんだよな

929:デフォルトの名無しさん
18/08/17 09:31:08.74 eJodi2Ev.net
工数3倍というのは学習コストを加味してると思う。仕事で勉強していいとか羨ましい。
elixirも話題になったけど、結局erlangに精通する必要性が出るから除外された。

930:デフォルトの名無しさん
18/08/17 09:33:05.90 eJodi2Ev.net
>>908
すべての変更処理はイベントとしてキューイングして処理するようにしたってことかね?

931:デフォルトの名無しさん
18/08/17 09:51:00.01 RgiGOjCt.net
Elixirは関数型として見ると微妙なんだよなぁ。
F#から借りてきたパイプライン演算子はなんでああなっちゃったんだろうか。
あれじゃただのUFCSなんだからドットにしとけばよかったのに。

932:デフォルトの名無しさん
18/08/17 10:36:43.40 PxGxdgOM.net
>>911
そうそう。
売り物の方が、監査証跡と全データの変更履歴が必須だから。
社内システムにも持ってきてるが、今まで事故ったのは入力ミスに赤伝切らずにDB書き換えた事由来ばっかり。

933:デフォルトの名無しさん
18/08/17 12:20:43.37 A0flNsox.net
俺も初めて任されたwebアプリケーションスタートアップでJSF選んだの後悔してるから変えたいわ

934:デフォルトの名無しさん
18/08/17 15:48:35.69 QW1TB1TE.net
>>900
Haskellのエコシステム、そんなにひどいのか。
具体的にはどういう所がダメなんだ?
確かにScalaはなんとなく良い感じなのは同意。

935:デフォルトの名無しさん
18/08/17 16:38:51.06 KYMgSs7X.net
バージョン依存矛盾地獄が待ってる

936:デフォルトの名無しさん
18/08/18 07:53:33.41 cIuR0GWn.net
他言語なら他のインストール方法試すなりコード弄るなりで対処しようがある感じだがhaskellはあかんわ。。

937:デフォルトの名無しさん
18/08/18 07:56:45.72 cIuR0GWn.net
>>907
自分のプロジェクトで使って最後までメンテするんなら別にいいと思うが
人のライブラリに無理やり突っ込んで人を実験台にしてくる輩は死ねと思う。

938:デフォルトの名無しさん
18/08/18 08:37:03.46 tQwqSX1E.net
stack使ってもダメ?

939:デフォルトの名無しさん
18/08/18 10:01:38.67 a1RXOr9m.net
>>867
>動的型言語に慣れてるやつに言わせれば、コンパイラに指摘されるまでエラーに気づかないのは甘え、テスト不足、みたいな極論になるぞ。
そんな奴見た覚えはないが、新人君みたいなテスト=単体のインターフェーステストって認識なのかもね。

940:デフォルトの名無しさん
18/08/18 10:07:23.30 NmE0jaYM.net
>>918
「関数型」と言ってる奴にとってはHaskell自体が実験台でしょ
パラダイムの方に興味があるということは実装のメンテナンスは期待できない

941:デフォルトの名無しさん
18/08/18 10:28:33.16 h0kGojvw.net
でも今どきピュー(P)と吹けば(H)壊れる(P)ウンポコペチプー選ぶガイジよりはマシだろ

942:デフォルトの名無しさん
18/08/18 10:36:18.90 /9y7PjMS.net
>>922
>壊れる(P)


943:デフォルトの名無しさん
18/08/18 10:43:47.47 MzCF3blw.net
dart2のレスがないとは

944:デフォルトの名無しさん
18/08/18 11:09:02.28 EiUgDlQT.net
>>916
依存"矛盾"地獄ってどゆこと?

945:デフォルトの名無しさん
18/08/18 11:13:11.94 h0kGojvw.net
簡単に言えばPHPよりゴミってこった

946:デフォルトの名無しさん
18/08/18 11:20:32.47 cIuR0GWn.net
>>921
別に自分で実験する分にはいいと思うが
メンテナンス性も含めてそのパラダイムが有効か検証しないと意味ないだろ。
今時メンテナンス性を考慮しない言語なんてありえんわ。

947:デフォルトの名無しさん
18/08/18 11:25:02.02 NmE0jaYM.net
HaskellはCのライブラリをいくらでも取り入れるのでCが分からないと地獄
「全部自動化すればCが分からなくても問題ない」という説を信じたら地獄
一方、JavaやJavaScriptは鎖国のようなことをやってCを使わないようにした
この問題についてはパラダイムは関係ない

948:デフォルトの名無しさん
18/08/18 11:38:12.60 24N2f8T2.net
Googleは当初Dartでやろうとしてた事にはTypeScript採用したんじゃなかったっけ?

949:デフォルトの名無しさん
18/08/18 11:39:33.27 cIuR0GWn.net
>>928
haskellの評価順序とcの評価順序のバインディング考えるだけでも頭痛くなるわ。
そこに特有の最適化仕の把握しとかないと使えんだろうし、そんなもん普通のプログラマが使えるか。
>一方、JavaやJavaScriptは鎖国のようなことをやってCを使わないようにした
javascriptは知らんがjavaもc呼び出しはやるだろ。メモリモデルの違いで苦労はするがcの他からの呼び出しやすさはやっぱすげーと思う。

950:デフォルトの名無しさん
18/08/18 11:46:35.61 NmE0jaYM.net
機械学習がPythonになったのは、JavaでCを呼び出していいのか躊躇したからだと思うよ

951:デフォルトの名無しさん
18/08/18 11:58:21.02 cIuR0GWn.net
>>931
個人的にはdeeplearningの層を明示的に静的型付で表現するのがあんまり相性良くないから
と思ってるけど。javascriptでもある程度ライブラリ出し始めたところ考えるとそうかなと思う。

952:デフォルトの名無しさん
18/08/18 12:01:16.82 Y8rtZpa1.net
マルチプラットフォーム実装を前提とするライブラリならともかく
アプリ側からC呼ぶとか何のためのJVMか分からんがな

953:デフォルトの名無しさん
18/08/18 12:02:08.26 k5A8heiz.net
pythonは読みやすさからサンプルコードとしてよく使われていたのが
そのまま使われ続けただけ。

954:デフォルトの名無しさん
18/08/18 12:12:12.35 bDjLpxd+.net
何のためのjvmというが現実にはcのコードをポートする方が楽だからな
jvm が使えないプラットフォームにも対応できるし

955:デフォルトの名無しさん
18/08/18 18:16:58.82 edSxl1bD.net
>>920
そんな奴いっぱいいるぞw

956:デフォルトの名無しさん
18/08/18 19:09:18.34 MKXbJxWa.net
もう全部Pythonで良くね?

957:デフォルトの名無しさん
18/08/18 20:09:25.76 wvv3XRhu.net
いやだよあんな化石低速言語

958:デフォルトの名無しさん
18/08/18 20:13:51.36 vTLaQJ8N.net
Cythonやctypesを使えば問題ない

959:デフォルトの名無しさん
18/08/18 20:38:22.31 n6JPMkJF.net
数値計算に限ればnumbaでめっちゃ速くなる

960:デフォルトの名無しさん
18/08/18 20:53:48.25 yeTG0VXv.net
最近知ったけどc--ってあるのね

961:デフォルトの名無しさん
18/08/18 21:03:35.36 NYofKyoT.net
>>937
コレクションもまともに扱えない言語は遠慮します
>>430,431

962:デフォルトの名無しさん
18/08/18 21:20:30.37 vTLaQJ8N.net
逆にPython アンチ普段何使ってんの?

963:デフォルトの名無しさん
18/08/18 21:28:34.28 24N2f8T2.net
RustはWebAssemblyを生成できるって点には魅力あるんだけどな

964:デフォルトの名無しさん
18/08/18 22:15:20.95 LJUhZIsV.net
rustのそれは今のところおまけだしょうに

965:デフォルトの名無しさん
18/08/19 01:14:48.68 5UDm2AQt.net
Cとの親和性だとLuaが楽で好き

966:デフォルトの名無しさん
18/08/19 02:12:43.21 a8MWQVyh.net
>>930
>haskellの評価順序とcの評価順序のバインディング考えるだけでも頭痛くなるわ。
どうせIOモナれば先行評価だろ。

967:デフォルトの名無しさん
18/08/19 07:35:19.41 TW9SGbND.net
lua使ってるやつはゲーム作りたいだけ

968:デフォルトの名無しさん
18/08/19 10:32:37.43 e+xSqcBJ.net
そうなるわな
アプリを作らない言語は生産性がないと言われて作ってみたら
○○を作りたいだけの言語は汎用性がないと言われる

969:デフォルトの名無しさん
18/08/19 15:32:14.93 ZborDYxU.net
LuaとelixerのENDが許せない

970:デフォルトの名無しさん
18/08/19 16:49:31.99 446qpG4D.net
>>936
そりゃ極論かまってちゃんはどんな世界にも居るだろ。

971:デフォルトの名無しさん
18/08/19 16:52:51.52 446qpG4D.net
>>942
趣味で重箱の隅に拘りたいやつならともかく、プロジェクトでは十分じゃん。
「次世代」ってビジネスの事だよ?


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch