いざ、語ろうぞ。
スレタイ超過のため、一部省略。
その他もウェルカム。
前スレ
次世代言語議論スレ[Go Rust Kotlin Scala]第4世代
http://mevius.2ch.net/test/read.cgi/tech/1492631007/
次世代言語議論スレ[Go Rust Scala Haskell]第5世代 [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
2017/06/13(火) 08:54:07.99ID:O1HnBMDk
2017/06/13(火) 09:00:09.39ID:O1HnBMDk
よく話題にあがる言語
Go, Rust, Scala, Haskell, kotlin, Erlang
対象言語のどこがクソかでなく、どこが次世代かで語りましょう
🙅 Rustはコンパイルが通らないからクソ!
🙆 Goは学習コストが低い!
Go, Rust, Scala, Haskell, kotlin, Erlang
対象言語のどこがクソかでなく、どこが次世代かで語りましょう
🙅 Rustはコンパイルが通らないからクソ!
🙆 Goは学習コストが低い!
3デフォルトの名無しさん
2017/06/13(火) 09:31:03.24ID:WHieLZYY 標準的なライブラリは言語の持つ重要な文化の一つだ
Pythonが機械学習で天下を取った理由にはNumpyが大きく寄与している
データ構造としてNumpyを使えば他の大抵のライブラリと連携を取れる。例えば、TheanoやChainerで機械学習して、結果をそのままNumpyで加工してmatplotlibで出力できる。
だからPythonは機械学習分野で流行した。この裏にはNumpyのもつ大きな文化が存在する
言語の持つ文化と流行には密接な関係があるだろう
Pythonが機械学習で天下を取った理由にはNumpyが大きく寄与している
データ構造としてNumpyを使えば他の大抵のライブラリと連携を取れる。例えば、TheanoやChainerで機械学習して、結果をそのままNumpyで加工してmatplotlibで出力できる。
だからPythonは機械学習分野で流行した。この裏にはNumpyのもつ大きな文化が存在する
言語の持つ文化と流行には密接な関係があるだろう
2017/06/13(火) 09:38:21.87ID:skBOcwaB
最近4.1出たのにもはや誰も話題にしないF#くんかわいそう
5デフォルトの名無しさん
2017/06/13(火) 09:45:32.13ID:kbGi5rrA F#くん言語仕様は悪くないけど使い所がわからん
2017/06/13(火) 10:05:00.47ID:O1HnBMDk
>>4
俺は普通にプロダクションのコードでF#書いてるよ
俺は普通にプロダクションのコードでF#書いてるよ
7あ
2017/06/13(火) 10:29:07.84ID:MZxut8VL おお、お疲れ様。
そこまでアンチってわけでも無いがな。
手当り次第中途半端に取り込んだc#がそこそこ実用言語になってんのに、何やってんのあいつらって感じだけど。
どーせ入ったし、逆に最近のHaskellの良さをもっと教えて欲しい。
そこまでアンチってわけでも無いがな。
手当り次第中途半端に取り込んだc#がそこそこ実用言語になってんのに、何やってんのあいつらって感じだけど。
どーせ入ったし、逆に最近のHaskellの良さをもっと教えて欲しい。
2017/06/13(火) 10:36:45.13ID:o0nyK+Xq
Pythonの標準的文化って
JavaとC#とaltjsとスマホを完璧に無視したからできたんだよな
JavaとC#とaltjsとスマホを完璧に無視したからできたんだよな
2017/06/13(火) 10:49:04.84ID:WpoKav5t
2017/06/13(火) 10:50:40.06ID:VOf9DWNO
個人的には、OS標準の開発言語が一番使いやすいって結論になった
2017/06/13(火) 10:52:36.27ID:WpoKav5t
>>3
Juliaが生きるか死ぬかはNumPyとどう住み分けるかにかかってるだろうな
Juliaが生きるか死ぬかはNumPyとどう住み分けるかにかかってるだろうな
12デフォルトの名無しさん
2017/06/13(火) 11:34:29.62ID:KA4hHDRK13デフォルトの名無しさん
2017/06/13(火) 11:41:51.61ID:r6njVaEB OS標準てLinux=C, Windows=C++/C#, Mac/iOS=ObjC/Swift, Android=Java/Kotlin・・・こんな感じ?
14デフォルトの名無しさん
2017/06/13(火) 11:49:00.99ID:+kV5cJp9 Cは基本的にいい言語だけどラムダとクロージャがない所だけはどうにもならん。でもそれ以外は本当にいい言語だと思う
2017/06/13(火) 12:13:37.35ID:WpoKav5t
サードライブラリ管理が野良orOSのパッケージ管理依存の二択なとこも駄目というかここが致命的では
2017/06/13(火) 12:26:01.51ID:9bQyHle2
Goが2.0とかでジェネリクス入ったら、決着しそうじゃない?
2017/06/13(火) 13:00:17.07ID:WpoKav5t
Rustはトレイト境界の特殊化に束理論適用できるようになったら次世代っぽくなるか?
今はただの気難しい言語って感じで次世代感が薄い
今はただの気難しい言語って感じで次世代感が薄い
2017/06/13(火) 13:06:59.02ID:WpoKav5t
19デフォルトの名無しさん
2017/06/13(火) 17:58:36.02ID:/dWEWAyw Goはいらん
ScalaとKotlinはどっちかだけでいいけどKotlinが後発だからKotlinでいい希ガス
TypeScriptは実用的だけど次世代化と言われると微妙
Rustは他の言語にない機能多いから次世代
ScalaとKotlinはどっちかだけでいいけどKotlinが後発だからKotlinでいい希ガス
TypeScriptは実用的だけど次世代化と言われると微妙
Rustは他の言語にない機能多いから次世代
20デフォルトの名無しさん
2017/06/13(火) 18:04:11.72ID:+kV5cJp9 >>15
それってCのこと? Cは一切隠蔽しない文化だから、パッケージ管理ソフトとかの隠蔽してしまうものは基本的に相性悪いと思う。Cを書く者はライブラリも自分でMake installするし、インストール場所も自分で指定するから全貌の把握を邪魔するものはないって感じ。
裏を返せば全貌を把握できないと何も出来ないという事も言えるけど。
そういう文化の言語としてはCって完成度高いと思うし、現状超えるものはないと思う。まあ、Cで応用寄りのプログラム書くのは嫌なんだけどさ
それってCのこと? Cは一切隠蔽しない文化だから、パッケージ管理ソフトとかの隠蔽してしまうものは基本的に相性悪いと思う。Cを書く者はライブラリも自分でMake installするし、インストール場所も自分で指定するから全貌の把握を邪魔するものはないって感じ。
裏を返せば全貌を把握できないと何も出来ないという事も言えるけど。
そういう文化の言語としてはCって完成度高いと思うし、現状超えるものはないと思う。まあ、Cで応用寄りのプログラム書くのは嫌なんだけどさ
2017/06/13(火) 18:22:10.72ID:1lda3qQJ
2017/06/13(火) 18:52:45.36ID:qZ9zsjQ6
Kotlinはあまり興味がなかった他の言語と違う何かがあるなあ、自分にとっては
23デフォルトの名無しさん
2017/06/13(火) 19:06:12.09ID:huEjF5Un 俺の母ちゃんのあだ名コトリンなんだが
2017/06/13(火) 19:35:55.51ID:lP4lhg4O
>>20
何のためにdebやrpmに「foobar-dev(el)」ってパッケージがあると思ってる
言語自前のライブラリ管理システムがないからディストリビューションのパッケージ管理に乗っからないとやってけないからだろ
そういうものをCプログラミングと認めないなら好きにしろ
何のためにdebやrpmに「foobar-dev(el)」ってパッケージがあると思ってる
言語自前のライブラリ管理システムがないからディストリビューションのパッケージ管理に乗っからないとやってけないからだろ
そういうものをCプログラミングと認めないなら好きにしろ
2017/06/13(火) 19:41:20.40ID:wCVClZJy
そういや、まともな検証プロセスの無いままライブラリが提供される
言語独自のパッケージ管理システムは、OS全体の安全性を脅かしてるってDebianの中の人が嘆いてたな
言語独自のパッケージ管理システムは、OS全体の安全性を脅かしてるってDebianの中の人が嘆いてたな
2017/06/13(火) 19:41:27.69ID:lP4lhg4O
別に全手動を否定するつもりはないが、
debやrpmが積み上げてきたものを蹴飛ばして
全手動こそがCって言われると違和感があるって話な
debやrpmが積み上げてきたものを蹴飛ばして
全手動こそがCって言われると違和感があるって話な
2017/06/13(火) 19:51:19.56ID:lP4lhg4O
2017/06/13(火) 19:53:36.19ID:o0nyK+Xq
ソースコードを読む人は時間の感覚が違うだろ
インストールに1日かかっても1日損したと思ってない
自分で書くより早いから得してるし
読むだけでも1日や2日では終わらない
インストールに1日かかっても1日損したと思ってない
自分で書くより早いから得してるし
読むだけでも1日や2日では終わらない
29デフォルトの名無しさん
2017/06/13(火) 20:32:10.33ID:+kV5cJp9 >>24
「ライブラリが野良orOS配布だから良くない」という意見に「それは別に良い」って言ってるだけやん。ちょっと言葉は過ぎたかもしらんけどそんな噛み付かんといてよ
「ライブラリが野良orOS配布だから良くない」という意見に「それは別に良い」って言ってるだけやん。ちょっと言葉は過ぎたかもしらんけどそんな噛み付かんといてよ
2017/06/13(火) 22:35:13.45ID:ZpGuJRaH
環境含めて考えれば
簡易な言語 + チェックツール
のが正解な気はする。
rust みたいに言語で縛るってのがそもそも間違いじゃねーの。
簡易な言語 + チェックツール
のが正解な気はする。
rust みたいに言語で縛るってのがそもそも間違いじゃねーの。
2017/06/13(火) 22:41:55.07ID:blSfEUfZ
>>30
より安全なC言語(チェッカーだったり、標準ライブラリの置換だったり)って今までたくさんあったけど、どれも普及しなかった
Microsoftも作ってたはず
なので、Rustは今度こそは!感がある
より安全なC言語(チェッカーだったり、標準ライブラリの置換だったり)って今までたくさんあったけど、どれも普及しなかった
Microsoftも作ってたはず
なので、Rustは今度こそは!感がある
2017/06/13(火) 22:52:41.30ID:Hy7s+J5v
>>29
言葉きつかったなすまん
言葉きつかったなすまん
33あ
2017/06/14(水) 13:01:02.27ID:0gE91xz734デフォルトの名無しさん
2017/06/14(水) 14:06:06.69ID:4UjMkIWv Cの文化とPythonの文化は方向性が全然異なる
昨今の統計事情から察するに、応用を考えるにあたってはPythonの文化の方が優れているだろう
つまり、細かいことは言語作者やライブラリ作者に全部任せて、考えたいことに集中できる文化の方が発展が速い
昨今の統計事情から察するに、応用を考えるにあたってはPythonの文化の方が優れているだろう
つまり、細かいことは言語作者やライブラリ作者に全部任せて、考えたいことに集中できる文化の方が発展が速い
2017/06/14(水) 14:32:38.36ID:SGVDPQnB
Cの中に全然異なる二択があると言われたのをもう忘れたか
忘れるの速すぎ
忘れるの速すぎ
36デフォルトの名無しさん
2017/06/14(水) 14:35:24.56ID:4UjMkIWv >>35
二択って何?このスレで二択で調べても「野良orOSのパッケージ管理」しか出ないんだけど
二択って何?このスレで二択で調べても「野良orOSのパッケージ管理」しか出ないんだけど
2017/06/14(水) 14:38:55.46ID:SGVDPQnB
リテラシーゆとり教育orバイナリまとめサイト
38デフォルトの名無しさん
2017/06/14(水) 14:47:06.53ID:4UjMkIWv よくわからんしまあいいや
Pythonの例から考えるに、少なくとも応用分野では次世代に流行る言語は強力なライブラリを簡単に導入でき、すぐに目的コードが書けてしまうと言った特性を有しているでしょう
Pythonの例から考えるに、少なくとも応用分野では次世代に流行る言語は強力なライブラリを簡単に導入でき、すぐに目的コードが書けてしまうと言った特性を有しているでしょう
2017/06/14(水) 14:59:43.37ID:W7dgH5v3
FORTRANの駆逐に長い時間が掛かったのはライブラリ遺産のせいだって聞いたことがある。
40デフォルトの名無しさん
2017/06/14(水) 15:11:13.20ID:4UjMkIWv その通り。Fortran77はクソだけど、新しい言語を使おうとしても移植作業も新規に書き直す作業も面倒なので、そんならいいやとFortranを使い続けてきた
そこに持ってきてpip install scipyのワンコマンドでblas lapackの多くのサブルーチンの良質なラッパーをインストールし、よくわかってない学生でもfrom scipy.linalg import eig 出来てしまうPythonは本当に偉大であった
そこに持ってきてpip install scipyのワンコマンドでblas lapackの多くのサブルーチンの良質なラッパーをインストールし、よくわかってない学生でもfrom scipy.linalg import eig 出来てしまうPythonは本当に偉大であった
2017/06/14(水) 20:07:23.71ID:rnctBDZd
まあ今ある blas より速いの作るなんて普通のプログラマには不可能だしな。。
42デフォルトの名無しさん
2017/06/14(水) 21:17:37.82ID:i/E7QqbY Haskell復活してるやん
2017/06/15(木) 01:45:20.34ID:wmi6uQsI
>>42
Kotlin引退で繰り上がり
Kotlin引退で繰り上がり
2017/06/15(木) 03:30:08.09ID:TdjK6zBT
つまり実用できる状態になるとスレタイから外されるって事だよな
ここに残ってるのはいつまでも「次世代」言語
ここに残ってるのはいつまでも「次世代」言語
2017/06/16(金) 00:53:52.07ID:NKsegnSN
現時点のKotlinレベルでいいならGo,Rust,Scalaは実使用されつくしてるような
2017/06/16(金) 02:31:19.78ID:57lFqmer
Go ScalaはともかくRustは絶対にねえよ
2017/06/16(金) 08:26:01.05ID:VSZ6CfqO
実用できる次世代言語はkotrin typescript だよね
実用できない次世代言語がスレタイ
実用できない次世代言語がスレタイ
2017/06/16(金) 09:11:14.72ID:XLEAF0GD
mozilaの落ちぶれっぷりがやばい
2017/06/16(金) 10:10:44.42ID:sGqUlQsg
50デフォルトの名無しさん
2017/06/16(金) 10:22:55.63ID:Elc9SXXc 個別スレある言語の話はそっちでヤレばいいじゃん
ここは個別スレ無いやつ専用にしろよ
ここは個別スレ無いやつ専用にしろよ
2017/06/16(金) 10:54:04.49ID:is6DCp5t
パッケージ管理システムとかガベコレの一般論専用かな
一般論の個別スレないよね
一般論の個別スレないよね
52デフォルトの名無しさん
2017/06/16(金) 11:04:24.01ID:yA2bsaGi 日産自動車栃木工場
塗装課、車軸課の正社員の方々の要求はコピペ継続の保守
2ちゃんねる愛用の方々にお知らせ
栃木県上三川町3-5-2
日産自動車上三川寮
管理人は合鍵を使い従業員の部屋に無断で侵入
。
抜き打ちで従業員の私物を全て調べるブラックの中のブラック企業。
期間工が看護師を殺害する事件もあった危険企業。
離職票を発行するのに一月以上もかかるとの情報もあり期間工の生活事情はお構い無し。
このコピペによる日産の悪事の拡散は日産正社員の断固たる要望である。これには日産と無関係の第三者が便乗している可能性が高く自分は不自然に感じている。
0647 FROM名無しさan 2017/06/01 21:21:43
いいからこんなとこで油売ってないで早く100万コピペ達成してこいよwww
ほら早よ行けやホラホラwww
返信 ID:bEv8YiM0(7/7)
↑↑このように必死で日産の悪事を拡散しろと煽っている。俺は脳無しで馬鹿なので日産正社員が日産悪事を公表するように煽ってきた理由が分からない。不本意ながらコピペを続けている。
塗装課、車軸課の正社員の方々の要求はコピペ継続の保守
2ちゃんねる愛用の方々にお知らせ
栃木県上三川町3-5-2
日産自動車上三川寮
管理人は合鍵を使い従業員の部屋に無断で侵入
。
抜き打ちで従業員の私物を全て調べるブラックの中のブラック企業。
期間工が看護師を殺害する事件もあった危険企業。
離職票を発行するのに一月以上もかかるとの情報もあり期間工の生活事情はお構い無し。
このコピペによる日産の悪事の拡散は日産正社員の断固たる要望である。これには日産と無関係の第三者が便乗している可能性が高く自分は不自然に感じている。
0647 FROM名無しさan 2017/06/01 21:21:43
いいからこんなとこで油売ってないで早く100万コピペ達成してこいよwww
ほら早よ行けやホラホラwww
返信 ID:bEv8YiM0(7/7)
↑↑このように必死で日産の悪事を拡散しろと煽っている。俺は脳無しで馬鹿なので日産正社員が日産悪事を公表するように煽ってきた理由が分からない。不本意ながらコピペを続けている。
53デフォルトの名無しさん
2017/06/18(日) 01:50:03.42ID:LYWH9ARf 個別スレない言語オンリーならRacket無双になるがよろしいか
2017/06/18(日) 13:22:25.92ID:BG5e9Vcc
あとは歴史的変遷からみる次世代言語とか
55こんな?
2017/06/19(月) 16:27:30.01ID:PFGmiz2v 今SunがJavaっての作ってるらしーぜ
どんな言語だろうな?
どんな言語だろうな?
2017/06/24(土) 15:20:30.76ID:+EJLhPmM
Googleがヘルスバーグ(C#)級の人をスカウトしてきて
メインプロジェクトとして本気の新言語作ったとしたらどうなるか見てみたい
GoもDartも最初の言語設計がイマイチ感は否定できないんだよね
メインプロジェクトとして本気の新言語作ったとしたらどうなるか見てみたい
GoもDartも最初の言語設計がイマイチ感は否定できないんだよね
2017/06/24(土) 16:06:03.03ID:iOfeax4r
静的型と動的型のハイブリッドはTypeScriptで早くも完成させちゃったから、
次にヘルスバーグが手がけるとしたら完全な型推論ベースの静的型言語をやってほしい
次にヘルスバーグが手がけるとしたら完全な型推論ベースの静的型言語をやってほしい
58デフォルトの名無しさん
2017/06/24(土) 16:23:53.98ID:pQNLYnE6 ヘルスバーグすこ
Googleの作る言語はゴミばっかや
Googleの作る言語はゴミばっかや
59デフォルトの名無しさん
2017/06/24(土) 16:28:25.84ID:TM1thEne ヘルスバーグだってMSが敵わなかったからライバルから引っこ抜いたんだろ
2017/06/24(土) 16:51:36.76ID:aCsrIsWK
なんだかんだ言ってもOS自体を書く言語は変わってないからな
2017/06/24(土) 21:54:51.34ID:UUr+9hAP
>>56
今ならSwift開発したクリス・ラトナーが絶賛求職中やで。
今ならSwift開発したクリス・ラトナーが絶賛求職中やで。
2017/06/24(土) 23:50:07.30ID:UHmd/ofd
Googleってゴスリンやゲイドも飼ってたことあるよな
一瞬で辞めたけど
会社の体質に問題があるんだろうね
一瞬で辞めたけど
会社の体質に問題があるんだろうね
2017/06/25(日) 08:44:29.52ID:JxQEbk3c
kotlinとswiftどっちが有望?
2017/06/25(日) 08:59:11.73ID:JM0saPft
どっちも有望だが、どこを比較してほしいんだ
2017/06/25(日) 09:10:38.04ID:JxQEbk3c
学ぶならどっちがいいのかなと思って
66デフォルトの名無しさん
2017/06/25(日) 10:07:31.69ID:ZFXP5+sH Androidのアプリ作りたいのか、iOSのアプリ作りたいか
それだけの話なのに何で自分で決められないんだろ
それだけの話なのに何で自分で決められないんだろ
2017/06/25(日) 10:21:57.72ID:JM0saPft
何のために学びたいんだ
2017/06/25(日) 10:24:20.80ID:by7iMnGq
kotlinは既にJavaをマスターしててサンプルコードの雰囲気を見ただけでなんとなく書き始められるくらいの人が使うもんだぞ
勉強するもんじゃない
勉強するもんじゃない
69デフォルトの名無しさん
2017/06/25(日) 12:21:22.67ID:BOhr0vIe 今Haskellでよく使う処理をガンガン関数にしてライブラリ化してるけど、LLでもここまで短く書けないだろと言うか、
ここまでライブラリ化するには遅延評価じゃないとreverse使わないような処理でもメモリに溜め込むか、
遅延評価にする為にイテレータ作りまくりじゃないかと思った。
いあ、最上位の関数とかは短く書けるんだろうけど、ライブラリ内部の似たような処理を
ガンガン関数にして行くのは流石に難しいと思う。
ここまでライブラリ化するには遅延評価じゃないとreverse使わないような処理でもメモリに溜め込むか、
遅延評価にする為にイテレータ作りまくりじゃないかと思った。
いあ、最上位の関数とかは短く書けるんだろうけど、ライブラリ内部の似たような処理を
ガンガン関数にして行くのは流石に難しいと思う。
2017/06/25(日) 12:39:35.65ID:mZBbGFn8
2017/06/25(日) 12:53:31.73ID:ETAvV0eF
linux のソース見る限りは c にまともなマクロが用意されればそれで十分。
まあまともなマクロを用意するってのは言うほど簡単じゃないだろうけど。
まあまともなマクロを用意するってのは言うほど簡単じゃないだろうけど。
72デフォルトの名無しさん
2017/06/25(日) 13:33:53.23ID:BOhr0vIe2017/06/25(日) 13:58:29.36ID:by7iMnGq
Haskelは実装変更のインパクトがでかくてカプセル化的な考え方で作るには向かないんだよな
実用言語としてガチ関数型を流行らせるには厳密性を維持しつつ現実の大規模開発でのモジュール化も考慮した仕組みを作らないと
実用言語としてガチ関数型を流行らせるには厳密性を維持しつつ現実の大規模開発でのモジュール化も考慮した仕組みを作らないと
74デフォルトの名無しさん
2017/06/25(日) 14:13:01.18ID:/Sm2Vorl >>73
Cでcatコマンド自作しようとした時、複数ファイルから一番長い一行あたりのバイト数(文字コードによって違うので文字数ではダメ)調べるコマンド作った時、
lengthはByteStringモジュールを使いたいけど、mapは標準のを使いたい(ByteStringのmapはByteString -> Char特化)って時に細かくどれは読み込んで、どれは読み込まないってしたけど、
それじゃあかんの?
モジュール読み込みの設定だけ変えれば、main以下は全く同じコードがバイト数と文字数切り替えれるけど。
Cでcatコマンド自作しようとした時、複数ファイルから一番長い一行あたりのバイト数(文字コードによって違うので文字数ではダメ)調べるコマンド作った時、
lengthはByteStringモジュールを使いたいけど、mapは標準のを使いたい(ByteStringのmapはByteString -> Char特化)って時に細かくどれは読み込んで、どれは読み込まないってしたけど、
それじゃあかんの?
モジュール読み込みの設定だけ変えれば、main以下は全く同じコードがバイト数と文字数切り替えれるけど。
2017/06/25(日) 14:24:06.30ID:WUy1L4jW
2017/06/25(日) 15:21:38.85ID:mZBbGFn8
77デフォルトの名無しさん
2017/06/25(日) 16:41:08.55ID:p9Z6xhSy >>75
抽象度が高い=フワッとして概念的って思ってたんだが違うんか。。。
import書く時、この関数だけ読み込まない。
この関数だけ読み込むって指示できるから、そこだけ弄ればそこ以下のコードは書き換え無しに
文字数数えるかバイト数数えるか動作を切り替えられる。
抽象度が高い=フワッとして概念的って思ってたんだが違うんか。。。
import書く時、この関数だけ読み込まない。
この関数だけ読み込むって指示できるから、そこだけ弄ればそこ以下のコードは書き換え無しに
文字数数えるかバイト数数えるか動作を切り替えられる。
78デフォルトの名無しさん
2017/06/25(日) 16:53:53.40ID:p9Z6xhSy >>76
うんうん。
分かるよ。
式と文が入り混じるから関数化する単位に限界あるもんね。
副作用と純粋部分の区分けが強制されないというか、遅延評価じゃないと強制されたらreverse使ってなくてもメモリに溜め込むコードになっちゃうし。
それを解消する為にイテレータ書きまくるのも面倒だもんね。
Cくらい速かったら、それを飲み込むのも我慢出来るのにね。
うんうん。
分かるよ。
式と文が入り混じるから関数化する単位に限界あるもんね。
副作用と純粋部分の区分けが強制されないというか、遅延評価じゃないと強制されたらreverse使ってなくてもメモリに溜め込むコードになっちゃうし。
それを解消する為にイテレータ書きまくるのも面倒だもんね。
Cくらい速かったら、それを飲み込むのも我慢出来るのにね。
2017/06/25(日) 17:24:16.31ID:rLWYKb/E
この勘違いしたハスケラを黙らせるには、
ハスケラ自慢のライブラリを見せてもらって、
それより簡潔なコードを書くしかないと思う
ハスケラ自慢のライブラリを見せてもらって、
それより簡潔なコードを書くしかないと思う
2017/06/25(日) 17:39:45.42ID:wtr2uEYx
81デフォルトの名無しさん
2017/06/25(日) 17:56:09.21ID:pYBZiqDJ >>80
Haskellも状態扱えない訳じゃないし、大量に状態保持す代名詞のGUIプログラミングが、HTMLやXAMLで書かれるのに一定の地位を確立した今となっては、そういうDSL、又はDBに状態保持させて、Haskellは同じ値が来たら外部に+1してってお願いすれば良いと思うけどね。
Haskellも状態扱えない訳じゃないし、大量に状態保持す代名詞のGUIプログラミングが、HTMLやXAMLで書かれるのに一定の地位を確立した今となっては、そういうDSL、又はDBに状態保持させて、Haskellは同じ値が来たら外部に+1してってお願いすれば良いと思うけどね。
2017/06/25(日) 17:59:09.81ID:wtr2uEYx
>>81
つまりインパクトが大きいってことだね
つまりインパクトが大きいってことだね
83デフォルトの名無しさん
2017/06/25(日) 18:12:35.96ID:pYBZiqDJ 何言ってんのか分からんけど、Haskellでここまでよく使うパターンをライブラリ化出来るなら、もうLL要らんってなった。
速度が必要な時はCで書いて、速度求めないのはHaskellで良いや。
速度こそLLと変わらんけど、ここまで再利用し易いなら自分でよく使うパターンをライブラリにして行けば、すぐにLLより短くなる。
number.hsナンバリング
import System.Environment
import Myfunc
main = getArgs >>= mfput (fnumbering id)
revnumber.hsナンバリングと行の逆順
import System.Environment
import Myfunc
main = getArgs >>= mfput (fnumbering reverse)
mygrepn.hs検索文字列含まれる行(行番号付き)抽出。
import System.Environment
import Myfunc
main = getArgs >>= \(w:fs) ->
mfput ((replace w (redstr w)).(grep w).fnumbering id) fs
rp.hs(文字列置換)
import System.Environment
import Myfunc
main = getArgs >>= \(w:nw:fs) -> mfwrite (replace w nw) fs
速度が必要な時はCで書いて、速度求めないのはHaskellで良いや。
速度こそLLと変わらんけど、ここまで再利用し易いなら自分でよく使うパターンをライブラリにして行けば、すぐにLLより短くなる。
number.hsナンバリング
import System.Environment
import Myfunc
main = getArgs >>= mfput (fnumbering id)
revnumber.hsナンバリングと行の逆順
import System.Environment
import Myfunc
main = getArgs >>= mfput (fnumbering reverse)
mygrepn.hs検索文字列含まれる行(行番号付き)抽出。
import System.Environment
import Myfunc
main = getArgs >>= \(w:fs) ->
mfput ((replace w (redstr w)).(grep w).fnumbering id) fs
rp.hs(文字列置換)
import System.Environment
import Myfunc
main = getArgs >>= \(w:nw:fs) -> mfwrite (replace w nw) fs
84デフォルトの名無しさん
2017/06/25(日) 18:17:06.53ID:pYBZiqDJ ライブラリ内部にも似た様なパターンを関数化して無駄に似た様な少し違うコードが少ない様にしてる。
Myfunc.hs自作ライブラリ
module Myfunc where
import Data.List
import Text.Printf
consnum::(Int,String) -> String
consnum (i,xs) = printf "%4d:%s" i xs
fline f = unlines.f.lines
fnumbering f = fline ((map consnum).(zip [1..]).f)
redstr::String -> String
redstr [] = []
redstr w = printf "\ESC[1m\ESC[31m%s\ESC[39m\ESC[0m" w
bluestr::String -> String
bluestr [] = []
bluestr w = printf "\ESC[34m%s\ESC[39m" w
grep w = fline (filter (isInfixOf w))
Myfunc.hs自作ライブラリ
module Myfunc where
import Data.List
import Text.Printf
consnum::(Int,String) -> String
consnum (i,xs) = printf "%4d:%s" i xs
fline f = unlines.f.lines
fnumbering f = fline ((map consnum).(zip [1..]).f)
redstr::String -> String
redstr [] = []
redstr w = printf "\ESC[1m\ESC[31m%s\ESC[39m\ESC[0m" w
bluestr::String -> String
bluestr [] = []
bluestr w = printf "\ESC[34m%s\ESC[39m" w
grep w = fline (filter (isInfixOf w))
85デフォルトの名無しさん
2017/06/25(日) 18:17:18.21ID:pYBZiqDJ replace _ _ [] = []
replace [] _ cs = cs
replace w nw cs | w == xs = nw ++ replace w nw ys
where
(xs,ys) = splitAt (length w) cs
replace w nw (c:cs) = c:replace w nw cs
putfc (f,c) = printf "%s\n%s" f c
writefc (f,c) = writeFile f c
mfptn fs f ofs output = mapM readFile fs >>=
return.(zip ofs).map f >>=
mapM_ output
mfput f fs = mfptn fs f (map bluestr fs) putfc
mfwrite f fs = let tfs = map (++ ".temp") fs in
mfptn fs f tfs writefc >>
mfptn tfs id fs writefc
replace [] _ cs = cs
replace w nw cs | w == xs = nw ++ replace w nw ys
where
(xs,ys) = splitAt (length w) cs
replace w nw (c:cs) = c:replace w nw cs
putfc (f,c) = printf "%s\n%s" f c
writefc (f,c) = writeFile f c
mfptn fs f ofs output = mapM readFile fs >>=
return.(zip ofs).map f >>=
mapM_ output
mfput f fs = mfptn fs f (map bluestr fs) putfc
mfwrite f fs = let tfs = map (++ ".temp") fs in
mfptn fs f tfs writefc >>
mfptn tfs id fs writefc
2017/06/25(日) 19:00:45.29ID:rLWYKb/E
それライブラリ化する価値もなさそうな
汎用性の無いコードにしか見えんが、本気か...?
汎用性の無いコードにしか見えんが、本気か...?
87デフォルトの名無しさん
2017/06/25(日) 19:04:10.51ID:pYBZiqDJ >>79
ワザとウザい役したけど、実際問題再利用のし易さと速度はある程度トレードオフな関係だと思う。
それならHaskellとCで良いんじゃないかってなった。
個々人でバランス感覚違うから、他の言語を選択するものアリだけど。
ワザとウザい役したけど、実際問題再利用のし易さと速度はある程度トレードオフな関係だと思う。
それならHaskellとCで良いんじゃないかってなった。
個々人でバランス感覚違うから、他の言語を選択するものアリだけど。
88デフォルトの名無しさん
2017/06/25(日) 19:11:04.69ID:pYBZiqDJ >>86
まだ育ててる最中だしね。
複数ファイル読み出し、複数ファイルそれぞれ出力なパターンはこれで行ける。
複数ファイルから一つの結果求めるパターンはこれから作るし、他の関数と共通パターンあったら、関数化して行く。
正気か?って言うけど、forとかメソッドチェーンな中身とか途中のメソッド入れ替えるとか、そう言うことしてる様な感じ。
こんな関数化の方法、オブジェクト指向言語では考えもしなかったぞ。
まだ育ててる最中だしね。
複数ファイル読み出し、複数ファイルそれぞれ出力なパターンはこれで行ける。
複数ファイルから一つの結果求めるパターンはこれから作るし、他の関数と共通パターンあったら、関数化して行く。
正気か?って言うけど、forとかメソッドチェーンな中身とか途中のメソッド入れ替えるとか、そう言うことしてる様な感じ。
こんな関数化の方法、オブジェクト指向言語では考えもしなかったぞ。
2017/06/25(日) 20:27:51.46ID:k3/0SUsA
Haskell使いのレベルの低さが知れるな
こうゆうのを繰り返すならやっぱり次はまたHaskellはずそう
こうゆうのを繰り返すならやっぱり次はまたHaskellはずそう
2017/06/25(日) 20:33:29.70ID:h1su++jx
ていうかHaskell自体は全然次世代言語じゃないじゃん
Haskellの一部分を参考にした次世代言語はあるけど
Haskellの一部分を参考にした次世代言語はあるけど
2017/06/25(日) 20:59:18.08ID:+XToNy/r
Idrisとか?
92デフォルトの名無しさん
2017/06/25(日) 21:00:59.61ID:pYBZiqDJ ええ。。。
最近こそラムダ式とか入ったけど、オブジェクト指向って相変わらず手続き型言語で、コンストラクタって結局構造化プログラミングで言うinit関数でしょ?みたいな感じで処理の分け方が上中下って感じなんだもん。
おまけに肝心の中身はインターフェースでそれぞれのクラスに別々に書いてねとか。
似た様なコード何度も何度も書いてるなー。。。って感じだった。
LLにしても、書き捨て毎に似た様なコード書いてるなー。。。って。
Haskellだからここまで関数化しても遅延評価でメモリを一定以上消費しないんだと思うし、mfput関数一つ書けば中身の処理を考えるのに集中出来た。
(mygrepnとか見つかった文字列を強調赤字にするオマケ付き。
rpとかコマンド名が競合するから短い名前だけど、地味にコード書き換えに活躍してる)
実際に上のコードと同じライブラリ書いてみてよ。
パターンは共通って分かってても、文が邪魔したり、メモリに溜め込む処理になるから断念する場面が出てくると思う。
最近こそラムダ式とか入ったけど、オブジェクト指向って相変わらず手続き型言語で、コンストラクタって結局構造化プログラミングで言うinit関数でしょ?みたいな感じで処理の分け方が上中下って感じなんだもん。
おまけに肝心の中身はインターフェースでそれぞれのクラスに別々に書いてねとか。
似た様なコード何度も何度も書いてるなー。。。って感じだった。
LLにしても、書き捨て毎に似た様なコード書いてるなー。。。って。
Haskellだからここまで関数化しても遅延評価でメモリを一定以上消費しないんだと思うし、mfput関数一つ書けば中身の処理を考えるのに集中出来た。
(mygrepnとか見つかった文字列を強調赤字にするオマケ付き。
rpとかコマンド名が競合するから短い名前だけど、地味にコード書き換えに活躍してる)
実際に上のコードと同じライブラリ書いてみてよ。
パターンは共通って分かってても、文が邪魔したり、メモリに溜め込む処理になるから断念する場面が出てくると思う。
2017/06/25(日) 21:18:47.33ID:8QFIS7Xe
2017/06/25(日) 21:38:11.91ID:8QFIS7Xe
>>92
結局パイプ的に繋いでく話してるだけだな
はっきり言うが、Haskellでまともなプログラム組んでIO扱う途端にその手の使い方はできなくなるよ
その言ってる方法突き詰めたとして、リアクティブプログラミング的になるが、
遅延評価が仇になってサンク作りまくる場合はあるし、遅延評価だから空間計算効率が良いなんて話にもならない
Haskell自身もメモリの効率がいいわけでもない
女アクのGHCのランタイムがまずクッソでかいし
何よりリアクティブプログラミングじゃ、現代のGUIでまともなプログラム作れない
IOなGUIツールキットをリアクティブに対応させるコード書いてる暇あったらIOで書いた方がマシだ
結局パイプ的に繋いでく話してるだけだな
はっきり言うが、Haskellでまともなプログラム組んでIO扱う途端にその手の使い方はできなくなるよ
その言ってる方法突き詰めたとして、リアクティブプログラミング的になるが、
遅延評価が仇になってサンク作りまくる場合はあるし、遅延評価だから空間計算効率が良いなんて話にもならない
Haskell自身もメモリの効率がいいわけでもない
女アクのGHCのランタイムがまずクッソでかいし
何よりリアクティブプログラミングじゃ、現代のGUIでまともなプログラム作れない
IOなGUIツールキットをリアクティブに対応させるコード書いてる暇あったらIOで書いた方がマシだ
2017/06/25(日) 21:42:36.54ID:8QFIS7Xe
正確にはリアクティブプログラミングじゃなくてFunctional Reactive Programingだな
リアクティブだけなら、一つのシグナルストリームでなく分散メッセージでいいし難しくはない
リアクティブだけなら、一つのシグナルストリームでなく分散メッセージでいいし難しくはない
96デフォルトの名無しさん
2017/06/25(日) 22:00:46.32ID:pYBZiqDJ >>94
空間計算効率が良いなんて一言も言ってないが。。。
悪魔で再利用し易さの割にってだけ。
んでもLLと同程度ならほとんどの場合で問題にならないので、このままライブラリ化進めればLLよりチマチマしたの作るのに都合が良い言語になると言うか、既になってる。
半端にLLで空間計算効率考えるよりは、普段はHaskellで富豪的だけどLLより再利用し易いコード書いて、そう言うの重要な場面ではCで書けば良いやってなった。
今時のメモリ搭載量だと小説10冊分が1ファイルに入ってても問題にならんから、実用上ほとんど問題にならん。
それが問題になる時は処理速度的にもLLでも対処出来ない。
空間計算効率が良いなんて一言も言ってないが。。。
悪魔で再利用し易さの割にってだけ。
んでもLLと同程度ならほとんどの場合で問題にならないので、このままライブラリ化進めればLLよりチマチマしたの作るのに都合が良い言語になると言うか、既になってる。
半端にLLで空間計算効率考えるよりは、普段はHaskellで富豪的だけどLLより再利用し易いコード書いて、そう言うの重要な場面ではCで書けば良いやってなった。
今時のメモリ搭載量だと小説10冊分が1ファイルに入ってても問題にならんから、実用上ほとんど問題にならん。
それが問題になる時は処理速度的にもLLでも対処出来ない。
2017/06/25(日) 22:10:00.00ID:8QFIS7Xe
98デフォルトの名無しさん
2017/06/25(日) 22:16:17.15ID:GaCuKOAB >>97
「関数型で書いてもメモリを一定量以上使わない」を「空間計算効率が良い」と解釈するのはいくら何でも頭発達しすぎでしょ……
「関数型で書いてもメモリを一定量以上使わない」を「空間計算効率が良い」と解釈するのはいくら何でも頭発達しすぎでしょ……
2017/06/25(日) 22:20:20.12ID:8QFIS7Xe
ちなみにCで書こうがIOの問題は付随するので変わらない
そもそもパーサをTemplateHaskellとけ使って書いてるレベルならまだしも Haskellで型注釈も無しじゃコンパイル遅すぎだし、
リストを配列代わりにしたり、String使ってテキスト処理してるレベルじゃLLより遥かに動作遅いだろ
普段から使ってるとはとても思えない
そもそもパーサをTemplateHaskellとけ使って書いてるレベルならまだしも Haskellで型注釈も無しじゃコンパイル遅すぎだし、
リストを配列代わりにしたり、String使ってテキスト処理してるレベルじゃLLより遥かに動作遅いだろ
普段から使ってるとはとても思えない
100デフォルトの名無しさん
2017/06/25(日) 22:21:53.78ID:8QFIS7Xe101デフォルトの名無しさん
2017/06/25(日) 22:22:12.23ID:8QFIS7Xe 変換ミス
一体どこに突っ込んでんだよ
一体どこに突っ込んでんだよ
102デフォルトの名無しさん
2017/06/25(日) 22:24:18.08ID:8QFIS7Xe え、まさか本当にストリーム処理書けないとかそんな話?
いくらなんでも違うよね?
いくらなんでも違うよね?
103デフォルトの名無しさん
2017/06/25(日) 22:27:27.12ID:pYBZiqDJ >>97
途中からとはなんぞな?
CUIにしてもGUIにしても、HaskellだとIO部分と純粋部分は強制的に分けて書かざるを得ないから何を言ってるのか。。。
(mfwriteでは同名ファイルに書き込めないので一旦別名で保存して、別名で開く->元の名前で保存ってしてるけど、そう言うのはIOが途中で挟まるってのと違うのん?)
ある意味手続き型言語みたく(と言うか他の関数型もそう言う意味じゃ途中でIO挟まる?)、途中でIO挟まらないパイプみたいな処理にCUIでもGUIでも強制されるのがHaskellの一見不便で長所。
mfptnからmfputとmfwrite作ってる通り、関数に渡す出力先を差し替えるだけで良い。
途中からとはなんぞな?
CUIにしてもGUIにしても、HaskellだとIO部分と純粋部分は強制的に分けて書かざるを得ないから何を言ってるのか。。。
(mfwriteでは同名ファイルに書き込めないので一旦別名で保存して、別名で開く->元の名前で保存ってしてるけど、そう言うのはIOが途中で挟まるってのと違うのん?)
ある意味手続き型言語みたく(と言うか他の関数型もそう言う意味じゃ途中でIO挟まる?)、途中でIO挟まらないパイプみたいな処理にCUIでもGUIでも強制されるのがHaskellの一見不便で長所。
mfptnからmfputとmfwrite作ってる通り、関数に渡す出力先を差し替えるだけで良い。
104デフォルトの名無しさん
2017/06/25(日) 22:32:23.46ID:pYBZiqDJ >>100
それはLLとは言え、手続き型言語がハードの仕組みに依存してるから、Haskellと同じ程度にライブラリ化進めると、普通に書くより遥かにメモリに負担かかるって意味。
Haskellがメモリ効率が良いって言ってるわけじゃ無い。
それはLLとは言え、手続き型言語がハードの仕組みに依存してるから、Haskellと同じ程度にライブラリ化進めると、普通に書くより遥かにメモリに負担かかるって意味。
Haskellがメモリ効率が良いって言ってるわけじゃ無い。
105デフォルトの名無しさん
2017/06/25(日) 22:33:19.85ID:8QFIS7Xe >>103
既存の物を状態を扱うように変更するのにコスト大きい、と突っ込まれとるよね
あとGUIは純粋に分けることを強制される、なんて簡単に終わる話じゃないんだよね
新規に同規模の実装を強制されるわけで
既存の物を状態を扱うように変更するのにコスト大きい、と突っ込まれとるよね
あとGUIは純粋に分けることを強制される、なんて簡単に終わる話じゃないんだよね
新規に同規模の実装を強制されるわけで
106デフォルトの名無しさん
2017/06/25(日) 22:33:55.06ID:8QFIS7Xe >>104
だから結局空間計算量の話ししてるじゃん…
だから結局空間計算量の話ししてるじゃん…
107デフォルトの名無しさん
2017/06/25(日) 22:38:50.94ID:8QFIS7Xe ちうか、出力先を変更する云々なんて別にHaskell関係なくないか?
どこがHaskellでしか出来ない処理と言ってるわけ?
どこがHaskellでしか出来ない処理と言ってるわけ?
108デフォルトの名無しさん
2017/06/25(日) 22:44:55.19ID:GaCuKOAB ヤバい、ほんまもんや(笑)
109デフォルトの名無しさん
2017/06/25(日) 22:56:39.77ID:pYBZiqDJ >>99
うい。
ぶっちゃけ大きめのファイルだとLLより遅いの体感出来るw
んでも実用的な時間だし、上でパイプの例えあったけど言い得て妙で、
LLでforとかeachとかでループとして処理するのもメソッドチェーンみたいにファイル名のリスト受け取って、
中身のリスト受け取って。。。ってパイプ処理して行くから、LLより考え方が流れを辿る感じでシンプルなんだよね。
速さよりも書き易さ優先。
速さ気にしてたらそもそもHaskell選んでない。
速さが我慢出来なくなったらCで書くよ。
ネットでperlで1000万行のファイルの行を逆順にしたいっての見つけて、Cで書いたんだが、3.1GBにもなるファイル読み込ませて逆順表示はCでも待ったな。。。
(一旦全部上から読んで位置情報を配列に入れて、最後に記録した位置から逆に辿る手法だったけど、メモリは4GBメモリの0.6%しか消費してなかった)
Haskellでメモリに溜め込む書き方でも10万行くらいは我慢出来るレベル。
LLならCと同じ手法でメモリに負担かからない方法で書けるだろう。
実はHaskellにもhSeek関数あるから、多分メモリに負担かからない方法で書けると思う。
でも、もうそこまで行くんならCで気持ちよく書く。
うい。
ぶっちゃけ大きめのファイルだとLLより遅いの体感出来るw
んでも実用的な時間だし、上でパイプの例えあったけど言い得て妙で、
LLでforとかeachとかでループとして処理するのもメソッドチェーンみたいにファイル名のリスト受け取って、
中身のリスト受け取って。。。ってパイプ処理して行くから、LLより考え方が流れを辿る感じでシンプルなんだよね。
速さよりも書き易さ優先。
速さ気にしてたらそもそもHaskell選んでない。
速さが我慢出来なくなったらCで書くよ。
ネットでperlで1000万行のファイルの行を逆順にしたいっての見つけて、Cで書いたんだが、3.1GBにもなるファイル読み込ませて逆順表示はCでも待ったな。。。
(一旦全部上から読んで位置情報を配列に入れて、最後に記録した位置から逆に辿る手法だったけど、メモリは4GBメモリの0.6%しか消費してなかった)
Haskellでメモリに溜め込む書き方でも10万行くらいは我慢出来るレベル。
LLならCと同じ手法でメモリに負担かからない方法で書けるだろう。
実はHaskellにもhSeek関数あるから、多分メモリに負担かからない方法で書けると思う。
でも、もうそこまで行くんならCで気持ちよく書く。
110デフォルトの名無しさん
2017/06/25(日) 22:57:17.16ID:8QFIS7Xe やっぱり本気でパイプのようなストリーム処理がLLで書けないと思ってるのかな
今時はラムダなどのストリーム処理なんてJavaですら標準でついてるってのに
>>108
何が「ほんまもん」なんですかね
もしかしてどっちもO(1)で一緒とか言いたいの?
空間計算量って、それ自体はO-notationでの表記のことじゃないぞ?
今時はラムダなどのストリーム処理なんてJavaですら標準でついてるってのに
>>108
何が「ほんまもん」なんですかね
もしかしてどっちもO(1)で一緒とか言いたいの?
空間計算量って、それ自体はO-notationでの表記のことじゃないぞ?
111デフォルトの名無しさん
2017/06/25(日) 23:05:34.61ID:CvCdLd6J 「副作用で世界がどんどん変わって行くのを俺が全部コントロールして阻止しなければならない…
そうでなければこの世界はバラバラになってしまう…」
「どうしたんですか?先輩」(もぐもぐ
「おお後輩!…なんだそれ?」
「売店がパンじゃなくて弁当扱い出したんですよ
ゴミかさばるから売店とこで捨てろですって。
まぁ、どうせ僕が一括して持ってくんでしょうがw」
「後輩」
「はい?」
「カレーある?」
「たしか」
「じゃあ、それ一つ」
「はい」
そうでなければこの世界はバラバラになってしまう…」
「どうしたんですか?先輩」(もぐもぐ
「おお後輩!…なんだそれ?」
「売店がパンじゃなくて弁当扱い出したんですよ
ゴミかさばるから売店とこで捨てろですって。
まぁ、どうせ僕が一括して持ってくんでしょうがw」
「後輩」
「はい?」
「カレーある?」
「たしか」
「じゃあ、それ一つ」
「はい」
112デフォルトの名無しさん
2017/06/25(日) 23:09:52.30ID:GaCuKOAB ヤバいこいつ論点分からず突っかかってる
113デフォルトの名無しさん
2017/06/25(日) 23:11:04.64ID:pYBZiqDJ >>107
うーん。。。出力先もだけど、差し替え易さとか、処理対象の単位を行き来し易いとか。。。かな?
ループだとファイル単位、行単位、文字単位って決まっちゃうと、中々そこから抜け出せないけど、例えば複数ファイルの行で一番長い行を調べたいとする。
(実はCで上の逆順コード書く際のバッファの大きさを決めるために書いた)
最初、トーナメント形式に各ファイルで一番長い行出させて、そこからさらに一番を決めて出力してた。
んで、途中で全ファイルの行の長さ出た時点で一位決められるじゃん。と、数値のリストのリストを平坦化して一気に一位決めた。
そう言うループじゃ無くて、悪魔でリストのリストを受け取って〜。。。って考えると簡単に行単位とかそう言う枠を超えられる。
LLでも出来るだろうけど、思いつき易い。
うーん。。。出力先もだけど、差し替え易さとか、処理対象の単位を行き来し易いとか。。。かな?
ループだとファイル単位、行単位、文字単位って決まっちゃうと、中々そこから抜け出せないけど、例えば複数ファイルの行で一番長い行を調べたいとする。
(実はCで上の逆順コード書く際のバッファの大きさを決めるために書いた)
最初、トーナメント形式に各ファイルで一番長い行出させて、そこからさらに一番を決めて出力してた。
んで、途中で全ファイルの行の長さ出た時点で一位決められるじゃん。と、数値のリストのリストを平坦化して一気に一位決めた。
そう言うループじゃ無くて、悪魔でリストのリストを受け取って〜。。。って考えると簡単に行単位とかそう言う枠を超えられる。
LLでも出来るだろうけど、思いつき易い。
114デフォルトの名無しさん
2017/06/25(日) 23:12:43.68ID:pYBZiqDJ115デフォルトの名無しさん
2017/06/25(日) 23:15:11.08ID:8QFIS7Xe >>109
言いたい事はわからんでもないけど、そんなにhaskell使いやすい?
自分もHaskellは複雑な構造の解析とか、何か本質的な部分の問題解くときにghci使う事あるけどさ、
実装はやっぱりpythonとかのが楽ってなったよ
Stackやcabalの設定編集も面倒だしコンパイル遅いし
mapM_あたり使うような物で純粋を目標にしてると、本末転倒になる事が多いし
言いたい事はわからんでもないけど、そんなにhaskell使いやすい?
自分もHaskellは複雑な構造の解析とか、何か本質的な部分の問題解くときにghci使う事あるけどさ、
実装はやっぱりpythonとかのが楽ってなったよ
Stackやcabalの設定編集も面倒だしコンパイル遅いし
mapM_あたり使うような物で純粋を目標にしてると、本末転倒になる事が多いし
116デフォルトの名無しさん
2017/06/25(日) 23:17:22.59ID:8QFIS7Xe117デフォルトの名無しさん
2017/06/25(日) 23:27:50.72ID:8QFIS7Xe >>114
ポイントフリースタイルとの組み合わせは確かにHaskell特有だけど、
個人的には実装はIOの文脈で、パイプ演算子とパターンマッチを使える
F#やLiveScript(altJS)のような言語方が楽だと思うぞ
ポイントフリースタイルとの組み合わせは確かにHaskell特有だけど、
個人的には実装はIOの文脈で、パイプ演算子とパターンマッチを使える
F#やLiveScript(altJS)のような言語方が楽だと思うぞ
118デフォルトの名無しさん
2017/06/25(日) 23:45:27.87ID:pYBZiqDJ >>115
なんつーか、さすがにGUIとかはC#使うわってなるけど、確かにコンパイル遅くて微妙に感じもしたけど、上のライブラリみたくガンガン関数化すればPythonでループのシーケンスにargv[1:]ってしてー。。。
逆順だとReversed(list(sys.argv[1:]))でー。。。とか調べないとな場面が度々ね。
んで、毎回複数ファイルから読み込まるのにforって書いて、行毎だとまたfor。。。
Haskellもライブラリ作る前は似たり寄ったりだったけど、ライブラリ書いてからはmfputにファイル名のリストと、各ファイル向け(1ファイル向け)に処理させたい関数渡すだけで大体のツール作れる。
多少パターンが特殊でもmfptnで対応出来る。
ループ的なのを関数に押し込んで、開きたいファイルと処理させたい関数だけ気にしてれば良くなった。
(逆にサポート外のパターンには無力だが。関数化は使い方も規定しちゃうから仕方ない)
Pythonだとあんまここまでライブラリ化出来る気がしない。。。
PythonやRubyの書き捨てでも楽だって思ってたけど、多分もう戻れない。
なんつーか、さすがにGUIとかはC#使うわってなるけど、確かにコンパイル遅くて微妙に感じもしたけど、上のライブラリみたくガンガン関数化すればPythonでループのシーケンスにargv[1:]ってしてー。。。
逆順だとReversed(list(sys.argv[1:]))でー。。。とか調べないとな場面が度々ね。
んで、毎回複数ファイルから読み込まるのにforって書いて、行毎だとまたfor。。。
Haskellもライブラリ作る前は似たり寄ったりだったけど、ライブラリ書いてからはmfputにファイル名のリストと、各ファイル向け(1ファイル向け)に処理させたい関数渡すだけで大体のツール作れる。
多少パターンが特殊でもmfptnで対応出来る。
ループ的なのを関数に押し込んで、開きたいファイルと処理させたい関数だけ気にしてれば良くなった。
(逆にサポート外のパターンには無力だが。関数化は使い方も規定しちゃうから仕方ない)
Pythonだとあんまここまでライブラリ化出来る気がしない。。。
PythonやRubyの書き捨てでも楽だって思ってたけど、多分もう戻れない。
119デフォルトの名無しさん
2017/06/25(日) 23:47:28.90ID:GaCuKOAB120デフォルトの名無しさん
2017/06/25(日) 23:54:14.28ID:GaCuKOAB 相手の意図を組めないという点ではエンジニアガイジと同類っぽいなー
121デフォルトの名無しさん
2017/06/26(月) 00:09:44.62ID:jZyN4LOL そう。
空間計算効率の話自体はしてても、Haskellと同程度にライブラリ化したらLLが今までより空間計算効率が落ちる(もしくはイテレータ地獄になる)って言ってるだけで、Haskellの空間計算効率が良いなんて言ってない。
空間計算効率の話自体はしてても、Haskellと同程度にライブラリ化したらLLが今までより空間計算効率が落ちる(もしくはイテレータ地獄になる)って言ってるだけで、Haskellの空間計算効率が良いなんて言ってない。
122デフォルトの名無しさん
2017/06/26(月) 00:15:26.29ID:f2qWRibY 初めてKotlinで書いてみたけど意外と悪くないな
驚きが非常に少なく無理がない
C#みたいな天才肌とは違ってとにかく無難でつまらない印象だけど、
Javaからの乗り換えという意味では最適なとても筋のいい言語だと思うわ
import java.io.File
fun Sequence<String>.grep(w: String) = this.filter { w in it }
fun redstr(w: String) = "赤(${w})"
fun counsnum(i: Int, xs: String) = "%4d:%s".format(i, xs)
fun numbering(lines: Sequence<String>) = lines.mapIndexed({ i, xs -> counsnum(i + 1, xs) })
fun main(args: Array<String>) {
val (w, fs) = args
val lines = File(fs). bufferedReader().lineSequence()
numbering(lines).grep(w).map({ redstr(it) }) }.forEach({ println(it) })
}
驚きが非常に少なく無理がない
C#みたいな天才肌とは違ってとにかく無難でつまらない印象だけど、
Javaからの乗り換えという意味では最適なとても筋のいい言語だと思うわ
import java.io.File
fun Sequence<String>.grep(w: String) = this.filter { w in it }
fun redstr(w: String) = "赤(${w})"
fun counsnum(i: Int, xs: String) = "%4d:%s".format(i, xs)
fun numbering(lines: Sequence<String>) = lines.mapIndexed({ i, xs -> counsnum(i + 1, xs) })
fun main(args: Array<String>) {
val (w, fs) = args
val lines = File(fs). bufferedReader().lineSequence()
numbering(lines).grep(w).map({ redstr(it) }) }.forEach({ println(it) })
}
123デフォルトの名無しさん
2017/06/26(月) 02:35:16.31ID:jZyN4LOL >>122
kotlinのコードこのスレで初めて見たし、他のスレでもここまでまともなの見なかった。
thanks.
わざわざ見つかった文字列を赤文字にする所まで再現してくれるとは。。。
もうHaskellに惚れちゃってるからメインにならんだろうけど、確かに筋は良さそう。
GUIなコード書くのには良いかもしれんね。
行単位で受け取って行単位で出力する辺り、やっぱ手続き型言語と感じるけど。
だからこそ効率が良くて、そこを意識するからこそ柔軟性の限界感じる。
HaskellはStringが遅いだけで、バッファ効率自体は多分良い。
行単位とかじゃ無くて目一杯バッファに入れてると思う。
ByteString慣れないと説得力無いんだろうけど。。。
面倒いなぁ。。。
そこまでしないと勝負にならないなら、あんたの勝ちでいいよって思うもん。
手早く書けて使える速度なら充分だし。
kotlinのコードこのスレで初めて見たし、他のスレでもここまでまともなの見なかった。
thanks.
わざわざ見つかった文字列を赤文字にする所まで再現してくれるとは。。。
もうHaskellに惚れちゃってるからメインにならんだろうけど、確かに筋は良さそう。
GUIなコード書くのには良いかもしれんね。
行単位で受け取って行単位で出力する辺り、やっぱ手続き型言語と感じるけど。
だからこそ効率が良くて、そこを意識するからこそ柔軟性の限界感じる。
HaskellはStringが遅いだけで、バッファ効率自体は多分良い。
行単位とかじゃ無くて目一杯バッファに入れてると思う。
ByteString慣れないと説得力無いんだろうけど。。。
面倒いなぁ。。。
そこまでしないと勝負にならないなら、あんたの勝ちでいいよって思うもん。
手早く書けて使える速度なら充分だし。
124デフォルトの名無しさん
2017/06/26(月) 04:34:26.65ID:z8x4rlt1125デフォルトの名無しさん
2017/06/26(月) 04:36:09.09ID:z8x4rlt1 >>120
お前もうただ言い方に突っかかってるだけだろそれ
お前もうただ言い方に突っかかってるだけだろそれ
126デフォルトの名無しさん
2017/06/26(月) 07:49:16.94ID:b8W7cjsr >>118
引数の逆順でファイル読み込んで一つのイテレータにするだけなら、pythonならこれだけじゃね?
(x for f in argv[1:][::-1] for x in open(f))
これをイテレータを処理する関数の引数に渡せば、お前のやりたい事できてるよね?
引数の逆順でファイル読み込んで一つのイテレータにするだけなら、pythonならこれだけじゃね?
(x for f in argv[1:][::-1] for x in open(f))
これをイテレータを処理する関数の引数に渡せば、お前のやりたい事できてるよね?
127デフォルトの名無しさん
2017/06/26(月) 08:09:40.24ID:O05czwZw そうも書けるんだ。
でももうcatコマンドだったら
main = getArgs >>= mfput fs id
って書けば良いようにライブラリ作っちゃったし、もう良い。
mf = マルチファイル
でももうcatコマンドだったら
main = getArgs >>= mfput fs id
って書けば良いようにライブラリ作っちゃったし、もう良い。
mf = マルチファイル
128デフォルトの名無しさん
2017/06/26(月) 08:11:46.44ID:dzp1rCHS >>123
入出力関数が適切にバッファリングしてると思うけど?
入出力関数が適切にバッファリングしてると思うけど?
129デフォルトの名無しさん
2017/06/26(月) 08:12:49.97ID:O05czwZw 逆順だとunlines.reverse.linesしないと改行が変になるから
main = mfput fs (unlines.reverse.lines)
unlines.f.limesパターンも良く使うから
main = mfput fs (fline reverse)
って書けるようにしたし。
main = mfput fs (unlines.reverse.lines)
unlines.f.limesパターンも良く使うから
main = mfput fs (fline reverse)
って書けるようにしたし。
130デフォルトの名無しさん
2017/06/26(月) 08:15:23.64ID:O05czwZw あ、
main = getArgs >>= mfput fs (fline reverse)
だった。
main = getArgs >>= mfput fs (fline reverse)
だった。
131デフォルトの名無しさん
2017/06/26(月) 08:19:14.81ID:O05czwZw >>128
うい、行単位でね。
Haskellは基本ファイルの中身を丸ごと文字列で受け取って、文字列で返すから、行って考えはナンバリングしたいとか、行単位で処理したいって思った時に初めてunlines.f.linesパターンで行単位に分解する。
なので出力するHaskellランタイム側にも行単位って概念が無い。
うい、行単位でね。
Haskellは基本ファイルの中身を丸ごと文字列で受け取って、文字列で返すから、行って考えはナンバリングしたいとか、行単位で処理したいって思った時に初めてunlines.f.linesパターンで行単位に分解する。
なので出力するHaskellランタイム側にも行単位って概念が無い。
132デフォルトの名無しさん
2017/06/26(月) 08:29:13.90ID:dzp1rCHS133デフォルトの名無しさん
2017/06/26(月) 08:29:22.47ID:O05czwZw まあ、そんな事してるからHaskellは遅いんだろうなってのはある。
文字単位でバッファ目一杯入出力するけど、加工過程で分解して戻してってしてるんだし。
文字単位でバッファ目一杯入出力するけど、加工過程で分解して戻してってしてるんだし。
134デフォルトの名無しさん
2017/06/26(月) 08:30:25.78ID:O05czwZw135デフォルトの名無しさん
2017/06/26(月) 08:37:10.13ID:O05czwZw136デフォルトの名無しさん
2017/06/26(月) 08:44:37.68ID:e8nxxM8b KotlinはJava標準ライブラリに対する拡張も上手い
Javaに背を向けたScalaとは違って、Java標準ライブラリの良いところ駄目なところを深く理解して
最小限でツボを押さえた拡張を入れてる
Scalaが一瞬で要らない子になったのも納得
Javaに背を向けたScalaとは違って、Java標準ライブラリの良いところ駄目なところを深く理解して
最小限でツボを押さえた拡張を入れてる
Scalaが一瞬で要らない子になったのも納得
137デフォルトの名無しさん
2017/06/26(月) 08:51:02.56ID:O05czwZw >>126
ついでに言えばPythonのは逆順でもメモリに溜め込まないはずで、大きなファイルだとPython使った方がいいってことになる。
でも、今時のスペックで問題になる程溜め込む場面自体が無い。
小説100冊分が1ファイルに入ってやっとちょっと気になるレベルだから。
なら、より短く書ける方がいい。
コンパイル遅いつっても書き捨てレベルなら毎度毎度定型的にPythonで書いてる時間で終わってる。
自分でライブラリ作ってからは完全にLL的な使い方はHaskellで良いやってなった。
素のままだとPythonのが良いけどね。
自分でライブラリ作るかどうかが決め手だった。
ついでに言えばPythonのは逆順でもメモリに溜め込まないはずで、大きなファイルだとPython使った方がいいってことになる。
でも、今時のスペックで問題になる程溜め込む場面自体が無い。
小説100冊分が1ファイルに入ってやっとちょっと気になるレベルだから。
なら、より短く書ける方がいい。
コンパイル遅いつっても書き捨てレベルなら毎度毎度定型的にPythonで書いてる時間で終わってる。
自分でライブラリ作ってからは完全にLL的な使い方はHaskellで良いやってなった。
素のままだとPythonのが良いけどね。
自分でライブラリ作るかどうかが決め手だった。
138デフォルトの名無しさん
2017/06/26(月) 10:49:16.29ID:/blKTM20 複数のファイルを順番に読んでいって、特定の文字列が見つかるまで入力をそのまま出力する
文字列が見つかったら即終了
ってプログラムを、その自慢のライブラリで書いてみてよ
文字列が見つかったら即終了
ってプログラムを、その自慢のライブラリで書いてみてよ
139デフォルトの名無しさん
2017/06/26(月) 10:53:00.61ID:IaB2vgDA スレ違いの日記帳の相手してどうすんの
140デフォルトの名無しさん
2017/06/26(月) 11:35:20.04ID:e8nxxM8b 行単位なのはダサいといいながら自分のライブラリはべったり行単位に依存してるのが笑いどころだな
結局行単位が便利だと思う人が多いからlineSequenceみたいなユーティリティが標準で用意されてるだけで、
やってることはunlines.f.linesと変わらんぞ
結局行単位が便利だと思う人が多いからlineSequenceみたいなユーティリティが標準で用意されてるだけで、
やってることはunlines.f.linesと変わらんぞ
141デフォルトの名無しさん
2017/06/26(月) 12:07:26.65ID:lPpre0LA >>138
import System.Environment
import Data.List
import Myfunc
main = getArgs >>= (w:fs) ->
mfput (unlines.lines.last.(takeWhile (not.isInfixOf w)).inits) fs
import System.Environment
import Data.List
import Myfunc
main = getArgs >>= (w:fs) ->
mfput (unlines.lines.last.(takeWhile (not.isInfixOf w)).inits) fs
142デフォルトの名無しさん
2017/06/26(月) 12:56:36.59ID:+LDRBUDl import System.Environment
import Data.List
import Myfunc
main = getArgs >>= (w:fs) ->
mfput ((++ "\n").last.(takeWhile (not.isInfixOf w)).inits) fs
unlines.lines要らんかった。
直後って書いてたから最初の検索文字列全部表示される前に終了かと思って上のコードにしたけど、最初の検索文字列表示した時点で終了なら、takeWhileをdropWhileにして、lastをheadにすれば良い。
import Data.List
import Myfunc
main = getArgs >>= (w:fs) ->
mfput ((++ "\n").last.(takeWhile (not.isInfixOf w)).inits) fs
unlines.lines要らんかった。
直後って書いてたから最初の検索文字列全部表示される前に終了かと思って上のコードにしたけど、最初の検索文字列表示した時点で終了なら、takeWhileをdropWhileにして、lastをheadにすれば良い。
143デフォルトの名無しさん
2017/06/26(月) 14:59:05.87ID:a2h1pIHa144デフォルトの名無しさん
2017/06/28(水) 22:04:57.53ID:l3RQzrcR F#ってどうよ
145デフォルトの名無しさん
2017/06/29(木) 00:10:11.51ID:qxdPWLiZ OCAMLを.netで記法(not構文)変えて作りましたって感じ>F#
冗長記法だとOCAML互換性高いし
冗長記法だとOCAML互換性高いし
146デフォルトの名無しさん
2017/06/29(木) 17:11:41.82ID:wGgfLCtF ***SLAMO***
}
000-"F","TAP","0","1M","L","E-07"/0B"[9BA%]"^"2*73B"="0"/"9GA"
001-"Do"[[[%9DE=HUF%%!%$0B1OTU"NE"]]]<\b>
002-<<%!!!HNDEL%!0DAI@$7[1B]!0#!@>>
3000-{{1\B%HUF!0$$\%6/0Q\%6/GA[[7BU]]%9TE!%$en$}}
---
[[[C%%]]]
}
000-"5802"/"α"="0.1888412376155482"%en{
}
000-"F","TAP","0","1M","L","E-07"/0B"[9BA%]"^"2*73B"="0"/"9GA"
001-"Do"[[[%9DE=HUF%%!%$0B1OTU"NE"]]]<\b>
002-<<%!!!HNDEL%!0DAI@$7[1B]!0#!@>>
3000-{{1\B%HUF!0$$\%6/0Q\%6/GA[[7BU]]%9TE!%$en$}}
---
[[[C%%]]]
}
000-"5802"/"α"="0.1888412376155482"%en{
147デフォルトの名無しさん
2017/06/30(金) 08:41:39.49ID:l6mEUTPw F# は 関数型らしい抽象化機能※ を持っていないのが欠点
抽象化は .NET ( C# ) 互換の抽象クラスやインターフェースで実現することができる
でも型推論が効かなかったり null 安全でなかったりして辛い
※OCaml では構造的部分型やモジュール抽象化
Haskell では型クラスや型族のこと
抽象化は .NET ( C# ) 互換の抽象クラスやインターフェースで実現することができる
でも型推論が効かなかったり null 安全でなかったりして辛い
※OCaml では構造的部分型やモジュール抽象化
Haskell では型クラスや型族のこと
148デフォルトの名無しさん
2017/06/30(金) 20:40:32.58ID:2TVIteiy 型だけを見ればC#とF#は同じだろ
Haskellだって型だけを見れば他の言語で同じものは作れる
型だけを見るのが王道
逆に型を無視してHaskellにしかないものを強調するのは邪道だから
惑わされるなよ
Haskellだって型だけを見れば他の言語で同じものは作れる
型だけを見るのが王道
逆に型を無視してHaskellにしかないものを強調するのは邪道だから
惑わされるなよ
149デフォルトの名無しさん
2017/06/30(金) 20:44:45.42ID:QqdIJRSN 次世代言語でHaskell並にちゃんとした型システムが入ってる言語ってある?
150デフォルトの名無しさん
2017/06/30(金) 21:24:26.03ID:2TVIteiy Haskell並ならちゃんとしてるというのは本当か?
ちゃんとしてないから「Haskell並」や「Haskellよりマシ」と言い訳するんじゃないか
ちゃんとしてないから「Haskell並」や「Haskellよりマシ」と言い訳するんじゃないか
151デフォルトの名無しさん
2017/06/30(金) 21:27:48.40ID:2Da2vksV 構造的部分型が「ちゃんとしてる」かは大いに疑問
あんなもんドカタITで使ったら悪夢だろ
あんなもんドカタITで使ったら悪夢だろ
152デフォルトの名無しさん
2017/06/30(金) 21:57:41.84ID:onXQUvLg >>151
Haskellの機能じゃないし、その上根拠もない
Haskellの機能じゃないし、その上根拠もない
153デフォルトの名無しさん
2017/06/30(金) 22:00:33.62ID:onXQUvLg154デフォルトの名無しさん
2017/07/01(土) 09:18:35.85ID:1tCqnKMv 中途半端な奴だな
オレが一位だというならまだわかるが
Haskellが上位だという主張の何が嬉しいのか
オレが一位だというならまだわかるが
Haskellが上位だという主張の何が嬉しいのか
155デフォルトの名無しさん
2017/07/01(土) 10:27:16.17ID:yvgbUlYU 古い関数型言語関係の本だと、論理型言語が関数型言語の次の世代とか書いてて、まあ実際最近ワトソンやらペッパーやらAI関係で注目されてるのも論理型言語な訳で。
んじゃPrologはHaskellより使い易いんか?と勉強中。
早くもコレジャナイ感が。。。
もっと今時の論理型言語って無いんかな。
んじゃPrologはHaskellより使い易いんか?と勉強中。
早くもコレジャナイ感が。。。
もっと今時の論理型言語って無いんかな。
156デフォルトの名無しさん
2017/07/01(土) 10:52:05.29ID:yAtrmQtL Adaの型はどう?
157デフォルトの名無しさん
2017/07/01(土) 20:53:28.76ID:fjhXkhY/158デフォルトの名無しさん
2017/07/01(土) 22:05:29.59ID:wWo+lhH6 ケチつけたいだけのガガガガイジの相手すんなよな
159デフォルトの名無しさん
2017/07/01(土) 22:57:47.40ID:1tCqnKMv 競争に勝つためにケチをつける自由がある
負ける自由もある
好きな方を選べ
負ける自由もある
好きな方を選べ
160デフォルトの名無しさん
2017/07/02(日) 00:11:43.12ID:gxDwTGkS あ、そう言うこと言っちゃう?
おいらのライブラリ(>>84-85)の肝はmfputとmfwriteだが、結局他の言語で同じ様な関数作ってない。
当然だ。
Haskellは手続き型言語のforにあたるmap系の関数もそのまんま関数だし、Haskellだと自然に出力系は最後尾に追いやられるから関数化しやすいんだよ。
普通の言語は処理しながら出力する。
確かに効率が良い。
だが、再利用し難い。
今時のPCなら効率より再利用性のが重要だと思うんだ。
異論は認める。
おいらのライブラリ(>>84-85)の肝はmfputとmfwriteだが、結局他の言語で同じ様な関数作ってない。
当然だ。
Haskellは手続き型言語のforにあたるmap系の関数もそのまんま関数だし、Haskellだと自然に出力系は最後尾に追いやられるから関数化しやすいんだよ。
普通の言語は処理しながら出力する。
確かに効率が良い。
だが、再利用し難い。
今時のPCなら効率より再利用性のが重要だと思うんだ。
異論は認める。
161デフォルトの名無しさん
2017/07/02(日) 01:00:22.98ID:C9YQ5tYh 大きなファイルを処理できないことで再利用性が大幅に低下するとは考えないのかな?
再利用の機会の多いものであれば少々手間をかけても効率を上げる価値があるケースもある
再利用の機会の多いものであれば少々手間をかけても効率を上げる価値があるケースもある
162デフォルトの名無しさん
2017/07/02(日) 01:20:46.16ID:u1Wmv21R LispとPrologの構文は汎用性があるからパーサーの再利用が重要だよ
文字列処理のような新しいパーサーを作る機能は重要じゃないよ
でも文字列の処理を書いてしまったらもう再利用を語る資格はないと思う
文字列処理のような新しいパーサーを作る機能は重要じゃないよ
でも文字列の処理を書いてしまったらもう再利用を語る資格はないと思う
163デフォルトの名無しさん
2017/07/02(日) 07:23:22.14ID:WUD7Q/xy >>161
何度も書いた気はするんだが、遅延評価でメモリに溜め込んで出力してる様に見える処理も、
実際に火必要に応じて出力しながら処理してるから、.実際に溜め込んじゃうreverse使う様な処理じゃなければ大きなファイルも扱えるし、その気になればreverseな処理もCのfseek相当の関数もあるから克服出来る。
ただ、そこまで大きなファイルなら、Cで書いた方が速いの分かってるし適材適所。
何度も書いた気はするんだが、遅延評価でメモリに溜め込んで出力してる様に見える処理も、
実際に火必要に応じて出力しながら処理してるから、.実際に溜め込んじゃうreverse使う様な処理じゃなければ大きなファイルも扱えるし、その気になればreverseな処理もCのfseek相当の関数もあるから克服出来る。
ただ、そこまで大きなファイルなら、Cで書いた方が速いの分かってるし適材適所。
164デフォルトの名無しさん
2017/07/02(日) 08:20:48.27ID:uovtJU8N165デフォルトの名無しさん
2017/07/02(日) 09:08:10.92ID:hGhen2or 出力先がない状況って何ンゴ?
166デフォルトの名無しさん
2017/07/02(日) 09:28:31.60ID:lZlu9LSV >>160
mapに出来てforに出来ない事って何?
mapに出来てforに出来ない事って何?
167デフォルトの名無しさん
2017/07/02(日) 09:46:22.26ID:0JAKzAeZ 明らかに>>122の方が可読性が高い件
168デフォルトの名無しさん
2017/07/02(日) 09:53:43.24ID:nuNQpba8 forに出来てgotoに出来ないことって何?
169デフォルトの名無しさん
2017/07/02(日) 09:54:28.82ID:sP9TjomQ もうjavascriptだけで良いよ
170デフォルトの名無しさん
2017/07/02(日) 09:55:33.26ID:lZlu9LSV >>168
ライブラリ化や可読性の意味でだよ
ライブラリ化や可読性の意味でだよ
171デフォルトの名無しさん
2017/07/02(日) 09:58:49.45ID:lZlu9LSV ちなみにHaskellではforMとmapMは引数の順番が逆なだけ
172デフォルトの名無しさん
2017/07/02(日) 11:33:32.10ID:Nl2/i6W2 fmapと内包表記とdo記法は外見が違うだけ
javaとscalaとkotlinみたいなもん
javaとscalaとkotlinみたいなもん
173デフォルトの名無しさん
2017/07/02(日) 12:30:20.47ID:Ey9UZy2f174デフォルトの名無しさん
2017/07/02(日) 12:36:37.05ID:0JAKzAeZ >>173
今時はyieldとかあるんやで
今時はyieldとかあるんやで
175デフォルトの名無しさん
2017/07/02(日) 12:39:37.96ID:Nl2/i6W2 値を返せないのは、getterを作るなというOOPの教義のせいでもある
176デフォルトの名無しさん
2017/07/02(日) 14:28:11.11ID:lZlu9LSV >>173
老害を自覚しましょうね
老害を自覚しましょうね
177デフォルトの名無しさん
2017/07/02(日) 15:37:42.58ID:Nl2/i6W2 pythonのyieldはStopIterationが気持ち悪い
ではnullを返せばいいかというとそれも気持ち悪い
値を返せない空気に逆らうのは楽じゃない
ではnullを返せばいいかというとそれも気持ち悪い
値を返せない空気に逆らうのは楽じゃない
178パシュー
2017/07/02(日) 16:23:07.20ID:JZu2jdmH スレ違いであればすみません、どなたかわかる方いらっしゃればお願いします。
先日、営業電話があり、お宅のところはau光を利用してますよね?
→今まで、この手の電話で言った覚えが無い。ただ、au光は確かに利用・・・
何故、わかるのか問いただしたところ、相手からこちらの固定電話に電話するときや、
メールに送信するときの反応、時間、信号?跳ね返りの反応? でわかりますとの回答。
確かに先日、某サイトから携帯とセットでネット環境の見直しとして、
問い合わせはしましたが、果たして、相手からメールアドレスを
送信した時の反応や送信までの時間、
電話が繋がるまでの少しの時間での反応などで分かるものなのでしょうか?
ちなみに携帯の番号は教えてません。携帯であればドコモやauなどとあたりをつけることはわかるのですが…
どなたか教えて下さい!
先日、営業電話があり、お宅のところはau光を利用してますよね?
→今まで、この手の電話で言った覚えが無い。ただ、au光は確かに利用・・・
何故、わかるのか問いただしたところ、相手からこちらの固定電話に電話するときや、
メールに送信するときの反応、時間、信号?跳ね返りの反応? でわかりますとの回答。
確かに先日、某サイトから携帯とセットでネット環境の見直しとして、
問い合わせはしましたが、果たして、相手からメールアドレスを
送信した時の反応や送信までの時間、
電話が繋がるまでの少しの時間での反応などで分かるものなのでしょうか?
ちなみに携帯の番号は教えてません。携帯であればドコモやauなどとあたりをつけることはわかるのですが…
どなたか教えて下さい!
179デフォルトの名無しさん
2017/07/02(日) 18:05:16.33ID:XQorprgY 選択肢が少なけりゃあてずっぽでいいだろw
180デフォルトの名無しさん
2017/07/02(日) 18:06:59.55ID:O/UEQvVu181デフォルトの名無しさん
2017/07/02(日) 21:50:57.08ID:19kDKEGS182デフォルトの名無しさん
2017/07/02(日) 22:22:57.06ID:19kDKEGS >>176
まあ若いと言えない年になりつつあって20代の頃に比べりゃ覚えが悪くなってる自覚はある。
それでもC/C++、VB(.net含む)、Java、C#、Python、Ruby、smalltalk、Delphi含むPascal、もちHaskellは割と使えるぞ。
なんと無く分かっただけなのはLisp、Prolog、Erlang。
関数論理型言語Curryはもうチョイメジャーになったら本格的に覚えたい。
でもな。
学習と挫折繰り返した末に到達したのは覚えた言語の数じゃないって事だ。
知るべきはアルゴリズムや文法じゃ無い。(いあ、後々覚えなきゃだが)
作りたいアプリに対する周辺知識。(ファイル構造だったり、アプリにしたい事象に対する知識)
まあ若いと言えない年になりつつあって20代の頃に比べりゃ覚えが悪くなってる自覚はある。
それでもC/C++、VB(.net含む)、Java、C#、Python、Ruby、smalltalk、Delphi含むPascal、もちHaskellは割と使えるぞ。
なんと無く分かっただけなのはLisp、Prolog、Erlang。
関数論理型言語Curryはもうチョイメジャーになったら本格的に覚えたい。
でもな。
学習と挫折繰り返した末に到達したのは覚えた言語の数じゃないって事だ。
知るべきはアルゴリズムや文法じゃ無い。(いあ、後々覚えなきゃだが)
作りたいアプリに対する周辺知識。(ファイル構造だったり、アプリにしたい事象に対する知識)
183デフォルトの名無しさん
2017/07/02(日) 22:26:25.12ID:19kDKEGS あ、x86とARMのアセンブラもか。
184デフォルトの名無しさん
2017/07/02(日) 22:31:49.24ID:19kDKEGS てか、Haskellのお陰でクイックソートがやマージソートがどう言う動きしてんのか理解出来たんだよ。
そう言う意味じゃCやJavaのアルゴリズム本みたいにコード示して終わりじゃ無くて、超初心者向けのどう言う動きですって動きだけ説明してる本のが有用だわ。
それ読んでコード書けない程度の抽象的な考えが出来ない(おいらみたいな)奴はプログラマの才能無い。
そう言う意味じゃCやJavaのアルゴリズム本みたいにコード示して終わりじゃ無くて、超初心者向けのどう言う動きですって動きだけ説明してる本のが有用だわ。
それ読んでコード書けない程度の抽象的な考えが出来ない(おいらみたいな)奴はプログラマの才能無い。
185デフォルトの名無しさん
2017/07/03(月) 00:03:55.72ID:Tx9mAztB Haskellのinplace quicksortって可読性低くて冗長じゃん
Haskellerはあんなのが読みやすいの?
それとも、全く実用にならないquicksortのコードみて簡潔だと思っちゃったタイプ?
Haskellerはあんなのが読みやすいの?
それとも、全く実用にならないquicksortのコードみて簡潔だと思っちゃったタイプ?
186デフォルトの名無しさん
2017/07/03(月) 00:05:35.20ID:MHKU0t6b 再帰のクイックソートは理解しやすいからな
実用性はともかく
実用性はともかく
187デフォルトの名無しさん
2017/07/03(月) 00:08:46.80ID:UYk8Gv77 >>185
うい。
TDNクイックソートで簡潔だと思ったタイプ。
遅いって分かっててもね。
動作さえ分かれば他の言語で書けるんじゃよ。
そしたら実用的になる。
LL的な使い方なら速度必要無いから、これ以上簡潔なものはない。
うい。
TDNクイックソートで簡潔だと思ったタイプ。
遅いって分かっててもね。
動作さえ分かれば他の言語で書けるんじゃよ。
そしたら実用的になる。
LL的な使い方なら速度必要無いから、これ以上簡潔なものはない。
188デフォルトの名無しさん
2017/07/03(月) 00:37:29.08ID:wW6TPWna C のコードより haskell のクイックソートのが理解しやすいって
本気で言ってんの?
本気で言ってんの?
189デフォルトの名無しさん
2017/07/03(月) 00:46:37.45ID:MHKU0t6b 妙なハードルつけてそれは本当の理解じゃないとかいうガイジ湧いてきたか?
190デフォルトの名無しさん
2017/07/03(月) 00:49:28.31ID:oRb6DKWl Cのクイックソートも悪くないよな
たった一個の配列を部分部分で触っていくだけ
範囲きめてピボットきめて交換、の繰り返し
メモリの使用に余計なところが無いからスカっとする
たった一個の配列を部分部分で触っていくだけ
範囲きめてピボットきめて交換、の繰り返し
メモリの使用に余計なところが無いからスカっとする
191デフォルトの名無しさん
2017/07/03(月) 08:07:49.86ID:02h+sYLq >>189
空間計算量とか知らない低脳君はアルゴリズムの話しに入ってこないでね
空間計算量とか知らない低脳君はアルゴリズムの話しに入ってこないでね
192デフォルトの名無しさん
2017/07/03(月) 08:47:12.79ID:MHKU0t6b >>191
勝手に相手の理解度決めつけるガイジはレスしないでね
勝手に相手の理解度決めつけるガイジはレスしないでね
193デフォルトの名無しさん
2017/07/03(月) 08:49:31.61ID:MHKU0t6b まずこの話計算量関係ないからな
二重の意味でガイジやね
二重の意味でガイジやね
194デフォルトの名無しさん
2017/07/03(月) 08:57:49.58ID:1X06ZxCF195デフォルトの名無しさん
2017/07/03(月) 08:59:51.73ID:deAVzAEO196デフォルトの名無しさん
2017/07/03(月) 09:05:27.81ID:1X06ZxCF197デフォルトの名無しさん
2017/07/03(月) 09:07:05.32ID:1X06ZxCF でもO(n)とO(n log n)の区別もつかない低脳が次世代言語について語ってるって面白いな
198デフォルトの名無しさん
2017/07/03(月) 09:11:01.34ID:deAVzAEO199デフォルトの名無しさん
2017/07/03(月) 09:31:49.69ID:1X06ZxCF200デフォルトの名無しさん
2017/07/03(月) 09:49:48.18ID:deAVzAEO201デフォルトの名無しさん
2017/07/03(月) 10:41:46.80ID:apAa5CHd Cが原文でHaskellが翻訳文という前提なら
誤訳のリスクがあるHaskellの方が読みやすいってことは理論上ありえないね
でも理論には前提があるから、前提をぶち壊せば理論上ありえないことが実現する
誤訳のリスクがあるHaskellの方が読みやすいってことは理論上ありえないね
でも理論には前提があるから、前提をぶち壊せば理論上ありえないことが実現する
202デフォルトの名無しさん
2017/07/03(月) 11:19:50.56ID:6QSWtKdI203デフォルトの名無しさん
2017/07/03(月) 14:43:11.96ID:X+xTdZLt 次世代言語スレで何でみんなCとHaskellの話してんねん
そのうちCOBOLとかForthの話になるのか
そのうちCOBOLとかForthの話になるのか
204デフォルトの名無しさん
2017/07/03(月) 15:00:48.27ID:JOeKNGQV 全部、第3世代言語じゃ
205デフォルトの名無しさん
2017/07/03(月) 16:15:40.55ID:NT4tSDag どんどんプッシュしたくなる次世代言語が見えなくて
現実逃避してるような気がするのは気のせい?
現実逃避してるような気がするのは気のせい?
206デフォルトの名無しさん
2017/07/03(月) 17:12:08.86ID:apAa5CHd 言語を使いこなす正攻法よりもマインドをコントロールする裏技ばかり使うクズが増えた
言語の進化は止まった
言語の進化は止まった
207デフォルトの名無しさん
2017/07/03(月) 17:41:53.22ID:XPxmwxQZ >>203
CはともかくHaskellは永遠の次世代言語やぞ
CはともかくHaskellは永遠の次世代言語やぞ
208デフォルトの名無しさん
2017/07/03(月) 18:09:44.24ID:VYGl+Wps 娘に年齢を越されるんですね。
209デフォルトの名無しさん
2017/07/03(月) 20:16:26.39ID:wW6TPWna 普通にググればわかりやすい説明がでてくるというのに。。
本当に haskell のが分かりやすいなら下の wiki のページを書き換えてこいや。
https://ja.wikipedia.org/wiki/%E3%82%AF%E3%82%A4%E3%83%83%E3%82%AF%E3%82%BD%E3%83%BC%E3%83%88
本当に haskell のが分かりやすいなら下の wiki のページを書き換えてこいや。
https://ja.wikipedia.org/wiki/%E3%82%AF%E3%82%A4%E3%83%83%E3%82%AF%E3%82%BD%E3%83%BC%E3%83%88
210デフォルトの名無しさん
2017/07/03(月) 20:54:48.22ID:UwBLUxpl >>188
本気も本気。
んで、やっとCのクイックソートの動きや無駄の無さが理解できたし、自分で(コピペじゃ無く)書けるようになった。
才能ある奴は最初から理解出来るんだろうけど、おいらはHaskell経由する事で色々理解出来たし、Haskellでなら何でも書けるぞ‼︎ってなってから、やっと文法やアルゴリズム以上に大事なのはデータ構造だと気付いた。
メジャーな画像ファイルのデータ構造書いてるサイトあったら教えてくれ。
そしたら画像変換ソフト作る。
今はテキストなら分かってるからCUIのviライクな(悪魔でライク。自分なりにもっと一貫性のある移動コマンドにする予定)テキストエディタ今度の休みから作り始める予定。
Haskell普及の宣伝の一助になれば良いな。。。
本気も本気。
んで、やっとCのクイックソートの動きや無駄の無さが理解できたし、自分で(コピペじゃ無く)書けるようになった。
才能ある奴は最初から理解出来るんだろうけど、おいらはHaskell経由する事で色々理解出来たし、Haskellでなら何でも書けるぞ‼︎ってなってから、やっと文法やアルゴリズム以上に大事なのはデータ構造だと気付いた。
メジャーな画像ファイルのデータ構造書いてるサイトあったら教えてくれ。
そしたら画像変換ソフト作る。
今はテキストなら分かってるからCUIのviライクな(悪魔でライク。自分なりにもっと一貫性のある移動コマンドにする予定)テキストエディタ今度の休みから作り始める予定。
Haskell普及の宣伝の一助になれば良いな。。。
211デフォルトの名無しさん
2017/07/03(月) 20:56:29.38ID:NMIlsMGj212デフォルトの名無しさん
2017/07/03(月) 20:58:45.47ID:uur8r/IN ガイジガイジ言ってるやつウザい
話入って来れないならレスすんな
話入って来れないならレスすんな
213デフォルトの名無しさん
2017/07/03(月) 21:02:05.61ID:oRb6DKWl214デフォルトの名無しさん
2017/07/03(月) 21:06:06.20ID:zOP0e03G そんなことよりElixirやろうぜ!楽しいよ!
215デフォルトの名無しさん
2017/07/03(月) 21:13:32.99ID:lw0BfZsD ぜひ樂しさを語ってくれ
216デフォルトの名無しさん
2017/07/03(月) 21:27:19.89ID:UwBLUxpl217デフォルトの名無しさん
2017/07/03(月) 21:27:43.28ID:sUmj13cM どうしてもエリクシールって読んじゃって
218デフォルトの名無しさん
2017/07/03(月) 21:29:54.44ID:oRb6DKWl219デフォルトの名無しさん
2017/07/03(月) 21:34:45.78ID:zOP0e03G Haskellの普及を一時やってたんだがElixirに乗り換えたお
220デフォルトの名無しさん
2017/07/03(月) 21:38:50.74ID:OUQpTrGv >>214
エリクサーは並列処理楽そうだから興味ある。
ErlangはPrologっぽいのが馴染めなかったからね。。。
(そのPrologも、地味に論理型言語の実験場的役割してるって記事読んで、制約論理プログラミングが取り入れられてるの実感して見直したところだけど)
エリクサーは並列処理楽そうだから興味ある。
ErlangはPrologっぽいのが馴染めなかったからね。。。
(そのPrologも、地味に論理型言語の実験場的役割してるって記事読んで、制約論理プログラミングが取り入れられてるの実感して見直したところだけど)
221デフォルトの名無しさん
2017/07/03(月) 21:40:10.37ID:OUQpTrGv222デフォルトの名無しさん
2017/07/03(月) 21:44:50.57ID:Rzh0OD1D いい、先生の言うことをよく聞いて。
Haskellは永久に普及しないの
Haskellは永久に普及しないの
223デフォルトの名無しさん
2017/07/03(月) 21:51:13.50ID:PMhP6mgs 分かってんよチクショウ。
でもな。
これ程入門者向けの言語は無いと思ってるんだ。
それこそ、小学生からプログラミングが取り入れられるなら、Haskell教えるべきだってくらいに。
構造が分かれば、手続き型言語後から覚えても役に立つ。
Haskellはプログラムの構造を明らかにする。
でもな。
これ程入門者向けの言語は無いと思ってるんだ。
それこそ、小学生からプログラミングが取り入れられるなら、Haskell教えるべきだってくらいに。
構造が分かれば、手続き型言語後から覚えても役に立つ。
Haskellはプログラムの構造を明らかにする。
224デフォルトの名無しさん
2017/07/03(月) 21:58:28.81ID:oRb6DKWl225デフォルトの名無しさん
2017/07/03(月) 22:08:00.17ID:deAVzAEO Haskellの人結構いいと思うけどな
言ってることもまあまあ妥当だと思うぞ
言ってることもまあまあ妥当だと思うぞ
226デフォルトの名無しさん
2017/07/03(月) 22:09:47.05ID:JRmmHagw >>223
haskellが小学生の入門に最適な理由を小学生にもわかるように説明してみろよw
haskellが小学生の入門に最適な理由を小学生にもわかるように説明してみろよw
227デフォルトの名無しさん
2017/07/03(月) 22:15:14.50ID:wybralPC このスレだけじゃなく他もやめてくれ
ほんと迷惑以外の何者でもない
そのレベルのHaskellの布教や他言語disが死体ならブログでやってくれ
でなきゃせめて読まずに済むようにコテハン付けてくれ
ほんと迷惑以外の何者でもない
そのレベルのHaskellの布教や他言語disが死体ならブログでやってくれ
でなきゃせめて読まずに済むようにコテハン付けてくれ
228デフォルトの名無しさん
2017/07/03(月) 22:17:15.83ID:wybralPC229デフォルトの名無しさん
2017/07/03(月) 22:20:39.13ID:wybralPC コイツのつまんない自己満ライブラリ連投がなきゃスレがにぎわんってなら
過疎って落ちる方がずっとマシ
過疎って落ちる方がずっとマシ
230デフォルトの名無しさん
2017/07/03(月) 22:32:40.33ID:r5yHurmA 一つにまとめてくれんかね
なんで言語乱発すんの
なんで言語乱発すんの
231デフォルトの名無しさん
2017/07/03(月) 22:40:55.36ID:hTTgnp+k >>224
んじゃ、課題な。
これ解決したらROMる。
>>84-85のコードで>>85だな。
mfptn,mfput,mfwriteに相当する汎用的な関数手続き型言語で書いてくれ。
Haskellより簡潔な形で。
表面的にはクロージャ渡してループの中の変数に渡せば良い。
問題は、オープンするには純粋なファイル名だが、表示する時ファイル名を青文字にしたいとかそう言うカスタマイズ可能なmfptnが書けるかだ。
書ければmfputもmfwriteもmfptn使って似た様なコード書かなくて済む様になる。
>>225
ありがとう。
これでも言語オタとして色んな言語渡り歩いて導き出した結論。
やっとプログラマのスタートラインに立てた実感からの発言。
マジレスってやつなんだ。
間違ってたら指摘も結構。
真摯に受け止める。
今はプログラミング用のコマンド作ってるのがメイン。
自分の為のツール作るのが一番モチベーション保てるね。
HaskellerならEmacsって思ってたけど、viが軽くて、実験的に書いた行を消したいだけとかに良いね。
(Emacs、編集したいだけなのに型検査だかコンパイルだかやってんじゃねーよボケ)
ただ、せっかくhjklで上下左右一文字移動なんだから、その上下段のyuioやbnm,で単語や行の移動しても良いじゃんよって思ったから作ろうと思ってる。
u/Uのアンドゥー/リドゥーは。。。CntlとAltかな。。。
んじゃ、課題な。
これ解決したらROMる。
>>84-85のコードで>>85だな。
mfptn,mfput,mfwriteに相当する汎用的な関数手続き型言語で書いてくれ。
Haskellより簡潔な形で。
表面的にはクロージャ渡してループの中の変数に渡せば良い。
問題は、オープンするには純粋なファイル名だが、表示する時ファイル名を青文字にしたいとかそう言うカスタマイズ可能なmfptnが書けるかだ。
書ければmfputもmfwriteもmfptn使って似た様なコード書かなくて済む様になる。
>>225
ありがとう。
これでも言語オタとして色んな言語渡り歩いて導き出した結論。
やっとプログラマのスタートラインに立てた実感からの発言。
マジレスってやつなんだ。
間違ってたら指摘も結構。
真摯に受け止める。
今はプログラミング用のコマンド作ってるのがメイン。
自分の為のツール作るのが一番モチベーション保てるね。
HaskellerならEmacsって思ってたけど、viが軽くて、実験的に書いた行を消したいだけとかに良いね。
(Emacs、編集したいだけなのに型検査だかコンパイルだかやってんじゃねーよボケ)
ただ、せっかくhjklで上下左右一文字移動なんだから、その上下段のyuioやbnm,で単語や行の移動しても良いじゃんよって思ったから作ろうと思ってる。
u/Uのアンドゥー/リドゥーは。。。CntlとAltかな。。。
232デフォルトの名無しさん
2017/07/03(月) 23:04:54.14ID:oRb6DKWl233デフォルトの名無しさん
2017/07/03(月) 23:08:44.96ID:hTTgnp+k >>226
小学生に算数って実は面白いかも?って思ってもらう本(電子書籍)書いてからね。
元々書きたいとは思ってるんよ。
Haskell入門以前って電子書籍は出してる。
以前って付くの一冊しか無いから一発。
普通の再帰が末尾再帰に自動変換の下りは嘘っぱちで、スタック消費を抑えただけだったみたいなんだけど、それ以外なら関数脳作る一助になると思う。
お金あるならプログラミング in OCamlのが関数脳作るのに良いと思うけど。
(これの著者がHaskell本書いてくれれば最高なのに)
小学生に算数って実は面白いかも?って思ってもらう本(電子書籍)書いてからね。
元々書きたいとは思ってるんよ。
Haskell入門以前って電子書籍は出してる。
以前って付くの一冊しか無いから一発。
普通の再帰が末尾再帰に自動変換の下りは嘘っぱちで、スタック消費を抑えただけだったみたいなんだけど、それ以外なら関数脳作る一助になると思う。
お金あるならプログラミング in OCamlのが関数脳作るのに良いと思うけど。
(これの著者がHaskell本書いてくれれば最高なのに)
234デフォルトの名無しさん
2017/07/03(月) 23:11:09.43ID:hTTgnp+k235デフォルトの名無しさん
2017/07/03(月) 23:16:44.69ID:lw0BfZsD >>233
2冊ww
2冊ww
236デフォルトの名無しさん
2017/07/03(月) 23:16:55.17ID:apAa5CHd ジョブズのように美しいデザインに異常にこだわるタイプが
もし表現の自由や基本的人権を美しくないと判断したら何が起きるか
既に何か起きてるか
もし表現の自由や基本的人権を美しくないと判断したら何が起きるか
既に何か起きてるか
237デフォルトの名無しさん
2017/07/03(月) 23:30:27.58ID:hTTgnp+k238デフォルトの名無しさん
2017/07/04(火) 00:13:38.28ID:ay5PiZ4N nl, tac, grepで全部事足りるんだが
239デフォルトの名無しさん
2017/07/04(火) 00:47:05.17ID:huKUW2nT nlなんて書いた覚えないが。。。
tacやgrepと言うコマンド名を知らなかった頃に書いたのを、リネームしただけだからね。
そう言う機能がないか調べるより書いちゃえって主義。
おいらの場合、そうでも無いとプログラミング力が付かない。
tacやgrepと言うコマンド名を知らなかった頃に書いたのを、リネームしただけだからね。
そう言う機能がないか調べるより書いちゃえって主義。
おいらの場合、そうでも無いとプログラミング力が付かない。
240デフォルトの名無しさん
2017/07/04(火) 04:24:48.11ID:LX4AtBOp241デフォルトの名無しさん
2017/07/04(火) 06:47:47.53ID:IVSy+wIs >>239
再利用性が大事なんじゃなかったのか?
再利用性が大事なんじゃなかったのか?
242デフォルトの名無しさん
2017/07/04(火) 12:23:37.78ID:FYa81knm Linux始めたばかりで探すより書いたほうが早かったから。
どっちが早いかの問題。
どっちが早いかの問題。
243デフォルトの名無しさん
2017/07/04(火) 12:25:05.34ID:FYa81knm244デフォルトの名無しさん
2017/07/04(火) 14:01:02.84ID:pyKR417/ やんくとアンドゥ潰すとか誰が使うんだよ
245デフォルトの名無しさん
2017/07/04(火) 14:09:58.01ID:pyKR417/ よく見たらinsertモードと改行insertも潰れるのかwww
もうそれvimでもなんでもねーやん
もうそれvimでもなんでもねーやん
246デフォルトの名無しさん
2017/07/04(火) 14:15:22.45ID:vfHvNnoh 勉強せずに自分で作るとか言ってるとヤンクアンドゥインサート改行インサート潰すガイジに成り下がるのか
やっぱり慣例の勉強って大切だわ
やっぱり慣例の勉強って大切だわ
247デフォルトの名無しさん
2017/07/04(火) 18:25:49.77ID:ZOpHOB0v 再利用性大事とか言いつつオレオレ仕様で車輪の再発明しちゃうアホンダラなんだなぁHaskellerって
机の上のお勉強はできるのかもわからんが、ギークとしてのセンスが皆無なんだな
机の上のお勉強はできるのかもわからんが、ギークとしてのセンスが皆無なんだな
248デフォルトの名無しさん
2017/07/04(火) 18:30:51.12ID:ZOpHOB0v 探す手間より書いた方が早いとか言うやつは、自分の書いたもの見せびらかしたいだけ
お勉強はできるからそこそこのものを作れるんだろうが
既存の枯れたものの仕様ガン無視で作るせいで結局作ったお前さんしか再利用できないオナニーの産物
お勉強はできるからそこそこのものを作れるんだろうが
既存の枯れたものの仕様ガン無視で作るせいで結局作ったお前さんしか再利用できないオナニーの産物
249デフォルトの名無しさん
2017/07/04(火) 18:35:07.55ID:ZOpHOB0v 別に言語の再利用性は机の上でのお勉強の得意なお前さんの言う通り
Haskellの方が高いんじゃねえの?しらんけど
でもお前さんがオレオレで作ったものの再利用性は低いよなあってお話
なんせ既にあるものガン無視でオレオレ仕様の再発明しかしてねえんだから
Haskellの方が高いんじゃねえの?しらんけど
でもお前さんがオレオレで作ったものの再利用性は低いよなあってお話
なんせ既にあるものガン無視でオレオレ仕様の再発明しかしてねえんだから
250デフォルトの名無しさん
2017/07/04(火) 19:11:10.26ID:pyKR417/ >>239
いくらなんでもgrepも知らないって調べるより書いちゃえも何も、
単純にエンジニア、ライブラリアンとしてものを知らなすぎだろ
ls, find, cat, grep, sed, awk, xargsくらいは、知ってないとわけわからんよ
プログラミング力どうこう以前の問題
Haskellプログラマが全員こんなに馬鹿だと思われるのはすごく悲しい
いくらなんでもgrepも知らないって調べるより書いちゃえも何も、
単純にエンジニア、ライブラリアンとしてものを知らなすぎだろ
ls, find, cat, grep, sed, awk, xargsくらいは、知ってないとわけわからんよ
プログラミング力どうこう以前の問題
Haskellプログラマが全員こんなに馬鹿だと思われるのはすごく悲しい
251デフォルトの名無しさん
2017/07/04(火) 19:26:44.78ID:Mgy1XtU/ cat より less
cat より vi
cat より vi
252デフォルトの名無しさん
2017/07/04(火) 19:32:55.21ID:bn9cQclE catよりdog
>>184
Haskell のクイックソートやマージソートは本質を失っている,重要なのはインプレイス性だが haskell にそれは望めない
Haskell のクイックソートやマージソートは本質を失っている,重要なのはインプレイス性だが haskell にそれは望めない
254デフォルトの名無しさん
2017/07/04(火) 20:35:49.53ID:KFTmH+Xw >>244-246
そうか、ヤンクも潰しちゃうねぇ。。。
あれか。
Ctrl+hjklとかAlt+hjklに移動は集約しちゃうか。
コーディングしたくて気が早って"("押したら移動しちゃうとかが不便で、そう言うの起きにくい仕様にしたいだけなのよね。
オレオレのオナニーで結構だとは思うんだけど、不便にしたいわけじゃない。
少なくともおいらにとっては便利じゃないと。
>>247
ずっとWinだったんでcdとcatとlsはとりあえず分かったけど、awkとsedは聞いた事あるだけで、どんな機能か未だ分からず。
時間見て調べる予定。
grep,findはそう言う機能はあるだろうなとは思ったけどfindは望む機能じゃなかった。
grepは鯖入門書読むまで知らなかった。
元々そう言う不便な環境に身を置けば欲しい機能は自分で書くしかなくなるから、プログラミング能力伸びるだろってのが目的なんで、ある意味目論見通り。
そうか、ヤンクも潰しちゃうねぇ。。。
あれか。
Ctrl+hjklとかAlt+hjklに移動は集約しちゃうか。
コーディングしたくて気が早って"("押したら移動しちゃうとかが不便で、そう言うの起きにくい仕様にしたいだけなのよね。
オレオレのオナニーで結構だとは思うんだけど、不便にしたいわけじゃない。
少なくともおいらにとっては便利じゃないと。
>>247
ずっとWinだったんでcdとcatとlsはとりあえず分かったけど、awkとsedは聞いた事あるだけで、どんな機能か未だ分からず。
時間見て調べる予定。
grep,findはそう言う機能はあるだろうなとは思ったけどfindは望む機能じゃなかった。
grepは鯖入門書読むまで知らなかった。
元々そう言う不便な環境に身を置けば欲しい機能は自分で書くしかなくなるから、プログラミング能力伸びるだろってのが目的なんで、ある意味目論見通り。
255デフォルトの名無しさん
2017/07/04(火) 20:37:38.04ID:KFTmH+Xw256デフォルトの名無しさん
2017/07/04(火) 22:34:12.67ID:otSZmZCY In-placeじゃね?
(ほとんど)メモリ追加せずにその場でソート
(ほとんど)メモリ追加せずにその場でソート
257デフォルトの名無しさん
2017/07/04(火) 23:18:10.83ID:KFTmH+Xw ああ、省メモリってことね。
そりゃそうだ。
おいらだって手続き型言語で書けばなるべく書き換えで済まそうとする。
手軽さ優先か性能優先かだよ。
でも、性能優先のコードしか提示されなかった頃はどう言う動きか読み取れなかった。
その時点でプログラマの才能無いんだろうけど。
Haskellのコード見て、手続き型言語で書くには?ってなったら自然と配列書き換えられるんだから、書き換えた方がメモリ少なくて済む(&配列追加の手間が無い)ってなる。
言語によって面倒くささが違うんよね。
例えば総当たりソートとクイックソートは手続き型言語じゃ難易度に大差あるけど、関数型言語は大差無かったり。
LLでも大差無いけど、おいらのmfptn関数みたいなのがLLって感じで、難しい言語でよく使うパターンを文法やライブラリにしましたってだけで、そこから外れると普通の手続き型言語。
そりゃそうだ。
おいらだって手続き型言語で書けばなるべく書き換えで済まそうとする。
手軽さ優先か性能優先かだよ。
でも、性能優先のコードしか提示されなかった頃はどう言う動きか読み取れなかった。
その時点でプログラマの才能無いんだろうけど。
Haskellのコード見て、手続き型言語で書くには?ってなったら自然と配列書き換えられるんだから、書き換えた方がメモリ少なくて済む(&配列追加の手間が無い)ってなる。
言語によって面倒くささが違うんよね。
例えば総当たりソートとクイックソートは手続き型言語じゃ難易度に大差あるけど、関数型言語は大差無かったり。
LLでも大差無いけど、おいらのmfptn関数みたいなのがLLって感じで、難しい言語でよく使うパターンを文法やライブラリにしましたってだけで、そこから外れると普通の手続き型言語。
>>256
データのコピーを極力少なくしてその場でソート
データのコピーを極力少なくしてその場でソート
259デフォルトの名無しさん
2017/07/05(水) 06:47:52.98ID:x40Yunw0260デフォルトの名無しさん
2017/07/05(水) 07:01:16.37ID:SG/9DEZV >>257
お前Haskellで書きにくいコードから逃げて、
書けるとこだけ書いてHaskell書きやすいって言ってるだけじゃねーか
お前はそのクソコードで満足なのかもしれんが、それを押し付けてくんな
違うっていうならin-placeのソート書いてから能書き垂れろ
お前Haskellで書きにくいコードから逃げて、
書けるとこだけ書いてHaskell書きやすいって言ってるだけじゃねーか
お前はそのクソコードで満足なのかもしれんが、それを押し付けてくんな
違うっていうならin-placeのソート書いてから能書き垂れろ
261デフォルトの名無しさん
2017/07/05(水) 07:27:05.94ID:+U8R7kGU それの何がいけないんだろうか。。。
速度欲しい時だけCで書けば良いってのはまさにそれだが。
Haskellでも書けないことはないんだろうけど、楽するための言語なんだから、そんな事するならCで書くよ。
おいらにとってはLL的な用途にはLLよりHaskellのが楽だった。
それだけの事。
速度欲しい時だけCで書けば良いってのはまさにそれだが。
Haskellでも書けないことはないんだろうけど、楽するための言語なんだから、そんな事するならCで書くよ。
おいらにとってはLL的な用途にはLLよりHaskellのが楽だった。
それだけの事。
262デフォルトの名無しさん
2017/07/05(水) 07:33:33.70ID:x40Yunw0 仕様書の常套手段か
書ける仕様だけ書いて残りは実装依存で逃げる
書ける仕様だけ書いて残りは実装依存で逃げる
263デフォルトの名無しさん
2017/07/05(水) 07:38:51.44ID:bh56GpK2 Haskellの再利用性に関する重大な課題は>>80-81で既に示されてるね
mfput君の意見がまだみたいだけど見解は?
mfput君の意見がまだみたいだけど見解は?
264デフォルトの名無しさん
2017/07/05(水) 07:51:17.76ID:0jzZYcN5 >>142も結局mfputしか再利用出来てないし
mfput君は今のところ肝心の再利用性の高さについてはほとんど立証できていないように見える
Haskell云々というより本人の設計センスの問題な気もするが
mfput君は今のところ肝心の再利用性の高さについてはほとんど立証できていないように見える
Haskell云々というより本人の設計センスの問題な気もするが
265デフォルトの名無しさん
2017/07/05(水) 08:10:24.97ID:SG/9DEZV お前の意見なんて「自分のような初心者にとってはHaskellは分かりやすかった、以上」だけで十分なんだよ
お前のクソ初心者臭いコードやポエムを読まされて
他者が得るものがあるとでも?
お前のクソ初心者臭いコードやポエムを読まされて
他者が得るものがあるとでも?
266デフォルトの名無しさん
2017/07/05(水) 08:28:35.89ID:+4iFZrIp 2chのレスに得るもの求めるとかガイジかよ………
Stack overflow 池
Stack overflow 池
267デフォルトの名無しさん
2017/07/05(水) 08:33:57.06ID:6kuRSSMe 俺は2chで煽り耐性を身に着けた
268デフォルトの名無しさん
2017/07/05(水) 10:00:37.58ID:tWLafY8Y このスレでガイジガイジ連呼してるやつマジ病気かよ
どんだけリアルで悲惨な人生だったらこうなるんだ
どんだけリアルで悲惨な人生だったらこうなるんだ
269デフォルトの名無しさん
2017/07/05(水) 10:24:17.91ID:x40Yunw0 漫画みたいにいつまでたっても話が終わらない
病気か才能かはわからんが
病気か才能かはわからんが
270デフォルトの名無しさん
2017/07/05(水) 12:26:16.42ID:+4iFZrIp Haskellの言ってることは一応一貫してる
そこに突っ込んでる人は一貫してる部分を読めていないとしか思えないツッコミばっかり
そんな的を外したらツッコミに逐一返信してるんだから永久に終わるわけがない
そこに突っ込んでる人は一貫してる部分を読めていないとしか思えないツッコミばっかり
そんな的を外したらツッコミに逐一返信してるんだから永久に終わるわけがない
271デフォルトの名無しさん
2017/07/05(水) 12:32:33.78ID:GeoIRJSP272デフォルトの名無しさん
2017/07/05(水) 12:38:33.21ID:GeoIRJSP273デフォルトの名無しさん
2017/07/05(水) 12:45:05.83ID:XfevCCY3 しんちゃんスレ
274デフォルトの名無しさん
2017/07/05(水) 12:53:14.41ID:PFivIsqu >>271
81が回答とかさすがにガチハスケラにぶん殴られるぞ
ハスケラはこういう突っ込みには
「呼び出し側も含めて設計を見直せ。状態を持たせるというのは本質的に重大な変更であるから影響が大きいのは当然である。」と答えるのがテンプレだ
覚えておけば役に立つよ
81が回答とかさすがにガチハスケラにぶん殴られるぞ
ハスケラはこういう突っ込みには
「呼び出し側も含めて設計を見直せ。状態を持たせるというのは本質的に重大な変更であるから影響が大きいのは当然である。」と答えるのがテンプレだ
覚えておけば役に立つよ
275デフォルトの名無しさん
2017/07/05(水) 13:23:50.44ID:x40Yunw0 Javaでもうっかりstatic変数を使うと設計を見直させられるパターンだろ
thisとかselfとかいう引数を追加するのが定石
これはHaskellでも簡単にできる
thisとかselfとかいう引数を追加するのが定石
これはHaskellでも簡単にできる
276デフォルトの名無しさん
2017/07/05(水) 13:59:00.37ID:PFivIsqu Javaの場合はインスタンスフィールドでいいだろ
Haskellだと直前の値を保持しているところまで遡って全部修正かな
Haskellだと直前の値を保持しているところまで遡って全部修正かな
277デフォルトの名無しさん
2017/07/05(水) 21:01:53.58ID:z3CI8qH6 >>274
STモナドとかで実現は出来るんだけどさ。
GUIならGUI、DBならDBに状態保持を任せちゃった方がスマートだとは思わないかい?
テンプレじゃ無く、あんたのハートに聞いてる。
ああそうそう、実はgrepは検索文字列が見つかった前後20文字表示にするか行表示にするか迷って、行表示の方が簡単だからたまたまgrepと同じ機能になっただけで、前後20文字の場合は別にファイルの内容丸ごと記憶しておく変数を引き回しても良かった。
どうせ遅延評価で必要になるまで読み込まれないから2ファイル同時でもたかが知れてるしね。
丸ごと記憶する方法も、見つかったら29文字以前をGCしやすいようにするのと1から検索させるのとあるけど、小説10-20冊を1ファイルに収めても問題無いんだから気にする事もない。
STモナドとかで実現は出来るんだけどさ。
GUIならGUI、DBならDBに状態保持を任せちゃった方がスマートだとは思わないかい?
テンプレじゃ無く、あんたのハートに聞いてる。
ああそうそう、実はgrepは検索文字列が見つかった前後20文字表示にするか行表示にするか迷って、行表示の方が簡単だからたまたまgrepと同じ機能になっただけで、前後20文字の場合は別にファイルの内容丸ごと記憶しておく変数を引き回しても良かった。
どうせ遅延評価で必要になるまで読み込まれないから2ファイル同時でもたかが知れてるしね。
丸ごと記憶する方法も、見つかったら29文字以前をGCしやすいようにするのと1から検索させるのとあるけど、小説10-20冊を1ファイルに収めても問題無いんだから気にする事もない。
278デフォルトの名無しさん
2017/07/05(水) 21:03:02.86ID:z3CI8qH6 x29
o20
o20
279デフォルトの名無しさん
2017/07/05(水) 21:21:41.45ID:HfOW3or9 いかにHaskellキチがお勉強できて正しいこと言ってようと
こいつがgrepを始めとしたツールを知らない無知で
オレオレ仕様で再発明してドヤ顔してるトンチキなのには変わりないんだよな
こいつがgrepを始めとしたツールを知らない無知で
オレオレ仕様で再発明してドヤ顔してるトンチキなのには変わりないんだよな
280デフォルトの名無しさん
2017/07/05(水) 21:23:14.50ID:HfOW3or9 Haskellが使える言語かどうかは知らんけどHaskellerがオタンコナスなことはまた一つ実例が出てきてしまった以上の情報はないね
281デフォルトの名無しさん
2017/07/05(水) 21:27:53.06ID:vgwSeoh2 このHaskellerってファイル読み込んで同じファイルに上書きするの出来ないとか言ってたはずだけど、
それでどうやってテキストエディタ作るんだろう?
まさか全部DBにデータ入れるのか?
テキストエディタのインストールの前にDBのインストールが必要ってことか?
それでどうやってテキストエディタ作るんだろう?
まさか全部DBにデータ入れるのか?
テキストエディタのインストールの前にDBのインストールが必要ってことか?
282デフォルトの名無しさん
2017/07/05(水) 21:39:14.16ID:HfOW3or9 >>281
一時ファイルに書き出してムープじゃね?
一時ファイルに書き出してムープじゃね?
283デフォルトの名無しさん
2017/07/05(水) 21:46:58.82ID:z3CI8qH6284デフォルトの名無しさん
2017/07/05(水) 21:50:19.56ID:z3CI8qH6 >>281
それはwriteFile関数の仕様。
readFaile幾つ読み込んでもいいし、下位の関数探ってれば複数ファイル書き込めるのもあるだろう。
安全の為の仕様だし、安全じゃないのを許容するのがあるはず。
最悪、Cで書いてFFIでHaskellから呼べば良い。
それはwriteFile関数の仕様。
readFaile幾つ読み込んでもいいし、下位の関数探ってれば複数ファイル書き込めるのもあるだろう。
安全の為の仕様だし、安全じゃないのを許容するのがあるはず。
最悪、Cで書いてFFIでHaskellから呼べば良い。
285デフォルトの名無しさん
2017/07/05(水) 22:04:05.82ID:fqeoBJ4G >>277
全く思わないな
なんで勝手にGUIやDBを前提にしてるんだ?
これまで状態を持たなかった関数を前後の値を考慮するように変更したいというのは
君の大好きな「LL的なタスク」であってもそれほど珍しい状況ではないように思うぞ?
全く思わないな
なんで勝手にGUIやDBを前提にしてるんだ?
これまで状態を持たなかった関数を前後の値を考慮するように変更したいというのは
君の大好きな「LL的なタスク」であってもそれほど珍しい状況ではないように思うぞ?
286デフォルトの名無しさん
2017/07/05(水) 22:42:05.37ID:+4iFZrIp >>281
よく知らんけどleksahって言うHaskell製IDEが実在しているのでこのHaskellの人が言ってることが間違ってるのは間違いない
よく知らんけどleksahって言うHaskell製IDEが実在しているのでこのHaskellの人が言ってることが間違ってるのは間違いない
287デフォルトの名無しさん
2017/07/05(水) 22:49:59.85ID:+4iFZrIp288デフォルトの名無しさん
2017/07/05(水) 23:03:23.20ID:bh56GpK2 だいたいDBやGUIに持たせるといってもどこからそのコンテキストを持ってくるんだ?
結局呼び出し階層を遡って大修正だろう
暗黙的に環境の状態にアクセスするような関数があればいいとか思ってるなら、冗談抜きで怖いハスケラに夜道で襲われるレベルの邪悪な思想だぞそれ
結局呼び出し階層を遡って大修正だろう
暗黙的に環境の状態にアクセスするような関数があればいいとか思ってるなら、冗談抜きで怖いハスケラに夜道で襲われるレベルの邪悪な思想だぞそれ
289デフォルトの名無しさん
2017/07/06(木) 00:04:57.61ID:CrSqEEHs 大きすぎて修正できないならさっさと諦めて逃げれば邪悪にはならないが
逃げるくらいなら邪悪な方がマシだと思うから邪悪になる
逃げるくらいなら邪悪な方がマシだと思うから邪悪になる
290デフォルトの名無しさん
2017/07/06(木) 01:50:43.47ID:9Gxa3EmF >>283
まーHaskell自体は決して使えん言語ではないのは知ってる
書くもんが大型化してくるとデフォ遅延評価のせいで副作用周りのデバッグが発狂難易度になるとか
ちょっと気を抜くと遅延サンクが膨れ上がって死ぬとか
色々あるからあんまりモノリシックにでかいものを複数人で書くのには向いてない言語だとも思うがね
そういう意味でHaskellはハードウェア記述言語に向いてると思うんだが、まだこれといったやつが出てきてないんだよな
まーHaskell自体は決して使えん言語ではないのは知ってる
書くもんが大型化してくるとデフォ遅延評価のせいで副作用周りのデバッグが発狂難易度になるとか
ちょっと気を抜くと遅延サンクが膨れ上がって死ぬとか
色々あるからあんまりモノリシックにでかいものを複数人で書くのには向いてない言語だとも思うがね
そういう意味でHaskellはハードウェア記述言語に向いてると思うんだが、まだこれといったやつが出てきてないんだよな
291デフォルトの名無しさん
2017/07/06(木) 02:15:34.43ID:pIo4ewrq そもそも関数型が解決しようとした問題は、副作用の連鎖による想定外のトラブルだろ
大規模な構造をどう記述するかということであって、もうそれはOOPが解決してしまった
大規模な構造をどう記述するかということであって、もうそれはOOPが解決してしまった
292デフォルトの名無しさん
2017/07/06(木) 08:32:49.91ID:KLsItAo2 つまり純粋関数型は使えないと?
293デフォルトの名無しさん
2017/07/06(木) 08:51:12.34ID:EB5tIDF+ その純粋ってのを保証してるのはコンパイル時の型チェックだな
それがなければ使える
それがなければ使える
294デフォルトの名無しさん
2017/07/06(木) 09:13:26.21ID:Xn+el2UL つまりscala最強ってことか
295デフォルトの名無しさん
2017/07/06(木) 09:24:44.24ID:4UTaW8nX オブジェクト指向プログラムで副作用は解決してないだろ。どうみても。
296デフォルトの名無しさん
2017/07/06(木) 09:46:24.49ID:EB5tIDF+ 288の言う「呼び出し階層を遡って大修正」は
副作用有り・無しのチェックだけじゃない
ヌルを許容する・しないのチェックで破綻するケースもある
副作用有り・無しのチェックだけじゃない
ヌルを許容する・しないのチェックで破綻するケースもある
297デフォルトの名無しさん
2017/07/06(木) 10:02:36.10ID:tNWdrmh7298デフォルトの名無しさん
2017/07/06(木) 17:43:28.35ID:FO8iZdOb299デフォルトの名無しさん
2017/07/06(木) 19:15:58.18ID:NwSzXY2t プログラムが現実と関係を持ちつつ社会の中で動いている以上副作用を無くすことはできない。
全体を停めることができず、部分単位でアップデートを繰り返すならなおさら。
そう言った意味で『関数型言語』は結局いつまでも実現することのない賽の河原の石積み。
全体を停めることができず、部分単位でアップデートを繰り返すならなおさら。
そう言った意味で『関数型言語』は結局いつまでも実現することのない賽の河原の石積み。
300デフォルトの名無しさん
2017/07/06(木) 20:11:21.34ID:lW8KZ3Ns まあ言語の機能によって副作用のないコードエリアを明示するってアイディアは
良いと思うんだけどね。
haskell は変な極論を推し進めてどうしようもなくなってるという印象が強い。
良いと思うんだけどね。
haskell は変な極論を推し進めてどうしようもなくなってるという印象が強い。
301デフォルトの名無しさん
2017/07/06(木) 20:13:21.99ID:dOY2yuiz302デフォルトの名無しさん
2017/07/06(木) 20:29:36.80ID:XEsudacO Haskellは副作用禁止の言語だと思ってる奴多いんか?
副作用と純粋関数に分けて書くってだけだぞ
副作用と純粋関数に分けて書くってだけだぞ
303デフォルトの名無しさん
2017/07/06(木) 20:35:22.98ID:td/2KdW6 >>301
Haskellは極論バカだから特にそこが問題になるんでしょ
オブジェクト指向では少々副作用があろうが汚かろうがクラスに閉じ込めて外からは「問題にならない」ようにすることができる
mfput(笑)みたいな小さな問題と違って、現実世界の問題を相手にすると常に最初から完璧な設計をするなんて不可能だしね
Haskellは極論バカだから特にそこが問題になるんでしょ
オブジェクト指向では少々副作用があろうが汚かろうがクラスに閉じ込めて外からは「問題にならない」ようにすることができる
mfput(笑)みたいな小さな問題と違って、現実世界の問題を相手にすると常に最初から完璧な設計をするなんて不可能だしね
304デフォルトの名無しさん
2017/07/06(木) 20:39:55.53ID:td/2KdW6305デフォルトの名無しさん
2017/07/06(木) 22:50:47.39ID:C7kBl0W7 そもそもプログラム自体が副作用そのものだし
306デフォルトの名無しさん
2017/07/06(木) 23:11:16.25ID:4UTaW8nX Javascriptのこのクイックソートは副作用なし
// QuickSort
QS=X=>X.length<=1?X:[
...QS(X.filter((x,i)=>i>0&&x<X[0])),X[0],
...QS(X.filter((x,i)=>i>0&&x>=X[0]))];
//main
var x=1, X=[...Array(20)].map(()=>x=(7+37*x)%100);
console.log("in: "+X + "\nout: "+QS(X));
http://ideone.com/wnQXXE
// QuickSort
QS=X=>X.length<=1?X:[
...QS(X.filter((x,i)=>i>0&&x<X[0])),X[0],
...QS(X.filter((x,i)=>i>0&&x>=X[0]))];
//main
var x=1, X=[...Array(20)].map(()=>x=(7+37*x)%100);
console.log("in: "+X + "\nout: "+QS(X));
http://ideone.com/wnQXXE
307デフォルトの名無しさん
2017/07/07(金) 06:18:59.39ID:1OiH67XQ >>290
ハードウェア記述言語向きってのは使った事ないけど、分かる気がする。
おいらもHaskellでGUIから何から書き下すのは出来なくはないけどそれOOPで良いよねって思ってて、
でもある意味CUIよりGUIの方がメッセージやイベントに答えるコード書けば良いだけなんだから、
むしろGUIをHTMLやXAMLで記述するようになった今だからこそHaskellは環境さえ整えばGUIも向いてると思うんだよね。
その環境が絶望的に揃ってないだけで。
なんつーかな。
あんたと思ってんのは基本同じだな。
全部Haskellで書こうとするから無理が出る。
上手に副作用部分を外部ツールなり、他の言語に任せて連携させればこれ程シンプルかつ堅牢に作れる言語もなかろうって思う。
ハードウェア記述言語向きってのは使った事ないけど、分かる気がする。
おいらもHaskellでGUIから何から書き下すのは出来なくはないけどそれOOPで良いよねって思ってて、
でもある意味CUIよりGUIの方がメッセージやイベントに答えるコード書けば良いだけなんだから、
むしろGUIをHTMLやXAMLで記述するようになった今だからこそHaskellは環境さえ整えばGUIも向いてると思うんだよね。
その環境が絶望的に揃ってないだけで。
なんつーかな。
あんたと思ってんのは基本同じだな。
全部Haskellで書こうとするから無理が出る。
上手に副作用部分を外部ツールなり、他の言語に任せて連携させればこれ程シンプルかつ堅牢に作れる言語もなかろうって思う。
308デフォルトの名無しさん
2017/07/07(金) 09:21:04.24ID:Od+E3Jwj つまりhaskellではなくOOPと関数とマルチパラダイムが答えということか
あ、Scalaやね
あ、Scalaやね
309デフォルトの名無しさん
2017/07/07(金) 09:44:10.95ID:SZnapx63 今だとGoogleのお墨付きを貰ったKotlinだろう
mfput君のレベルだと全く不足ないことは上で実証済みだし
mfput君のレベルだと全く不足ないことは上で実証済みだし
310デフォルトの名無しさん
2017/07/07(金) 10:33:52.64ID:U3HkjAD4 Kotlinよさげ
型クラスもしくは高階型って使える?
型クラスもしくは高階型って使える?
311デフォルトの名無しさん
2017/07/07(金) 10:37:23.83ID:NO/da/cw312デフォルトの名無しさん
2017/07/07(金) 12:01:01.33ID:GpMOtbcc313デフォルトの名無しさん
2017/07/07(金) 12:31:39.94ID:qM4KnfoJ GUIで書きたいのはただの副作用ではなく非同期な副作用
非同期とXMLを流行らせたJSの手柄をOOPの手柄にするのはアクロバティック過ぎる
非同期とXMLを流行らせたJSの手柄をOOPの手柄にするのはアクロバティック過ぎる
314デフォルトの名無しさん
2017/07/07(金) 12:34:56.69ID:xvg52mfm え、逆だろ?
HTMLやXAMLは副作用の排出口。
だからそれらに書き込むような表層部分に副作用部分を集める。
むしろ今だからこそHaskellがGUIで活きる可能性が出て来た。
例えばエディタ作るとして、CUIだと文字入力監視用のループがある。
GUIだと文字入力されたってイベントに対応すれば良いから、HaskellだとGUIのがエディタ書きやすいと予想してる。
んで、そっからは文字列処理得意なHaskellの独壇場。
普通のアプリなら文字列処理をロジックと読み替えて良い。
まあ実はHaskellだけでGUI書いてもJavaやC#みたいにIDEが整備されてる言語には劣るけど、整備されてない言語とならどっこいどっこいで、特にGUI苦手ってわけでも無いんだけども。
Haskellっぽくなくていやんな見た目なだけで。
HTMLやXAMLは副作用の排出口。
だからそれらに書き込むような表層部分に副作用部分を集める。
むしろ今だからこそHaskellがGUIで活きる可能性が出て来た。
例えばエディタ作るとして、CUIだと文字入力監視用のループがある。
GUIだと文字入力されたってイベントに対応すれば良いから、HaskellだとGUIのがエディタ書きやすいと予想してる。
んで、そっからは文字列処理得意なHaskellの独壇場。
普通のアプリなら文字列処理をロジックと読み替えて良い。
まあ実はHaskellだけでGUI書いてもJavaやC#みたいにIDEが整備されてる言語には劣るけど、整備されてない言語とならどっこいどっこいで、特にGUI苦手ってわけでも無いんだけども。
Haskellっぽくなくていやんな見た目なだけで。
315デフォルトの名無しさん
2017/07/07(金) 13:09:15.86ID:24WGQrlF316デフォルトの名無しさん
2017/07/07(金) 13:14:54.40ID:SZnapx63 >>314
そこまで構想(妄想?)ができたならもうそろそろいいだろ
続きはgithubで語れ
mfput(笑)みたいなサンプルじゃなく、ちゃんと実用性のあるGUI&DBアプリを作ってくれよ
期待してるぞ
そこまで構想(妄想?)ができたならもうそろそろいいだろ
続きはgithubで語れ
mfput(笑)みたいなサンプルじゃなく、ちゃんと実用性のあるGUI&DBアプリを作ってくれよ
期待してるぞ
317デフォルトの名無しさん
2017/07/07(金) 13:39:25.73ID:kkdCXGBc >>314
GUIアプリを画面を入力すると画面を出力するプロセスの集合体と見做すのはCOBOL時代には主流だった発想だよ(今でもWebには色濃く残っている)
自分でやってみりゃわかるけど、確かにスケールはさせやすいんだがくだらん単純作業とコピペを延々繰り返すような開発になるし
大きな手戻りが生じるともう悲惨
GUIアプリを画面を入力すると画面を出力するプロセスの集合体と見做すのはCOBOL時代には主流だった発想だよ(今でもWebには色濃く残っている)
自分でやってみりゃわかるけど、確かにスケールはさせやすいんだがくだらん単純作業とコピペを延々繰り返すような開発になるし
大きな手戻りが生じるともう悲惨
318デフォルトの名無しさん
2017/07/07(金) 14:05:26.16ID:C9MPrnMO うい。
作れたら出してみる。
作れたら出してみる。
319デフォルトの名無しさん
2017/07/07(金) 21:35:56.42ID:0YPYv3Ek 出すまで帰って来るなよ
320あ
2017/07/07(金) 22:07:41.70ID:TSmGX11I ダム端の画面エンジン面倒見たことあるわ。
文字入力監視のループと、GUIのイベントのdispatchループがどう違うかわからんな。
WinMainとGetMessageとか、XlibのXNextEventからGUIアプリ作ったこと無くて知らないだけじゃねえの?
副作用の出口ではないような。
WM_PAINTの処理中に描画以外やるべきで無いのと同じように、画面周りは出力に徹しないと話がまとまらん。
入力の処理なんか、フォーカス持ってるやつにメッセージ投げるだけだろ。
文字入力監視のループと、GUIのイベントのdispatchループがどう違うかわからんな。
WinMainとGetMessageとか、XlibのXNextEventからGUIアプリ作ったこと無くて知らないだけじゃねえの?
副作用の出口ではないような。
WM_PAINTの処理中に描画以外やるべきで無いのと同じように、画面周りは出力に徹しないと話がまとまらん。
入力の処理なんか、フォーカス持ってるやつにメッセージ投げるだけだろ。
321デフォルトの名無しさん
2017/07/09(日) 05:20:26.84ID:iVqKXTPM 昨今の話題にのせられてKotlinの入門編読んでみたけど、なんかイマイチだった・・・
関数の引数は型推論してくれんの?カリー化して部分適用とか力ずくでやらんといかんの?パイプライン演算子は・・・
今のところ不安しか感じてない、次世代言語の劣化版でバカチョン言語ってのがKotlinの実像かな?
関数の引数は型推論してくれんの?カリー化して部分適用とか力ずくでやらんといかんの?パイプライン演算子は・・・
今のところ不安しか感じてない、次世代言語の劣化版でバカチョン言語ってのがKotlinの実像かな?
322デフォルトの名無しさん
2017/07/09(日) 07:39:05.73ID:nT4jFya6323デフォルトの名無しさん
2017/07/09(日) 09:40:04.24ID:15PsL+fn 括弧を省略しないカリー化はゴミクソだし
中置演算子を使わないのと括弧を省略しないのはLispとJavaの伝統じゃないか
中置演算子を使わないのと括弧を省略しないのはLispとJavaの伝統じゃないか
324デフォルトの名無しさん
2017/07/09(日) 09:45:29.15ID:zwxu6ZoN なんだかんだカリー化は微妙だと思うなあ
部分適用の文法はClojureとかMathematicaがいい感じ
パイプライン演算子はLL的に使うときは便利やね
部分適用の文法はClojureとかMathematicaがいい感じ
パイプライン演算子はLL的に使うときは便利やね
325デフォルトの名無しさん
2017/07/10(月) 01:34:13.11ID:VQ9sifwz >>322
HaskellがクソなのはDynamicBindingが言語的に駄目扱いされてる点だぞ
あとstatic初期化にunsafePerformIOが必要な点もクソ
デフォルトで静的型なカリー化とかあったほうが明らかに使いやすいだろ知ったか野郎
HaskellがクソなのはDynamicBindingが言語的に駄目扱いされてる点だぞ
あとstatic初期化にunsafePerformIOが必要な点もクソ
デフォルトで静的型なカリー化とかあったほうが明らかに使いやすいだろ知ったか野郎
326デフォルトの名無しさん
2017/07/10(月) 11:47:13.63ID:oyNYkVXL そんなものは言語オタクが喜ぶだけで生産性と何の関係もない
327デフォルトの名無しさん
2017/07/10(月) 12:33:52.51ID:NQXPB1lU 生産性(低産階級労働者にも扱えること)
328デフォルトの名無しさん
2017/07/10(月) 17:50:59.58ID:LYSrTSKk Rustが実用言語になったぞ
DockerをオラクルがRustで実装した
DockerをオラクルがRustで実装した
329デフォルトの名無しさん
2017/07/10(月) 20:00:12.08ID:d0flA58w お、おう・・・
330デフォルトの名無しさん
2017/07/10(月) 20:04:51.52ID:LYSrTSKk 実用言語になったらもう次世代言語じゃないからこのスレとはお別れだな
じゃあな
じゃあな
331デフォルトの名無しさん
2017/07/10(月) 21:04:24.59ID:Fha/eGoH すげえ論理でワロタ
332デフォルトの名無しさん
2017/07/10(月) 21:59:47.07ID:2kp3NGJ8 建物は完成した時点から崩壊が始まるのでわざと未完成の部分を残しておくとかいう話を思い出した。
333デフォルトの名無しさん
2017/07/11(火) 11:36:48.66ID:5tKo2E+W そもそもオラクルって時点でお察しだが、
業界ゴロのモジカスとOSSゴロのオラクルは相性が良かったんだろうな
業界ゴロのモジカスとOSSゴロのオラクルは相性が良かったんだろうな
334デフォルトの名無しさん
2017/07/11(火) 15:49:53.62ID:Fwj1YTm5335デフォルトの名無しさん
2017/07/11(火) 17:23:33.46ID:9uLf2kf9336デフォルトの名無しさん
2017/07/11(火) 18:53:45.21ID:dSS1j36W [][Tebla][]
}
000-"Yob*RtStrike"[%Kil\]MO,fla>%$9999VLTS
001-GYORLith"0\R"/"ESUBA"%$%
HADO-"EM","L","O","NU"###END
}
000-"Yob*RtStrike"[%Kil\]MO,fla>%$9999VLTS
001-GYORLith"0\R"/"ESUBA"%$%
HADO-"EM","L","O","NU"###END
337デフォルトの名無しさん
2017/07/12(水) 22:48:51.57ID:mlvPRLpa 実用言語になってないのが条件なら
Smalltalkも入れてくれよ
Smalltalkも入れてくれよ
338デフォルトの名無しさん
2017/07/12(水) 23:51:46.66ID:k6H5UqbS Smalltalkは実用されてるだろ
スタートアップ界の異端児!産業機器 x IT x SmalltalkのSORABITO株式会社…人材採用のプロ・高野秀敏氏が厳選「いま最も旬なベンチャー」
https://thepedia.co/article/1068/
スタートアップ界の異端児!産業機器 x IT x SmalltalkのSORABITO株式会社…人材採用のプロ・高野秀敏氏が厳選「いま最も旬なベンチャー」
https://thepedia.co/article/1068/
339デフォルトの名無しさん
2017/07/13(木) 00:48:32.99ID:ZEMYQbKR 一生実用言語にならないような言語は次世代とは呼ばねえだろ池沼かガイジ豆腐で撲殺するぞ
340デフォルトの名無しさん
2017/07/13(木) 00:52:26.73ID:6ivxTFOR 21世紀に生まれた言語限定でええやろ!
341デフォルトの名無しさん
2017/07/13(木) 01:37:14.59ID:GmrDZ9ks オブジェクト指向というだけで最低限の実用性はあるから純粋な世界に引きこもる
関数型は引きこもるとやばいから外に出る
関数型は引きこもるとやばいから外に出る
342デフォルトの名無しさん
2017/07/13(木) 07:10:16.60ID:uexVWLm1 純粋OOPLより純粋FPLの方がいろんな意味で引きこもっとるわ
Smalltalkのシンボルがなんで「気球」なのか、知らんのか?
http://lists.squeakfoundation.org/pipermail/squeak-dev/1998-October/022354.html
Smalltalkのシンボルがなんで「気球」なのか、知らんのか?
http://lists.squeakfoundation.org/pipermail/squeak-dev/1998-October/022354.html
343デフォルトの名無しさん
2017/07/13(木) 07:22:43.74ID:ZgBNlC8f Smalltalkの引きこもり方は物理的っていうかなんというか
imageの世界に引きこもってるせいで外の世界で新しいツールとか流行ってても使えないし
imageの世界に引きこもってるせいで外の世界で新しいツールとか流行ってても使えないし
344デフォルトの名無しさん
2017/07/13(木) 07:29:54.34ID:uexVWLm1 >>340
20世紀生まれとかバカにしてるけどな
Traitsなんて言語機能は10年とちょっと前
21世紀になってからSmalltalkで考案されたのを
新しい言語がこぞってありがたがって使ってんだぞ
Scalaに至ってはただのMixinをかっこいいからってTraitって名前つけちゃったくらいなんだぞ
20世紀生まれとかバカにしてるけどな
Traitsなんて言語機能は10年とちょっと前
21世紀になってからSmalltalkで考案されたのを
新しい言語がこぞってありがたがって使ってんだぞ
Scalaに至ってはただのMixinをかっこいいからってTraitって名前つけちゃったくらいなんだぞ
345デフォルトの名無しさん
2017/07/13(木) 07:40:18.24ID:m3hQX1bI346デフォルトの名無しさん
2017/07/13(木) 11:47:59.75ID:LjH88DBT intはオブジェクトにしない方がいい
他にもプロセスidとかファイルディスクリプタとかURI
オブジェクトの本体ではないものが必要
副作用が必要なのと同じ
他にもプロセスidとかファイルディスクリプタとかURI
オブジェクトの本体ではないものが必要
副作用が必要なのと同じ
347デフォルトの名無しさん
2017/07/13(木) 13:19:58.91ID:equsxY/V348デフォルトの名無しさん
2017/07/13(木) 13:28:33.65ID:xX1L5EAL haskell(1990)
349デフォルトの名無しさん
2017/07/13(木) 13:36:01.36ID:zQhEdRBN よっしゃ!haskell離脱おめ!!
350デフォルトの名無しさん
2017/07/13(木) 14:12:19.77ID:wYgqTfnm >>347
そんなことが言いたいのではない
そんなことが言いたいのではない
351デフォルトの名無しさん
2017/07/13(木) 15:05:49.91ID:0lD2vgRh haskellというゴミが消えてくれるならなんでもいい
352デフォルトの名無しさん
2017/07/13(木) 15:14:48.65ID:/C8bZ6+r そういえばOcamlになったのって案外新しく(1996)てびっくりした
もちろんCamlさらにMLからの流れだけど
もちろんCamlさらにMLからの流れだけど
353デフォルトの名無しさん
2017/07/13(木) 19:08:43.36ID:1nRnB/qa 昔2chのこの手のスレで、Smalltalkerがgitについて全くトンチンカンなコメントを連発してたので
Smalltalkは錆びついてなくてもSmalltalkerは錆びついてると思う
Smalltalkは錆びついてなくてもSmalltalkerは錆びついてると思う
354デフォルトの名無しさん
2017/07/13(木) 19:42:54.12ID:DmZAJA0R355デフォルトの名無しさん
2017/07/13(木) 19:53:58.91ID:0/kHeJlt それ文脈ぜんぜん違う話だしねつ造やめれっていうか錆び付いているのはアンチの脳ミソと記憶力
百歩譲ってそういう話だったとしても最近出没してる「おいら」がHaskellの典型的ユーザーちゃうのと同レベルの話だがや
百歩譲ってそういう話だったとしても最近出没してる「おいら」がHaskellの典型的ユーザーちゃうのと同レベルの話だがや
356デフォルトの名無しさん
2017/07/13(木) 20:21:10.35ID:LjH88DBT オブジェクトっぽくないものの語尾にerをつけて無理やりオブジェクトにする現象
357デフォルトの名無しさん
2017/07/13(木) 20:57:33.19ID:10yx+996358デフォルトの名無しさん
2017/07/13(木) 21:26:25.99ID:uexVWLm1359デフォルトの名無しさん
2017/07/13(木) 21:44:41.50ID:XbAGpGn+ Manager
360デフォルトの名無しさん
2017/07/13(木) 21:45:38.59ID:10yx+996 なんだ、やっぱり独自vcsは劣っててダメだから、ちゃんとgitに乗っかろうって動きあるんじゃん
他の言語ならフツーに出来てることに必死だなって感じだけど
https://www.slideshare.net/mobile/newapplesho/pharo-smalltalk-source-code-management-with-pharo
他の言語ならフツーに出来てることに必死だなって感じだけど
https://www.slideshare.net/mobile/newapplesho/pharo-smalltalk-source-code-management-with-pharo
361デフォルトの名無しさん
2017/07/14(金) 01:48:02.98ID:07oaelZE362デフォルトの名無しさん
2017/07/14(金) 05:30:08.87ID:vxW3z/6K >>360
へー、すごいねー。
普通の言語では、その言語で作ったアプリケーションの実行中にgitの複数のレポジトリから自己更新してきたり、実行時に構成を動的に変更したりが、とっくの昔からフツーにできているんだー?
さすが普通の言語ってすごいね。そこにシビレルね。
へー、すごいねー。
普通の言語では、その言語で作ったアプリケーションの実行中にgitの複数のレポジトリから自己更新してきたり、実行時に構成を動的に変更したりが、とっくの昔からフツーにできているんだー?
さすが普通の言語ってすごいね。そこにシビレルね。
363デフォルトの名無しさん
2017/07/14(金) 06:42:12.81ID:4JOJgkL6 そういうことをやりたいならJavaScriptに乗っかるのが普通だ
SmalltalkやJVMは普通になれなかった
SmalltalkやJVMは普通になれなかった
364デフォルトの名無しさん
2017/07/14(金) 07:09:16.72ID:iN4cnX21 >>361
じゃあなんでわざわざTraitsなんて名前つけてんの?ぷぷぷ
じゃあなんでわざわざTraitsなんて名前つけてんの?ぷぷぷ
365デフォルトの名無しさん
2017/07/14(金) 07:44:52.22ID:Rnz3lE+5366デフォルトの名無しさん
2017/07/14(金) 08:07:10.82ID:fA8HzWsU rustにもtraitあるよ
367デフォルトの名無しさん
2017/07/14(金) 08:27:52.66ID:Wh3H5+5v Traitsを名乗るかどうかは別として
継承によらない(つまりフラット化による)合成が可能で
実装も持てるインターフェース様エンティティは
次世代以前に現世代の言語には欠かせないよね
継承によらない(つまりフラット化による)合成が可能で
実装も持てるインターフェース様エンティティは
次世代以前に現世代の言語には欠かせないよね
368デフォルトの名無しさん
2017/07/14(金) 09:03:14.28ID:HDhZQX71 実装を持った複数のインターフェースが衝突したら
(可能なら静的に)検知してエラーになるのが良い
だからフラット化も正直どうでも良いんだよね
(可能なら静的に)検知してエラーになるのが良い
だからフラット化も正直どうでも良いんだよね
369デフォルトの名無しさん
2017/07/14(金) 09:30:19.13ID:Wh3H5+5v 継承パスなんかを持ち込んだ日にゃメソッド毎のオーバーライドの管理が面倒だろ?
それゆえにTraitsはフラット化がミソなわけよ
つーかフラット化どーでもいいとか言ってる前世代脳はミックスインで十分なんだからこっちくんな
未来永劫リニア化で疲弊してろ
それゆえにTraitsはフラット化がミソなわけよ
つーかフラット化どーでもいいとか言ってる前世代脳はミックスインで十分なんだからこっちくんな
未来永劫リニア化で疲弊してろ
370デフォルトの名無しさん
2017/07/14(金) 09:41:35.70ID:16rSDABT371デフォルトの名無しさん
2017/07/14(金) 09:54:31.91ID:Wh3H5+5v 衝突→エラーは当たり前だボケ
その後の対処の話してんのわかんない前世代脳はあっちいってろよ
その後の対処の話してんのわかんない前世代脳はあっちいってろよ
372デフォルトの名無しさん
2017/07/14(金) 10:04:09.28ID:yYuDtDCJ >>362
独自vcsがゴミでgitに乗り換えたって話の直後に
独自デプロイ機構を自慢するなんて学習能力なさ過ぎでしょ
たまにはsmalltalkの外の世界を学んで見ては?
http://qiita.com/tomooda/items/8685782c42f674307dfe
独自vcsがゴミでgitに乗り換えたって話の直後に
独自デプロイ機構を自慢するなんて学習能力なさ過ぎでしょ
たまにはsmalltalkの外の世界を学んで見ては?
http://qiita.com/tomooda/items/8685782c42f674307dfe
373デフォルトの名無しさん
2017/07/14(金) 10:19:56.39ID:Rnz3lE+5 そういうトンチンカンな攻撃しないようにアンチもちゃんと学ぶべきと思うが
そもそもアンチはSmalltalkの閉じた世界の利便性なんてクソの役にも立たんと決めつけているから
永久に話が噛み合うことはなさそうだな
そもそもアンチはSmalltalkの閉じた世界の利便性なんてクソの役にも立たんと決めつけているから
永久に話が噛み合うことはなさそうだな
374デフォルトの名無しさん
2017/07/14(金) 10:33:01.95ID:yYuDtDCJ 世の中の0.001%でしか使われてないマイナー言語側が外を学ぶべきなのは自明だと思うが
ていうか、学ばないから永遠にマイナー言語なんだよ
ていうか、学ばないから永遠にマイナー言語なんだよ
375デフォルトの名無しさん
2017/07/14(金) 10:46:19.81ID:P4+8bNWB 前このスレにSmalltalk のコード書き散らしてた奴いたけどあのコード汚かったなあ
Smalltalk が汚いのかあのSmalltalkerが汚かったのか知らんけど
Smalltalk が汚いのかあのSmalltalkerが汚かったのか知らんけど
376デフォルトの名無しさん
2017/07/14(金) 11:04:48.92ID:Rnz3lE+5 世の中の0.001%でしか使われてないって情報自体が不勉強なアンチ発の情報なんで定かでないんだけど
少なくとも本人はそういう認識でいる言語に丁寧にアンチ対応するのはつくづくヒマな御仁だなとは思う
少なくとも本人はそういう認識でいる言語に丁寧にアンチ対応するのはつくづくヒマな御仁だなとは思う
377デフォルトの名無しさん
2017/07/14(金) 11:19:42.57ID:Rnz3lE+5 いずれにしてもtraitはともかくsmalltalkの話はどうでもいいよ
アンチ情報が古くて役に立たないししつこくてウザイだけだよ
アンチ情報が古くて役に立たないししつこくてウザイだけだよ
378デフォルトの名無しさん
2017/07/14(金) 12:18:47.34ID:vxW3z/6K379デフォルトの名無しさん
2017/07/14(金) 12:20:08.63ID:vxW3z/6K >>368
SmalltalkのTraitsも衝突を静的に検知できるけど、それがどうかした?
SmalltalkのTraitsも衝突を静的に検知できるけど、それがどうかした?
380デフォルトの名無しさん
2017/07/14(金) 13:07:32.87ID:esHF/eTU >>379
出来ないから嘘つくな
出来ないから嘘つくな
381デフォルトの名無しさん
2017/07/14(金) 13:19:34.73ID:Wh3H5+5v むしろなぜ出来ないと思うかが謎
382デフォルトの名無しさん
2017/07/14(金) 14:20:15.48ID:ZjhjVc89 実行時にクラス定義の式に到達したときにエラーが出るのを「静的に検査してる」というのは頭悪過ぎない?
383デフォルトの名無しさん
2017/07/14(金) 15:13:18.09ID:Rnz3lE+5 >>382
そのエラーがどうして出せるのか理解できてる?
そのエラーがどうして出せるのか理解できてる?
384デフォルトの名無しさん
2017/07/14(金) 15:13:38.24ID:vxW3z/6K 実行前から普通にチェックできるけど?
385デフォルトの名無しさん
2017/07/14(金) 15:41:16.51ID:J9LHnyh2 アンチの頭の固さが露呈したな
386デフォルトの名無しさん
2017/07/14(金) 17:25:07.85ID:5vDI46YP387デフォルトの名無しさん
2017/07/14(金) 17:40:20.13ID:Rnz3lE+5388デフォルトの名無しさん
2017/07/14(金) 19:21:36.90ID:hAbkWWq2 え?
Smalltalkって動的にクラスを定義できない言語なの?
遅延結合の観点から言って出来損ないなんだね
Smalltalkって動的にクラスを定義できない言語なの?
遅延結合の観点から言って出来損ないなんだね
389デフォルトの名無しさん
2017/07/14(金) 21:11:13.40ID:Rnz3lE+5 かわいそうに…追い詰められてついに気が狂ったか
390デフォルトの名無しさん
2017/07/14(金) 22:36:05.81ID:4JOJgkL6 承認欲求だか何だか知らないが
文章を正確に書きたいという欲求とは違うんだろ
むしろ書くことに興味ないから代わりに全部書いてくれる良き理解者が必要になる
文章を正確に書きたいという欲求とは違うんだろ
むしろ書くことに興味ないから代わりに全部書いてくれる良き理解者が必要になる
391デフォルトの名無しさん
2017/07/14(金) 23:24:30.71ID:MTLV3Z4y Smalltalkerじゃ頭がSmallwwwww
392デフォルトの名無しさん
2017/07/14(金) 23:34:39.08ID:ZsTFQY46 めでたくアンチも発狂したことだしsmalltalkの話はこれで終わりな
393デフォルトの名無しさん
2017/07/15(土) 07:15:30.91ID:VZfdwjhs 根拠を書かずに勝利宣言か
いつもなら邪魔なくらいコード出してくるのにね
いつもなら邪魔なくらいコード出してくるのにね
394デフォルトの名無しさん
2017/07/15(土) 08:01:11.45ID:3lr1Ki6I gitのときみたいに、深く突っ込まれるとボロが出るからSmalltalkerさんも速く話を畳みたいんだろ
もう逃げ出してんだから追い詰めんな
もう逃げ出してんだから追い詰めんな
395デフォルトの名無しさん
2017/07/15(土) 08:15:16.38ID:Ln37sbKY396デフォルトの名無しさん
2017/07/15(土) 09:04:45.79ID:x9q1fKiK アンチ頭悪すぎ
いつまで続けるんだこのスレ違い
いつまで続けるんだこのスレ違い
397デフォルトの名無しさん
2017/07/15(土) 10:18:51.32ID:UJtjfBLC PHPのtraitsは実行時検査しか出来ないんだから383は説明になってないわな
ていうか頑なに言葉を濁すのはなぜ?
ていうか頑なに言葉を濁すのはなぜ?
398デフォルトの名無しさん
2017/07/15(土) 10:29:26.28ID:ztUW4ffu 自分も分かってないからだろ
399デフォルトの名無しさん
2017/07/15(土) 10:59:23.57ID:Ura0OIUP SmalltalkのTraitが実行前に衝突検知できるかどうかの議論で、PHPじゃできないじゃないかー!と駄々をこねるバカ(>>397)発見w
400デフォルトの名無しさん
2017/07/15(土) 11:11:31.57ID:Xb/NLsOQ401デフォルトの名無しさん
2017/07/15(土) 11:27:36.40ID:qBi8wD3D 昔からWYSIWYGとかいう
ModelとViewの見分けがつかない謎のシステムがある
静的と動的の見分けがつかないシステムもそれに似ている
ModelとViewの見分けがつかない謎のシステムがある
静的と動的の見分けがつかないシステムもそれに似ている
402デフォルトの名無しさん
2017/07/15(土) 11:29:21.79ID:rZ7c1Y9a 屁臭いペチプァは寄ってくるな
臭いがうつる
臭いがうつる
403デフォルトの名無しさん
2017/07/15(土) 11:36:09.13ID:jg2H7hGL >>400
わかりません。説明して。
わかりません。説明して。
404デフォルトの名無しさん
2017/07/15(土) 11:53:30.82ID:Xb/NLsOQ >>403
ノーティファイアを見て明らかなように件の実行時エラーはself traitConflictが出している
じゃあこのスタブは誰が設置したか考えれば自ずとコンパイル時に既に衝突は検知できていることがわかるだろう?
ノーティファイアを見て明らかなように件の実行時エラーはself traitConflictが出している
じゃあこのスタブは誰が設置したか考えれば自ずとコンパイル時に既に衝突は検知できていることがわかるだろう?
405デフォルトの名無しさん
2017/07/15(土) 12:03:03.34ID:UrVE89DJ コンパイル時に衝突を検知出来ているならコンパイル時にエラーを出そうよ
406デフォルトの名無しさん
2017/07/15(土) 13:27:15.35ID:Xb/NLsOQ >>405
件のモック定義のタイミングにフックすれば出せるようにできるけどウザイだけだよ?(Pharo6で確認)
effectiveMethod
"Return the effective compiled method of this method description."
| method |
method := self providedMethod.
method isNil ifFalse: [^ method].
method := self conflictMethod.
method isNil ifFalse: [self error: 'Methods confliction: ', method selector. ^ method].
^ self requiredMethod.
件のモック定義のタイミングにフックすれば出せるようにできるけどウザイだけだよ?(Pharo6で確認)
effectiveMethod
"Return the effective compiled method of this method description."
| method |
method := self providedMethod.
method isNil ifFalse: [^ method].
method := self conflictMethod.
method isNil ifFalse: [self error: 'Methods confliction: ', method selector. ^ method].
^ self requiredMethod.
407デフォルトの名無しさん
2017/07/15(土) 13:56:49.93ID:LQwIX/Wh そのフックが実行時に呼ばれてエラー吐くだけじゃん
馬鹿すぎて頭痛いわ
馬鹿すぎて頭痛いわ
408デフォルトの名無しさん
2017/07/15(土) 15:18:27.64ID:Xb/NLsOQ このアンチ、レベル低すぎ
409デフォルトの名無しさん
2017/07/15(土) 15:59:41.17ID:Ura0OIUP アンチがレベル低いのではない。
レベルが低いからアンチなのだ。
レベルが低いからアンチなのだ。
410デフォルトの名無しさん
2017/07/15(土) 16:53:57.90ID:Xb/NLsOQ >>401
WYSIWYGがどうなのかは知らんけど
ViewとControllerの境界が不確かとかならともかくModelとViewの見分けが付かないのはもはやいろんな意味でMVCではないよ
Smalltalkにはランタイムしかないと考える人には今回の「コンパイル時に」を「静的に」と表現することには抵抗があるかもね
WYSIWYGがどうなのかは知らんけど
ViewとControllerの境界が不確かとかならともかくModelとViewの見分けが付かないのはもはやいろんな意味でMVCではないよ
Smalltalkにはランタイムしかないと考える人には今回の「コンパイル時に」を「静的に」と表現することには抵抗があるかもね
411デフォルトの名無しさん
2017/07/15(土) 22:01:58.64ID:rZ7c1Y9a MVCは死産だった
今ナウいカレントトレンドな最先端の設計は、クリーンアーキテクチャ
今ナウいカレントトレンドな最先端の設計は、クリーンアーキテクチャ
412デフォルトの名無しさん
2017/07/15(土) 22:02:44.95ID:UrVE89DJ このアンチってどのアンチだ
413デフォルトの名無しさん
2017/07/15(土) 22:06:45.31ID:rZ7c1Y9a ペェ〜ル豚とプェチ糞パーは
アンチ云々じゃなく死ね
死ね
アンチ云々じゃなく死ね
死ね
414デフォルトの名無しさん
2017/07/15(土) 22:52:58.72ID:UrVE89DJ PHPは分かったけどPerlもいかんのか……
Perl6はどうなんだ?
Perl6はどうなんだ?
415デフォルトの名無しさん
2017/07/15(土) 23:04:27.06ID:IM8lgtvN PHPなのかー 精神分裂病の症状特有の「俺言葉」すぎてなんなのかわからんかったわ
416デフォルトの名無しさん
2017/07/16(日) 08:14:33.97ID:/Lu2VVZQ だから徳川家康のような目新しい言葉を一つも作らなかった奴が勝つんだな
417デフォルトの名無しさん
2017/07/16(日) 11:06:27.56ID:nvinih80 >>414
たしか、ただでさえ汚いPerlに
大量の新仕様・新機能が追加されたんだろ
昔ならどうだったか知らんが
「この言語でしかできない」なんてことが少なくなった今、
わざわざPerl選ぶ奴はキチガイとしか思えん
PHPはCMSに強いから、まだわからんでもないところはある
ゴミ屑みたいな言語だから個人的には全く触りたくないが
たしか、ただでさえ汚いPerlに
大量の新仕様・新機能が追加されたんだろ
昔ならどうだったか知らんが
「この言語でしかできない」なんてことが少なくなった今、
わざわざPerl選ぶ奴はキチガイとしか思えん
PHPはCMSに強いから、まだわからんでもないところはある
ゴミ屑みたいな言語だから個人的には全く触りたくないが
418デフォルトの名無しさん
2017/07/16(日) 11:58:27.53ID:kBPig9GC 回転寿司で隣の知らんおっさんが唐突に
「俺はイカが嫌いだ」って話しかけてきたような困惑
「俺はイカが嫌いだ」って話しかけてきたような困惑
419デフォルトの名無しさん
2017/07/16(日) 13:03:56.78ID:nvinih80 このネタどうなんすかねえ
と聞かれたから
昔はよかったけど腐りかけですよ
たまに当たりはあるけどいつも腐ってますよ
と言っただけなのだが
と聞かれたから
昔はよかったけど腐りかけですよ
たまに当たりはあるけどいつも腐ってますよ
と言っただけなのだが
420デフォルトの名無しさん
2017/07/16(日) 14:00:50.61ID:nsbHwSbS ペェ〜ルとか言ってる人に聞いたのに、別っぽい変な人から返事が返って来て俺困惑
421デフォルトの名無しさん
2017/07/16(日) 14:43:25.82ID:pSlhsdXG python2と3でもこれだけ長引いたとこ見ると
(なんとか3にまとまりそうだけど)
これからPerl6が流行するとは思えない
(なんとか3にまとまりそうだけど)
これからPerl6が流行するとは思えない
422デフォルトの名無しさん
2017/07/16(日) 18:26:38.70ID:UQE14EKf ペェ〜ルおじさん単発ワラワラで草
423デフォルトの名無しさん
2017/07/16(日) 19:00:43.00ID:TI5o59vg perl6 って何のメリットもないよね。
424デフォルトの名無しさん
2017/07/16(日) 19:17:03.45ID:DhlGbGJr >>419
そんな店に行くなよ
そんな店に行くなよ
425デフォルトの名無しさん
2017/07/16(日) 19:35:25.03ID:/yuQWQY5 コメント欄で雑談するために使って
https://www.youtube.com/watch?v=jgdXBtXCd7Q
https://www.youtube.com/watch?v=jgdXBtXCd7Q
426デフォルトの名無しさん
2017/07/16(日) 21:05:09.00ID:TI5o59vg 何でわざわざ雑談場所を移す必要があるのか…
PV稼ぎも大変だなあ…
PV稼ぎも大変だなあ…
427デフォルトの名無しさん
2017/07/16(日) 22:01:00.06ID:D5jF5vYG >>423
某Sから始まる作者にも見捨てられたクソ言語よりマシ
某Sから始まる作者にも見捨てられたクソ言語よりマシ
428デフォルトの名無しさん
2017/07/16(日) 22:05:04.15ID:62H16rq8 トンチンカンな低脳アンチに粘着されないだけマシ
429デフォルトの名無しさん
2017/07/16(日) 22:06:13.03ID:UQE14EKf >>427
Scalaさんの悪口はやめるのだ
Scalaさんの悪口はやめるのだ
430デフォルトの名無しさん
2017/07/16(日) 22:09:41.66ID:n2aqivct Scalaさんはあくまで実験言語だと作者がずっと言ってるのに
勝手に祭り上げられて勝手に負けたことにされた不憫な言語
勝手に祭り上げられて勝手に負けたことにされた不憫な言語
431デフォルトの名無しさん
2017/07/16(日) 23:08:48.14ID:PjhGsme1 コミュ障ファンがマサカリ投げまくって
怖いコミュニティだとすっかり評価を落とした
怖いコミュニティだとすっかり評価を落とした
432デフォルトの名無しさん
2017/07/16(日) 23:22:52.15ID:GtbxOg8N scalaがいつ誰に負けたんや
433デフォルトの名無しさん
2017/07/16(日) 23:38:44.37ID:ACbzRC5e 2017/05/18、kotlinに負けた
434デフォルトの名無しさん
2017/07/17(月) 00:14:52.63ID:Fkkap2CA Scalaが作者に見捨てられたってマジなの?
435デフォルトの名無しさん
2017/07/17(月) 07:08:09.71ID:gU9jd8Vq まじ
436デフォルトの名無しさん
2017/07/17(月) 07:18:06.21ID:aQ+HcXyV Scalaは_が糞すぎる
有名な言語であそこまで一貫性のない場当たり的な仕様は稀なレベル
有名な言語であそこまで一貫性のない場当たり的な仕様は稀なレベル
437デフォルトの名無しさん
2017/07/17(月) 08:28:56.48ID:1AopeENj 初学者からすると
暗黙のパラメータを何の説明もなく型クラスだと言い切って混乱させたり
両者がイコールではないと疑問を呈すると攻撃してくるとか
すごく怖い人が牛耳ってるイメージ
暗黙のパラメータを何の説明もなく型クラスだと言い切って混乱させたり
両者がイコールではないと疑問を呈すると攻撃してくるとか
すごく怖い人が牛耳ってるイメージ
438デフォルトの名無しさん
2017/07/17(月) 09:13:20.32ID:O1Bxse4b だがコミュ力を重視するのは的外れだ
コミュ障でも嘘をつかないやつは怖くないから
嘘つき大会で優勝しそうなやつの方が怖い
コミュ障でも嘘をつかないやつは怖くないから
嘘つき大会で優勝しそうなやつの方が怖い
439デフォルトの名無しさん
2017/07/17(月) 10:08:58.85ID:1w/PTW08 コミュ障、ガイジ、アスペが揃ってるScala界隈
440デフォルトの名無しさん
2017/07/17(月) 10:33:48.20ID:O1Bxse4b441デフォルトの名無しさん
2017/07/17(月) 12:42:41.89ID:VoNGzfKh scalaは理屈っぽくてセンスがないrubyって感じ
442デフォルトの名無しさん
2017/07/17(月) 12:59:41.12ID:3rVoB3WX rubyは静的言語だったら使ってた
443デフォルトの名無しさん
2017/07/17(月) 14:03:58.82ID:6jEIb/mS Sから始まる言語でマシなのはSchemeとSMLだけ
444デフォルトの名無しさん
2017/07/17(月) 14:08:19.67ID:zWvYcWKi S言語あかんか……
445デフォルトの名無しさん
2017/07/17(月) 14:10:03.81ID:vodzC7WI Simula
Smalltalk
Swift
Smalltalk
Swift
446デフォルトの名無しさん
2017/07/17(月) 14:27:44.45ID:CFN4ow8J Go 2でジェネリクスが入るからそれで決着
447デフォルトの名無しさん
2017/07/17(月) 15:01:17.40ID:zWvYcWKi それはそれで「Goはシンプルなのがよかったのにもう魅力がない」とか言い出す人が出て来そう
448デフォルトの名無しさん
2017/07/17(月) 15:05:47.41ID:93gFCitm Goはシンプルすぎてお話にならない
そんなにシンプルなのがいいならBrainfuckでも使ってろ
そんなにシンプルなのがいいならBrainfuckでも使ってろ
449デフォルトの名無しさん
2017/07/17(月) 15:15:28.08ID:6YIe4oJX Goはもはや次世代言語っていうか良くも悪くも実用言語
450デフォルトの名無しさん
2017/07/17(月) 15:41:47.25ID:CuRtYSJT いいかげん言語毎にパッケージマネージャやビルドツール作るのやめてほしい
Makefileをもうちょっと書きやすくしてGitに対応させれば済む話なのにいつまで同じものを猿のように再発明し続けるのか
Makefileをもうちょっと書きやすくしてGitに対応させれば済む話なのにいつまで同じものを猿のように再発明し続けるのか
451デフォルトの名無しさん
2017/07/17(月) 16:25:32.71ID:CTXJl5P0 さすがにMakefileをC/C++以外で使わされるのは勘弁して
Gitはその通りだと思うけど
Gitはその通りだと思うけど
452デフォルトの名無しさん
2017/07/17(月) 19:43:49.58ID:9gDL3chX 依存の見方が言語毎に違うんだからしゃーない。
453デフォルトの名無しさん
2017/07/17(月) 19:59:44.28ID:Ez9tK1Zp 上手いこと抽象化できれば基礎ツール+プラグインでいけそう
Haskellerって抽象化得意だろ?何か作ってくれよ
Haskellerって抽象化得意だろ?何か作ってくれよ
454デフォルトの名無しさん
2017/07/17(月) 22:06:17.52ID:Fkkap2CA 一周回って、ビルドツールなしの人力ビルド・ライブラリ管理のJavaプロジェクト知ってるわ
455デフォルトの名無しさん
2017/07/17(月) 22:12:00.96ID:Uk+UjtGm 次世代Makefile!おもしろいね。
git対応は具体的にどんな機能があれば良いのかな。
依存の見方は、例えば空行入れただけみたいなプログラムの意味を変えない変更では無駄だからリビルドしないでほしいとか?
「もうちょっと書きやすく」って?
git対応は具体的にどんな機能があれば良いのかな。
依存の見方は、例えば空行入れただけみたいなプログラムの意味を変えない変更では無駄だからリビルドしないでほしいとか?
「もうちょっと書きやすく」って?
456デフォルトの名無しさん
2017/07/17(月) 23:03:29.82ID:ThA9UD7O ・依存先の指定としてGitのリモートリポジトリの特定コミットの特定ファイルを指定できる
・ビルド済みのリソースが信頼できるリポジトリに既にあれば透過的にそれを利用する
Git連携はこんなとこじゃね
パッケージ化の単位とか考えるべきことは多いけど、うまいこと設計すれば綺麗に作れそうな気がする
ハスケラくんの出番だな
・ビルド済みのリソースが信頼できるリポジトリに既にあれば透過的にそれを利用する
Git連携はこんなとこじゃね
パッケージ化の単位とか考えるべきことは多いけど、うまいこと設計すれば綺麗に作れそうな気がする
ハスケラくんの出番だな
457デフォルトの名無しさん
2017/07/17(月) 23:25:38.52ID:Ne9t2Rx8458デフォルトの名無しさん
2017/07/17(月) 23:39:10.02ID:ThA9UD7O459デフォルトの名無しさん
2017/07/17(月) 23:58:04.28ID:Ne9t2Rx8 スケールって大規模に使う仕組みを小規模にも強制するんだろ
例えばmain関数だけでいい場合でも絶対class作る言語
例えばmain関数だけでいい場合でも絶対class作る言語
460デフォルトの名無しさん
2017/07/18(火) 02:22:19.92ID:qdjxHBs9 tupというものがあるよ。作者はtupとgit submoduleを駆使して自作のLinuxディストリビューションを簡単にビルドできるところまでやってる
ninjaと違ってワイルドカードを使えるのに速い
ninjaと違ってワイルドカードを使えるのに速い
461デフォルトの名無しさん
2017/07/18(火) 06:59:58.31ID:pCp4rtrr462デフォルトの名無しさん
2017/07/18(火) 19:19:47.83ID:Ni5Fs6Uh >>450
Windowsとかツールが標準でない環境もあるからだろ
せめてaptみたいな依存関係書いとけば環境整えてくれるパッケージマネージャがOS標準であればな
mavenは割といいと思うが人気ないのかな
やはり手軽にスクリプトを書けるのがいいのか
Windowsとかツールが標準でない環境もあるからだろ
せめてaptみたいな依存関係書いとけば環境整えてくれるパッケージマネージャがOS標準であればな
mavenは割といいと思うが人気ないのかな
やはり手軽にスクリプトを書けるのがいいのか
463デフォルトの名無しさん
2017/07/18(火) 23:30:04.84ID:cep190eg 今どきメーブンて
464デフォルトの名無しさん
2017/07/19(水) 00:04:39.12ID:9uIEKdpP pom地獄 ((((;゚Д゚))))ガクガクブルブル
465デフォルトの名無しさん
2017/07/19(水) 00:24:35.66ID:wHmuM9lY Android の、Gradle
Groovy のクロージャで書ける
Groovy のクロージャで書ける
466デフォルトの名無しさん
2017/07/19(水) 07:47:57.21ID:fL6ya1px GoogleはBazelっていうのを押しているだろ
467デフォルトの名無しさん
2017/07/19(水) 16:30:34.48ID:Qi9rcQi1468デフォルトの名無しさん
2017/07/19(水) 17:38:31.62ID:0YqXH007 型情報と機械語のせいでファイルとコマンドが異常に多くなるという問題は一つ
答えはいっぱいある
答えはいっぱいある
469デフォルトの名無しさん
2017/07/19(水) 21:20:24.68ID:747RlNYZ 型無し能無し役目無しの糞言語は全て滅びろ
470デフォルトの名無しさん
2017/07/19(水) 23:03:41.07ID:WzXZ9kGy 型推論で動的言語みたいな静的言語作るのが今の流れ
471デフォルトの名無しさん
2017/07/19(水) 23:45:07.13ID:747RlNYZ JavaScriptはTypeScriptを標準化しろ
PHP Perl Rubyは役目を終えたから、今すぐ廃止しろ
使ってる奴ら・会社・サービスは、全て糞言語幇助の罪で死刑
よいな
PHP Perl Rubyは役目を終えたから、今すぐ廃止しろ
使ってる奴ら・会社・サービスは、全て糞言語幇助の罪で死刑
よいな
472デフォルトの名無しさん
2017/07/19(水) 23:57:15.73ID:/uBE13O5 Homebrew処刑ってマジ?
473デフォルトの名無しさん
2017/07/20(木) 07:54:30.69ID:1x/Sk0z6 Perl6 はなかなか良いぞ。
絶対普及しないだろうけど。
絶対普及しないだろうけど。
474デフォルトの名無しさん
2017/07/20(木) 09:27:29.28ID:HHm3tSZc Pythonに静的型・型推論とnull排除したぐらいのが欲しい
475デフォルトの名無しさん
2017/07/20(木) 17:15:19.69ID:VOKR1Uy4 >>474
nim とかいかが?
nim とかいかが?
476デフォルトの名無しさん
2017/07/20(木) 17:38:00.25ID:VRNHiKio Perl6なー、せめてPerl5からの緩やかな移行をさせてくれれば採用してもいいんだけどなー
ちょっとモチベーションに欠ける
ちょっとモチベーションに欠ける
477デフォルトの名無しさん
2017/07/20(木) 22:22:12.00ID:0b9xdtC8478デフォルトの名無しさん
2017/07/20(木) 22:23:52.99ID:mEIqzc+z >>474
ホーン・ト・コトイレン
ホーン・ト・コトイレン
479デフォルトの名無しさん
2017/07/20(木) 22:27:02.38ID:mEIqzc+z perl使う理由って何かある?
小さいWebアプリならPHP, Rubyで十分
中規模以上ならJVM系
機械学習ならPythonワン択
デスクトップアプリならElectron, C#, Java
Perlってマジで何のために必要なん?
ガイジ?
小さいWebアプリならPHP, Rubyで十分
中規模以上ならJVM系
機械学習ならPythonワン択
デスクトップアプリならElectron, C#, Java
Perlってマジで何のために必要なん?
ガイジ?
480デフォルトの名無しさん
2017/07/20(木) 22:45:38.08ID:Of2zeoLq >>479
better shellscript
だいたいどのUNIXサーバーにも入ってて、bashなんかに比べたら普通のプログラミング言語っぽくてわかりやすい
AIXなんかにも入ってたりするから、慣れない環境を触ることになって途方に暮れてるときにPerlが入ってると
言葉の通じない異国で旧友に出会ったような気持ちになる
入ってる力が全て
better shellscript
だいたいどのUNIXサーバーにも入ってて、bashなんかに比べたら普通のプログラミング言語っぽくてわかりやすい
AIXなんかにも入ってたりするから、慣れない環境を触ることになって途方に暮れてるときにPerlが入ってると
言葉の通じない異国で旧友に出会ったような気持ちになる
入ってる力が全て
481デフォルトの名無しさん
2017/07/20(木) 22:47:47.78ID:a17NgPNI これまでLinuxサーバー見て来てPython2が入ってなかったことはないなあ
逆にPython入ってないってどんなのがあるのか気になる
逆にPython入ってないってどんなのがあるのか気になる
482デフォルトの名無しさん
2017/07/20(木) 22:58:24.48ID:e5pRUkIa perlは作者のコミュ力がすごすぎた
設計の能力じゃなくて変な設計を人に説明できる能力が異常
設計の能力じゃなくて変な設計を人に説明できる能力が異常
483デフォルトの名無しさん
2017/07/20(木) 23:02:50.14ID:0b9xdtC8 今でこそPyPIやnpmなど当たり前になってしまったが、昔はCPANがあるperlが何をするにも便利だった。
484デフォルトの名無しさん
2017/07/20(木) 23:09:52.08ID:mEIqzc+z 老害言語ってことか
早く死んで欲しいな
早く死んで欲しいな
485デフォルトの名無しさん
2017/07/20(木) 23:10:18.31ID:mEIqzc+z sedおじさんawkおじさんvbaおじさんと一緒に地獄に堕ちろや
486デフォルトの名無しさん
2017/07/20(木) 23:13:27.39ID:7e4zgXSV >>481
さっさとpython3標準にしてくれよ
さっさとpython3標準にしてくれよ
487デフォルトの名無しさん
2017/07/20(木) 23:19:24.42ID:mEIqzc+z 頭がパーのパーカスパールお爺さん
早く死んで!
早く死んで!
488デフォルトの名無しさん
2017/07/20(木) 23:20:53.29ID:a17NgPNI いやーgrep awk sedは今でも便利よ
やっぱりコマンドライン直打ちで効果を発揮するのは大きい
やっぱりコマンドライン直打ちで効果を発揮するのは大きい
489デフォルトの名無しさん
2017/07/20(木) 23:23:30.28ID:mEIqzc+z 頭がパーのパーカスパールお爺さん
俺が引導渡してやるから、俺の前に並べや!
俺が引導渡してやるから、俺の前に並べや!
490デフォルトの名無しさん
2017/07/20(木) 23:25:18.58ID:a17NgPNI491デフォルトの名無しさん
2017/07/21(金) 02:09:05.74ID:EcVBepKl Nim良いよね〜
492デフォルトの名無しさん
2017/07/23(日) 01:22:57.80ID:WykumZNS Go言語がダメな理由
http://postd.cc/why-go-is-not-good/
http://postd.cc/why-go-is-not-good/
493デフォルトの名無しさん
2017/07/23(日) 02:52:57.22ID:QcJiE5IU >>492
2014年て
2014年て
494デフォルトの名無しさん
2017/07/23(日) 14:19:04.92ID:jZILUwsZ 2017年、人気のプログラミング言語トップはPython。C、Javaが続く。
検索、Google Trends、Twitter、GitHub、Stack Overflowなどの人気を総合
2017年7月23日
2017年現在、もっとも人気のあるプログラミング言語は「Python」。2位は「C」、3位は「Java」だと、電気通信分野の標準化団体であるIEEE(アイトリプルイー)が発行するオンラインマガジン「IEEE Spectrum」が、記事「The 2017 Top Programming Languages」で発表しました。
1位となったPythonは昨年3位だったのが2つランクをあげて1位に飛び込みました。
ただし、2位のCとの差は0.3ポイント、3位のJavaとの差も0.5ポイントと、1位、2位、3位の差はほんのわずかなものでした。
ちなみに4位のC++は約3ポイント離れた97.1ポイント、5位のC#は10ポイント以上離れた87.7ポイントですので、いかに上位3位の人気が堅いものかが分ります。
http://www.publickey1.jp/blog/17/2017pythoncjavagoogle_trendstwittergithubstackoverflow.html
http://www.publickey1.jp/2017/ieeesp01.gif
検索、Google Trends、Twitter、GitHub、Stack Overflowなどの人気を総合
2017年7月23日
2017年現在、もっとも人気のあるプログラミング言語は「Python」。2位は「C」、3位は「Java」だと、電気通信分野の標準化団体であるIEEE(アイトリプルイー)が発行するオンラインマガジン「IEEE Spectrum」が、記事「The 2017 Top Programming Languages」で発表しました。
1位となったPythonは昨年3位だったのが2つランクをあげて1位に飛び込みました。
ただし、2位のCとの差は0.3ポイント、3位のJavaとの差も0.5ポイントと、1位、2位、3位の差はほんのわずかなものでした。
ちなみに4位のC++は約3ポイント離れた97.1ポイント、5位のC#は10ポイント以上離れた87.7ポイントですので、いかに上位3位の人気が堅いものかが分ります。
http://www.publickey1.jp/blog/17/2017pythoncjavagoogle_trendstwittergithubstackoverflow.html
http://www.publickey1.jp/2017/ieeesp01.gif
495デフォルトの名無しさん
2017/07/23(日) 15:30:28.83ID:MmRfy8oq ランキング圏外のsmalltalkはどんだけゴミなんだ
prologすら入ってるというのに
prologすら入ってるというのに
496デフォルトの名無しさん
2017/07/23(日) 17:24:27.75ID:YFCxcaSM ガイジ低脳エスアイアイのお猿さん言語PHPがランクインしてる時点で
大したランキングじゃないよ
大したランキングじゃないよ
497デフォルトの名無しさん
2017/07/23(日) 18:07:27.23ID:cW8Cn5ON うわー荒らしの妄言のせいでちょっとSmalltlkに期待してしまった可哀想な子かま一人
498デフォルトの名無しさん
2017/07/23(日) 18:54:45.61ID:iWpZIg3t どうでもいいけどIEEEがやることなんだろうか
499デフォルトの名無しさん
2017/07/23(日) 21:16:08.30ID:4pTb5xvQ 「原始的なメモリ管理機能しか備えておらず、それが脆弱性や不具合を生む(中略)
Rust言語を勧めており、特にパーサーや入力ハンドラなどの部分から、徐々に
CのコードをRustに入れ替えていくべきであると主張」
C言語は滅びるべきか | スラド デベロッパー
https://developers.srad.jp/story/17/07/19/0754205/
2017年07月20日 7時00分
Rust言語を勧めており、特にパーサーや入力ハンドラなどの部分から、徐々に
CのコードをRustに入れ替えていくべきであると主張」
C言語は滅びるべきか | スラド デベロッパー
https://developers.srad.jp/story/17/07/19/0754205/
2017年07月20日 7時00分
500デフォルトの名無しさん
2017/07/23(日) 21:40:30.93ID:qzsJDNze 2位3位がCとJavaって時点で言語の先進性がランキングに影響してるわけでも無いしね。
(多少は影響するにしても)
あくまで実用言語の世界。
(多少は影響するにしても)
あくまで実用言語の世界。
501デフォルトの名無しさん
2017/07/23(日) 22:47:29.42ID:qzsJDNze >>499
今アセンブラと言うか、その延長で機械語のどのビットがアセンブラのどの命令によって変化するみたいなの読んだんだが、思ったより機械語理解出来そう。
素直に書いた方がアセンブラだと短いけど、機械語だと長くなるとか、CPUの特性に合わせるにはアセンブラの字面だけ理解してもダメなんだな。
その過程でどうもCはわりと素直にアセンブラにし易い構文だったみたいね。
そう言えばCのコードからアセンブラコード想像し易いけど、C++や他の言語じゃ想像出来ないとか話も聞く。
んでここからが本題なんだが、機械語かアセンブラの構文に意味や所用バイト数、所用クロック数の情報付加したリストから効率良い機械語の組合せ見つけて吐き出すってのはどの言語でも不可能じゃ無い気がしてる。
ただそれには相当深い知識が必要ってだけで。
基本は機械語になる様なバイト列をファイルに書き込めば良いんだから、機械語とプログラムとして動作させるファイルフォーマット形式覚えて、その通りにバイナリファイル書き出せば良い。
今アセンブラと言うか、その延長で機械語のどのビットがアセンブラのどの命令によって変化するみたいなの読んだんだが、思ったより機械語理解出来そう。
素直に書いた方がアセンブラだと短いけど、機械語だと長くなるとか、CPUの特性に合わせるにはアセンブラの字面だけ理解してもダメなんだな。
その過程でどうもCはわりと素直にアセンブラにし易い構文だったみたいね。
そう言えばCのコードからアセンブラコード想像し易いけど、C++や他の言語じゃ想像出来ないとか話も聞く。
んでここからが本題なんだが、機械語かアセンブラの構文に意味や所用バイト数、所用クロック数の情報付加したリストから効率良い機械語の組合せ見つけて吐き出すってのはどの言語でも不可能じゃ無い気がしてる。
ただそれには相当深い知識が必要ってだけで。
基本は機械語になる様なバイト列をファイルに書き込めば良いんだから、機械語とプログラムとして動作させるファイルフォーマット形式覚えて、その通りにバイナリファイル書き出せば良い。
502デフォルトの名無しさん
2017/07/24(月) 00:43:35.12ID:/k6j1DH/ 高級言語ってのはもともとFORTRAN教えてたダートマスの研究者が
初心者が必ず引っかかる「型」の概念をできるだけ無くそうとして作った
BASICのように"ビット的なことは知らなくていい"流れが一つあって
Cはそれとは別にむしろ"ビット操作ができる高級言語をくれ"というニーズで
作られてシステム寄りで普及した言語だから
「Cに替わる〜」もなんも、その界隈ではハードに密着した書き方が求められてて
そこへ遠い上の方から「ハード密着してると危ない!」とか言われても
なんだその「消防士は危ないから遠隔ロボットに置き換えるべき!」的な夢想論は?という感じでですね…
初心者が必ず引っかかる「型」の概念をできるだけ無くそうとして作った
BASICのように"ビット的なことは知らなくていい"流れが一つあって
Cはそれとは別にむしろ"ビット操作ができる高級言語をくれ"というニーズで
作られてシステム寄りで普及した言語だから
「Cに替わる〜」もなんも、その界隈ではハードに密着した書き方が求められてて
そこへ遠い上の方から「ハード密着してると危ない!」とか言われても
なんだその「消防士は危ないから遠隔ロボットに置き換えるべき!」的な夢想論は?という感じでですね…
503デフォルトの名無しさん
2017/07/24(月) 01:03:44.29ID:FW938Hri >>155
miniKanrenはどう?
miniKanrenはどう?
504デフォルトの名無しさん
2017/07/24(月) 05:05:21.76ID:T9l43aKR >>495
「すら」とは何だ
「すら」とは何だ
505デフォルトの名無しさん
2017/07/24(月) 09:02:21.94ID:S2+AoH9C FORTH もまだ現役なんだな。安心した。
506デフォルトの名無しさん
2017/07/24(月) 17:51:02.45ID:Q2tRT20x >>502
だから「C?あんなのは高級アセンブラだ!」となる
大部分の人がC/C++初心者のころつまずいたはずの
「ポインタわけわかんねー」ってのは仕様w
ところでC++というのは何のことでしたっけ?ww
だから「C?あんなのは高級アセンブラだ!」となる
大部分の人がC/C++初心者のころつまずいたはずの
「ポインタわけわかんねー」ってのは仕様w
ところでC++というのは何のことでしたっけ?ww
507デフォルトの名無しさん
2017/07/24(月) 19:05:02.59ID:GrwGqoyw 好きな言語と使う言語は違う
508デフォルトの名無しさん
2017/07/24(月) 22:01:44.72ID:mIkz9O7d 型を理解できない底辺ジャップランド土方どもは
屁臭いペチプァ〜でウンコードモリモリ大将軍してればいいよ
屁臭いペチプァ〜でウンコードモリモリ大将軍してればいいよ
509デフォルトの名無しさん
2017/07/24(月) 22:18:00.54ID:LnmIpSRU C++の作者ってビョォーン って名前だっけ?
510デフォルトの名無しさん
2017/07/24(月) 22:19:50.90ID:AAnKdxV0 Objective-Cとかクラス取り回しランタイムのオーバーヘッドで嫌われたのは
わからんでもないけれど、あれそれこそクラスがLAN上の別のマシンで動いてるぐらいの
分散処理を志向してるから、もっと思想が見直されてもいいような気がするが
なぜか、ネット時代になってもディスクリートなプログラムを一つのマシンで動かすぜ!用が
いつまでも手を替え品を替えというのは、教授これはいったい?
C++じゃなくてObjective-Cが流行ればいまのオブジェクト指向絡みの勘違いは
8割方解消されていたろうになぁ
わからんでもないけれど、あれそれこそクラスがLAN上の別のマシンで動いてるぐらいの
分散処理を志向してるから、もっと思想が見直されてもいいような気がするが
なぜか、ネット時代になってもディスクリートなプログラムを一つのマシンで動かすぜ!用が
いつまでも手を替え品を替えというのは、教授これはいったい?
C++じゃなくてObjective-Cが流行ればいまのオブジェクト指向絡みの勘違いは
8割方解消されていたろうになぁ
511デフォルトの名無しさん
2017/07/24(月) 22:25:12.16ID:Q2tRT20x 優秀な米留学組は型推論使ってできるだけ隠蔽して
生産性・保守(人材確保)性あげることを考えるはずだけど
一方2chでだべるだけのもいるよねw
生産性・保守(人材確保)性あげることを考えるはずだけど
一方2chでだべるだけのもいるよねw
512デフォルトの名無しさん
2017/07/24(月) 22:26:33.91ID:HA0I+0aJ short とかいらんかったんや。
long long long は準備しとけよ。
long long long は準備しとけよ。
513デフォルトの名無しさん
2017/07/24(月) 22:54:59.07ID:z9tFLcNk 抽象化してなんでも隠蔽すればいいと思ってるのはカスだってばよ。
514デフォルトの名無しさん
2017/07/24(月) 23:19:09.18ID:mIkz9O7d 必要なモノまで隠蔽した結果メクラガイジになったペチプァ〜〜〜〜さん達の悪口はやめたまえ
515デフォルトの名無しさん
2017/07/24(月) 23:22:26.66ID:rj0vQMEu516デフォルトの名無しさん
2017/07/25(火) 00:06:02.77ID:Wg5FapHh ネットに送信するメッセージは文字列と決まっている
だがOOPは抽象的過ぎたのでメッセージとは何かを決めることができなかった
だがOOPは抽象的過ぎたのでメッセージとは何かを決めることができなかった
517デフォルトの名無しさん
2017/07/25(火) 00:20:13.19ID:6voESBgd gz圧搾した中韓言語送ればええじゃん
518あ
2017/07/25(火) 01:55:35.53ID:lgBfQhyF php書くとき、型は気にするのでは?
eqeqeq使えないじゃん
eqeqeq使えないじゃん
519デフォルトの名無しさん
2017/07/25(火) 06:59:52.83ID:6voESBgd520あ
2017/07/25(火) 08:31:31.28ID:Yx6+jkpX >>519
あー、その地雷は理解できるわ。
型がないからうんぬんペチプァーと言ってるようなやつは前者の2つどっちかって印象。
あの道具に徹する姿勢好きなんだけどね。
気をつけて使うとそこそこまともだし。
敢えてfalsyなものを扱う勇気も要るけど。
気をつけたくないやつには向いてない言語。
言語仕様が破綻してるってのもまぁ、php3の時点であれだったのに、その後また使える文字減ったし、諦めるしかない。
あー、その地雷は理解できるわ。
型がないからうんぬんペチプァーと言ってるようなやつは前者の2つどっちかって印象。
あの道具に徹する姿勢好きなんだけどね。
気をつけて使うとそこそこまともだし。
敢えてfalsyなものを扱う勇気も要るけど。
気をつけたくないやつには向いてない言語。
言語仕様が破綻してるってのもまぁ、php3の時点であれだったのに、その後また使える文字減ったし、諦めるしかない。
521デフォルトの名無しさん
2017/07/25(火) 08:57:41.36ID:SyNDf/s0 falsy って何やねん?
523デフォルトの名無しさん
2017/07/27(木) 00:19:42.46ID:2FlrvgGr 使い捨てのモックとしてならまだしも
そこそこの規模の開発で使って苦しんでる連中は
ただのバカとしか思えんわ
そこそこの規模の開発で使って苦しんでる連中は
ただのバカとしか思えんわ
525デフォルトの名無しさん
2017/07/27(木) 11:56:41.88ID:T03zDTBA Lispは神の言語
526デフォルトの名無しさん
2017/07/27(木) 15:33:01.66ID:dBtvUIpG forthは?
527デフォルトの名無しさん
2017/07/27(木) 16:20:31.74ID:gEdE1/qh May the Forth be with you!
528デフォルトの名無しさん
2017/07/27(木) 18:56:32.71ID:L9OidomQ 5月専用言語ってことか。
529デフォルトの名無しさん
2017/07/27(木) 19:42:40.59ID:rQ7K04i3 mlが黄泉から還って左目を洗ったときにsmlが産まれ、右目を洗ったときにOCamlが産まれ、
鼻を洗ったときに産まれたのがF#であるらしい
鼻を洗ったときに産まれたのがF#であるらしい
530デフォルトの名無しさん
2017/07/30(日) 23:52:50.44ID:W7NHR4pI elmの話題が無いみたいだけど触ってる人いないの?
elmの影響を受けたというreduxをtyprscriptから使ってるけど、
reducerを書くのにimmutable.jsを導入してみたらtypescriptと相性があまり良くなくて悲しい。
どうせならelm触ったほうが幸せになれんのかしら。
elmの影響を受けたというreduxをtyprscriptから使ってるけど、
reducerを書くのにimmutable.jsを導入してみたらtypescriptと相性があまり良くなくて悲しい。
どうせならelm触ったほうが幸せになれんのかしら。
531デフォルトの名無しさん
2017/07/31(月) 02:15:29.10ID:iyeoTq8u 低レベル記述は出来なくてもいいから、短く書けて速いバイナリを吐く言語ってなんだろ?
532デフォルトの名無しさん
2017/07/31(月) 02:49:09.85ID:RkZnFpRc nimとcrystalは?
533デフォルトの名無しさん
2017/07/31(月) 09:34:17.04ID:rPsLgQ6H あまりにもマイナーな言語だと誰も行列計算を実装してくれてなくて面倒臭い
534デフォルトの名無しさん
2017/07/31(月) 11:09:33.58ID:TrWT5gkf Nim結構良さげな感じするなあ
535デフォルトの名無しさん
2017/07/31(月) 14:47:02.65ID:8d7NzLwa >>531
goってそれが売りじゃないの?
goってそれが売りじゃないの?
536デフォルトの名無しさん
2017/07/31(月) 14:53:08.10ID:TrWT5gkf537デフォルトの名無しさん
2017/07/31(月) 15:05:58.03ID:luO5NyKL >>536
関数型がいいならrustじゃないの
関数型がいいならrustじゃないの
538デフォルトの名無しさん
2017/07/31(月) 15:12:57.67ID:wxFD97LM 本当内包表記もmapもないのは謎だわ
おまけに三項演算子もif式もmatch文もないし
うんこ
おまけに三項演算子もif式もmatch文もないし
うんこ
539デフォルトの名無しさん
2017/07/31(月) 15:13:14.76ID:wxFD97LM match文じゃないmatch式
540デフォルトの名無しさん
2017/07/31(月) 15:28:16.20ID:G/Fk6WhF >>532
nim はバイナリ吐かないけどな。
nim はバイナリ吐かないけどな。
541デフォルトの名無しさん
2017/07/31(月) 15:45:00.94ID:u2+qVqAB オブジェクト指向言語で作るときよくOMT(オブジェクトモデリングテクニックとかなんとか)をよく使って設計してたんだけど、
関数型言語で作るときは何使えばいいの?
関数型言語で作るときは何使えばいいの?
542デフォルトの名無しさん
2017/07/31(月) 16:27:21.72ID:uq0CdBZz 今思いついたんだが
数学は公理を使えばいいというより、公理以外の何も使わない方がいいな
特に言語に依存するテクニックを使ってはいけない
言語を変えた途端に使えなくなるので
数学は公理を使えばいいというより、公理以外の何も使わない方がいいな
特に言語に依存するテクニックを使ってはいけない
言語を変えた途端に使えなくなるので
543デフォルトの名無しさん
2017/07/31(月) 16:28:38.94ID:A1TauzTI 三項演算子は構文がまるで違うからね
式中にもif書けるようにするからそれ使えの方向
(逆にif廃止全部三項演算子使えな言語があったらおもしろいけどw)
式中にもif書けるようにするからそれ使えの方向
(逆にif廃止全部三項演算子使えな言語があったらおもしろいけどw)
544デフォルトの名無しさん
2017/07/31(月) 19:35:10.71ID:xqAPypbO >>541
関数型の重要な設計指針として、トップダウンで考えるというのがある
1. 問題全体の結果を求める関数のスタブを作る
2. スタブを一つ選ぶ
3. 2で選んだ関数を実装するために必要なものを考え、それぞれを求める関数のスタブを作る
4. 2へ戻る
これを、すべての関数が十分(容易に実装できるレベル)に細分化されるまで繰り返す
こうやっていくと非常に明快で平易なコードになる
逆に入力から出力を導くという考え方で作ろうとすると、俺スゲェに陥って意味不明なコードになりやすい
関数型の重要な設計指針として、トップダウンで考えるというのがある
1. 問題全体の結果を求める関数のスタブを作る
2. スタブを一つ選ぶ
3. 2で選んだ関数を実装するために必要なものを考え、それぞれを求める関数のスタブを作る
4. 2へ戻る
これを、すべての関数が十分(容易に実装できるレベル)に細分化されるまで繰り返す
こうやっていくと非常に明快で平易なコードになる
逆に入力から出力を導くという考え方で作ろうとすると、俺スゲェに陥って意味不明なコードになりやすい
545デフォルトの名無しさん
2017/07/31(月) 19:54:36.50ID:u2+qVqAB546デフォルトの名無しさん
2017/07/31(月) 20:05:13.60ID:ZV6hqn66 「おまえはこういうコマンドを与えるとこれをやるクラス」って
トップダウンで構造決めてくオブジェクト指向の基本手法の
単語入れ替えたコピペかと思ったw
そしてそれならコマンドに対するふるまい変えられるオブジェクト指向の方がいいや
トップダウンで構造決めてくオブジェクト指向の基本手法の
単語入れ替えたコピペかと思ったw
そしてそれならコマンドに対するふるまい変えられるオブジェクト指向の方がいいや
547デフォルトの名無しさん
2017/07/31(月) 20:42:45.33ID:uq0CdBZz トップダウンの細分化をどこで止めるかを考えないと意味がない
CPUの種類までトップが決めるのか?
CPUを変えたり仮想関数のふるまいを変えたいならトップダウンを止める必要がある
CPUの種類までトップが決めるのか?
CPUを変えたり仮想関数のふるまいを変えたいならトップダウンを止める必要がある
548デフォルトの名無しさん
2017/07/31(月) 21:03:46.00ID:iyeoTq8u549デフォルトの名無しさん
2017/07/31(月) 21:35:05.34ID:VY/jm5nF もし関数型で大規模な業務アプリを作るなら、大まかなところは伝統的なIPOベースのDFDで描いて
各プロセスを>>544のようなスタイルで実装していくことになるんじゃないかな
データ指向の設計ってCOBOL時代に既に完成してて、あとは莫大なコピペコードの問題を関数型の高度な宣言的記述によって回避できるなら
設計手法としてはわざわざ意識高そうな複雑な手法を持ち出すまでもなく十分に完成と言えると思う
各プロセスを>>544のようなスタイルで実装していくことになるんじゃないかな
データ指向の設計ってCOBOL時代に既に完成してて、あとは莫大なコピペコードの問題を関数型の高度な宣言的記述によって回避できるなら
設計手法としてはわざわざ意識高そうな複雑な手法を持ち出すまでもなく十分に完成と言えると思う
550デフォルトの名無しさん
2017/07/31(月) 23:51:23.68ID:CknoIXsc 俺が若い頃(90年頃)はC言語の事を
関数型言語と呼んでたのに。
関数型言語と呼んでたのに。
551デフォルトの名無しさん
2017/08/01(火) 08:07:11.18ID:JcYmkGrg 今じゃlispも関数型に入れてもらえるかどうか
552デフォルトの名無しさん
2017/08/01(火) 09:55:49.70ID:QEGWTgnM そろそろ次次世代が気になる
553デフォルトの名無しさん
2017/08/01(火) 12:52:24.85ID:PIQ133u2 関数型が注目されてるのってマルチコア時代の並列処理を効率良く動かすための
手法として注目されてるわけで
更に次の世代というと、量子コンピュータってことになるけど
今の実用化している量子コンピュータは機械学習に最適化されてるんで
つまり機械学習専用言語ってことになるのかな
手法として注目されてるわけで
更に次の世代というと、量子コンピュータってことになるけど
今の実用化している量子コンピュータは機械学習に最適化されてるんで
つまり機械学習専用言語ってことになるのかな
554デフォルトの名無しさん
2017/08/01(火) 13:12:51.64ID:3yEb4FWA >>553
飽きてきたから次のおもちゃってことだろ
飽きてきたから次のおもちゃってことだろ
555デフォルトの名無しさん
2017/08/01(火) 15:56:17.80ID:HS7kzK9m 機械学習のハードが実現してなくても、ソフトで実現すれば数世代先取りできるだろ
現にソフトで機械学習やってるし
ソフトでやるのに飽きた頃にハードが出てくる
現にソフトで機械学習やってるし
ソフトでやるのに飽きた頃にハードが出てくる
556デフォルトの名無しさん
2017/08/01(火) 16:42:50.10ID:BPE2Uku1 機械学習専用ハード(ASIC)もうあるよグーグルTPUとか
557デフォルトの名無しさん
2017/08/01(火) 17:03:33.70ID:HS7kzK9m ハードの実験っていうかオープンソースじゃない実験は再現性が怪しい
558デフォルトの名無しさん
2017/08/02(水) 00:22:40.42ID:trs+oWK4 VHDLに代わる言語が出てもいいかな。
559デフォルトの名無しさん
2017/08/03(木) 18:26:45.17ID:JgW7vvvx OCamlが学問分野で今微妙にアツイらしい
560デフォルトの名無しさん
2017/08/03(木) 19:50:47.86ID:NS2Ahv95561デフォルトの名無しさん
2017/08/03(木) 19:54:19.27ID:eWbe8h/f >>559
Googleは君の興味関心を学習して君の見たい世界を見せているということを念頭に置いておいたほうがいいよ
Googleは君の興味関心を学習して君の見たい世界を見せているということを念頭に置いておいたほうがいいよ
562デフォルトの名無しさん
2017/08/03(木) 20:14:27.98ID:JgW7vvvx563デフォルトの名無しさん
2017/08/03(木) 21:01:12.44ID:cUZMqwjs OCamlに限った話ではない
564デフォルトの名無しさん
2017/08/03(木) 21:24:53.35ID:JgW7vvvx まああくまで微妙にアツイだからな
ScalaとかHaskellもあったかな?
他はもうC++FortranPythonMatlabMathematicaしか知らんなあ
ケムインフォマティックスなんかはHaskell Scalaはやってる人いるけど Ocamlは聞かないし、やっぱりHaskell Scalaのが上かな?
ScalaとかHaskellもあったかな?
他はもうC++FortranPythonMatlabMathematicaしか知らんなあ
ケムインフォマティックスなんかはHaskell Scalaはやってる人いるけど Ocamlは聞かないし、やっぱりHaskell Scalaのが上かな?
565デフォルトの名無しさん
2017/08/03(木) 21:35:28.91ID:VGeKeN5L haskell とか scala とかってもはや学習した時間を無駄だと思いたくない人たちが
無理やり盛り上げてるようにしか思えないんだが。
無理やり盛り上げてるようにしか思えないんだが。
566デフォルトの名無しさん
2017/08/03(木) 21:36:52.08ID:8l5FpDvx OCamlはマルチコア対応になったらまた始めたい
Jocamlとか折角面白いのにシングルコアなんで魅力半減
Jocamlとか折角面白いのにシングルコアなんで魅力半減
567デフォルトの名無しさん
2017/08/03(木) 21:37:14.15ID:e6YEFDfb >>565
は?
は?
568デフォルトの名無しさん
2017/08/03(木) 22:18:12.98ID:nBK54dRQ HaskellもScalaも関数型言語の考え方だけ学んだら用済みで、
取り入れるだけ取り入れたJava8や、Kotlinが正義
このスレでは叩かれたが、今となっては俺の言った通りになったじゃないか
取り入れるだけ取り入れたJava8や、Kotlinが正義
このスレでは叩かれたが、今となっては俺の言った通りになったじゃないか
569デフォルトの名無しさん
2017/08/03(木) 22:21:48.14ID:WxFDmNeE 正直kotlinが優勢だよね。感覚的には
golangは早めに安定したから今はやってるけど、
また状況は変わりそう。
rustはメモリオーナーシップモデルをswiftにパクられたらいらない子になりそう。
golangは早めに安定したから今はやってるけど、
また状況は変わりそう。
rustはメモリオーナーシップモデルをswiftにパクられたらいらない子になりそう。
570デフォルトの名無しさん
2017/08/03(木) 22:25:27.52ID:N0DDjuI1571デフォルトの名無しさん
2017/08/03(木) 22:39:07.10ID:563u4f2I kotlinはscalaの知識使えるし別に
webならplayあるscalaの方が有利だし使い分けじゃね
webならplayあるscalaの方が有利だし使い分けじゃね
572デフォルトの名無しさん
2017/08/03(木) 23:08:37.77ID:nBK54dRQ >>571
Playは絶賛失速中だろう
コミュニティは機能してないし勉強会もイベントもなく、QiitaやTwitterにももう何もない
Scalaで使ってた人はRailsやDjangoを使い始め、Javaやってる人はSpringに戻っていった
Playは絶賛失速中だろう
コミュニティは機能してないし勉強会もイベントもなく、QiitaやTwitterにももう何もない
Scalaで使ってた人はRailsやDjangoを使い始め、Javaやってる人はSpringに戻っていった
573デフォルトの名無しさん
2017/08/03(木) 23:29:24.10ID:6A4YkL5b やっぱりGroovyやってた人たちが一番先見性あったな
次はどの言語だろう…
次はどの言語だろう…
574デフォルトの名無しさん
2017/08/03(木) 23:39:13.81ID:F8ZQ8AqH 一時のscala ブームは何だったのか?
575デフォルトの名無しさん
2017/08/04(金) 00:11:57.82ID:O3MamTZa576デフォルトの名無しさん
2017/08/04(金) 01:18:05.91ID:f63aP9iW java8w
577デフォルトの名無しさん
2017/08/04(金) 04:09:41.88ID:U01kvQtM rubyってrailsで当てた一発屋なのにね。
578デフォルトの名無しさん
2017/08/04(金) 10:42:41.04ID:zYGfuuva 型無し能無しセンス無し
579デフォルトの名無しさん
2017/08/04(金) 12:14:49.37ID:rS2vQ23N セイロンの事も忘れないでね
581デフォルトの名無しさん
2017/08/04(金) 23:25:50.79ID:vuZIQLpQ むやみやたらと大量のソースコードを量産して、ディスクの肥やしにする最近の風潮になじめない。
元凶はJavaあたりか。
価値のあるコードってのは、定義が難しそうだけど、
たとえば実行可能コードとそのソースコードのボリューム比較を考えてみると、
ソースが理不尽にふくらんでいる気がする。
hello,worldに数十行ってのは本末転倒。
なんでもかんでもオブジェクト指向しなくても、昔も別に困ったわけじゃないんだから、OOが必然ではないはず。
どんどん全体を見渡せる、いわゆる、神の目を持つものが少なくなっている。
まあ、仕事を増やすって意味で業界に貢献してるんだろうけど、ばかばかしいほどにまで非効率になっている
気がするね。
元凶はJavaあたりか。
価値のあるコードってのは、定義が難しそうだけど、
たとえば実行可能コードとそのソースコードのボリューム比較を考えてみると、
ソースが理不尽にふくらんでいる気がする。
hello,worldに数十行ってのは本末転倒。
なんでもかんでもオブジェクト指向しなくても、昔も別に困ったわけじゃないんだから、OOが必然ではないはず。
どんどん全体を見渡せる、いわゆる、神の目を持つものが少なくなっている。
まあ、仕事を増やすって意味で業界に貢献してるんだろうけど、ばかばかしいほどにまで非効率になっている
気がするね。
582デフォルトの名無しさん
2017/08/04(金) 23:50:29.87ID:ZFg5jE9u 記憶力が落ちただけだと思うよ
自分で気付いてないだけ
自分で気付いてないだけ
583デフォルトの名無しさん
2017/08/05(土) 00:35:23.13ID:yfDugfcM どこの世界の話だ
ここ最近の風潮では、短いコードが正義だと関数型を採用しひたすら抽象化に邁進する流れじゃないのか
ここ最近の風潮では、短いコードが正義だと関数型を採用しひたすら抽象化に邁進する流れじゃないのか
584デフォルトの名無しさん
2017/08/05(土) 01:02:28.33ID:jB/epMOs どこの世界の話だ
585デフォルトの名無しさん
2017/08/05(土) 02:27:20.31ID:r+UIi6ic 少なくとも日本ではなさそうだな
ジャップランド土人は屁臭いペチプゥで
型無し能無しセンス無しの糞コードウンコモリモリ大将軍してる
基地害低脳ゴミカスしかおらんからな
ジャップランド土人は屁臭いペチプゥで
型無し能無しセンス無しの糞コードウンコモリモリ大将軍してる
基地害低脳ゴミカスしかおらんからな
586デフォルトの名無しさん
2017/08/05(土) 09:39:30.67ID:LM2wNYVN Petit peu な Codeaux un commois liais mois liais?
587デフォルトの名無しさん
2017/08/05(土) 12:37:44.56ID:ioSmFHmD Ceylon は消えるだろうな。キラーアプリが出てくれば別だけど。
(Ruby がRailsで一発当てたみたいに、すごいソフトが出てくればの話だけど)
(Ruby がRailsで一発当てたみたいに、すごいソフトが出てくればの話だけど)
588デフォルトの名無しさん
2017/08/05(土) 12:38:46.91ID:ioSmFHmD 最近のKotolin 推しって何なの?
一時期Scala を押していた人たちがKotolin に移っているのかな?
一時期Scala を押していた人たちがKotolin に移っているのかな?
589デフォルトの名無しさん
2017/08/05(土) 12:56:21.44ID:r+UIi6ic Androidもしらないサーバーサイドお爺ちゃん
組み込み曾お爺ちゃんの後を継ぐのは君だ
組み込み曾お爺ちゃんの後を継ぐのは君だ
590デフォルトの名無しさん
2017/08/05(土) 13:04:32.77ID:wQFjSmwa きっかけはAndroidの件だけど、Kotlinを話題にしてるのはサーバーサイドの連中が中心だろう
Android開発なんて金にならない三流分野で、プログラミングのメインストリームを変えるような影響力なんて無いよ
Android開発なんて金にならない三流分野で、プログラミングのメインストリームを変えるような影響力なんて無いよ
591デフォルトの名無しさん
2017/08/05(土) 13:16:01.72ID:POjfJmBG 今はなんとなくSwiftやTypeScriptのような言語が流行っている雰囲気があるから。
Java/Android界隈の人も var 変数 : 型 って書きたいんだろう。
Java/Android界隈の人も var 変数 : 型 って書きたいんだろう。
592デフォルトの名無しさん
2017/08/05(土) 15:02:06.08ID:j/cNGuAY >>590
プログラミングのメインストリーム変えるような連中は、Android開発だろうとサーバサイドだろうとなんでもできるフルスタックが多いんじゃない?
プログラミングのメインストリーム変えるような連中は、Android開発だろうとサーバサイドだろうとなんでもできるフルスタックが多いんじゃない?
593デフォルトの名無しさん
2017/08/05(土) 15:05:18.69ID:RDrQu3eT var 変数 で型推論してくれるのが前提の書き方のはずで
関数型言語だと「型注釈は(コンパイラが失敗するまで)書くな」だけど
: 型 つけないとコンパイラに怒られまくるなら最初から書いとくのも仕方ないね
関数型言語だと「型注釈は(コンパイラが失敗するまで)書くな」だけど
: 型 つけないとコンパイラに怒られまくるなら最初から書いとくのも仕方ないね
594デフォルトの名無しさん
2017/08/05(土) 15:37:15.82ID:wQFjSmwa595デフォルトの名無しさん
2017/08/05(土) 15:51:07.66ID:5/nXCXeI596デフォルトの名無しさん
2017/08/05(土) 16:12:29.25ID:uXlFBIBD フルスタックって、FORTH かよっ!
597デフォルトの名無しさん
2017/08/05(土) 17:12:21.73ID:n8pq6YqV 天才プログラマが一人で全部作りましたって時代ではないからな。。
598デフォルトの名無しさん
2017/08/05(土) 18:16:19.01ID:RDrQu3eT >>595
逆に積極的に書くのがベストプラクティスなんてのがどこにあるんだよ?
逆に積極的に書くのがベストプラクティスなんてのがどこにあるんだよ?
599デフォルトの名無しさん
2017/08/05(土) 19:21:58.27ID:j/cNGuAY まぁ書かないのが良いとはされてるが、プロダクションコードはコード規約とかで、全てに型注釈入れろとしてるとこが多いね
600デフォルトの名無しさん
2017/08/05(土) 21:37:34.82ID:boLwVObe601デフォルトの名無しさん
2017/08/05(土) 22:33:18.79ID:r+UIi6ic Javaかよ(笑)
602デフォルトの名無しさん
2017/08/06(日) 01:46:33.87ID:X6yw5Nga ScalaでもHaakellでも書くのが当たり前だぞ
603デフォルトの名無しさん
2017/08/06(日) 02:30:30.64ID:0wpHTVIH えっ それはどこの当たり前??
604デフォルトの名無しさん
2017/08/06(日) 03:09:28.92ID:OwbCgw8i OCamlでも普通は型を書くぞ。
605デフォルトの名無しさん
2017/08/06(日) 03:13:20.32ID:JQasL6d0 ?
606デフォルトの名無しさん
2017/08/06(日) 03:34:23.31ID:0wpHTVIH OCamlとか死んだ老害言語の話はしてないから
耄碌お爺ちゃんはあっち行ってて
耄碌お爺ちゃんはあっち行ってて
607デフォルトの名無しさん
2017/08/06(日) 04:44:58.60ID:X6yw5Nga >>603
?
?
608デフォルトの名無しさん
2017/08/06(日) 04:45:24.92ID:X6yw5Nga なんだエアプが湧いてんのか
609デフォルトの名無しさん
2017/08/06(日) 04:54:54.04ID:X6yw5Nga もしかして式一つずつに型注釈入れるとでも思ってるのかね
そんなのJavaですらやらんよ?
HaskellやScalaは少なくとも各モジュールのトップレベルの関数には型注釈つけるし、つけないと効率悪くなる
コンパイル遅くなりやすいし、推論に頼りすぎるとエラー時に問題箇所が曖昧になるから
そんなのJavaですらやらんよ?
HaskellやScalaは少なくとも各モジュールのトップレベルの関数には型注釈つけるし、つけないと効率悪くなる
コンパイル遅くなりやすいし、推論に頼りすぎるとエラー時に問題箇所が曖昧になるから
610デフォルトの名無しさん
2017/08/06(日) 07:49:45.80ID:K4D4wFtM 書いても書かなくてもよいというのが客観的事実だから
理系なら話はそれで終わり
それ以上踏み込むのは文系の仕事
理系なら話はそれで終わり
それ以上踏み込むのは文系の仕事
611デフォルトの名無しさん
2017/08/06(日) 10:18:56.55ID:fAxfwMN0 OCamlアンチおるな
612デフォルトの名無しさん
2017/08/06(日) 10:46:44.29ID:0wpHTVIH613デフォルトの名無しさん
2017/08/06(日) 11:37:53.63ID:exhLY8Mw Ocaml自体は良い言語なの?
あんまり使ってるって人は聞かないけど
あんまり使ってるって人は聞かないけど
614デフォルトの名無しさん
2017/08/06(日) 11:40:40.31ID:+mclrVGG >>613
よく知らないけど金融で使ってる人がいるらしいのと、最近機械学習で使ってる輩がいるらしい
よく知らないけど金融で使ってる人がいるらしいのと、最近機械学習で使ってる輩がいるらしい
615デフォルトの名無しさん
2017/08/06(日) 12:03:55.69ID:K4D4wFtM >>613
型ありライブラリなし特技なし
型ありライブラリなし特技なし
616デフォルトの名無しさん
2017/08/06(日) 12:23:21.27ID:+mclrVGG あとHLVMはOCamlじゃなかったっけ?
617デフォルトの名無しさん
2017/08/06(日) 14:51:30.93ID:X6yw5Nga618デフォルトの名無しさん
2017/08/06(日) 14:51:53.14ID:9I48IW8u ocaml, haskell の比較
ttp://d.hatena.ne.jp/camlspotter/20101212/1292165692
まあ極論抜きにして普通に考えればこういうことだろうなという印象。
ttp://d.hatena.ne.jp/camlspotter/20101212/1292165692
まあ極論抜きにして普通に考えればこういうことだろうなという印象。
619デフォルトの名無しさん
2017/08/06(日) 15:00:38.52ID:X6yw5Nga >>618
この人は良く分かってるなあ
純粋言いながらunsafePerformIO使うって件はまさにその通り
結局このIO書くときの面倒さがあるから、ScalaやOCamlのが使いやすい印象になってしまう
この人は良く分かってるなあ
純粋言いながらunsafePerformIO使うって件はまさにその通り
結局このIO書くときの面倒さがあるから、ScalaやOCamlのが使いやすい印象になってしまう
620デフォルトの名無しさん
2017/08/06(日) 16:21:58.97ID:HqZ4NE4V 割り切れば楽なのにと思ったりもするw
純粋とは副作用有りと無しを分けて書くことで
try-catchで正常処理とエラー処理を分けて書くようなものだ
純粋とは副作用有りと無しを分けて書くことで
try-catchで正常処理とエラー処理を分けて書くようなものだ
621デフォルトの名無しさん
2017/08/07(月) 11:39:10.26ID:tDzZ+7xU >>620
ちょっと脇道にそれるけど
try-catchって言うほど正常処理とエラー処理をきれいに分けられる?
goのようにその構文を捨ててる言語があるとこも考えると
いうほど価値あるのかなって思う。
あと関数型だとEither型とかもあるよね。
ちょっと脇道にそれるけど
try-catchって言うほど正常処理とエラー処理をきれいに分けられる?
goのようにその構文を捨ててる言語があるとこも考えると
いうほど価値あるのかなって思う。
あと関数型だとEither型とかもあるよね。
622デフォルトの名無しさん
2017/08/07(月) 12:10:20.41ID:r7C/NYo5 >>621
返り値が一つしかない言語では有能機能だった。多値返却が当たり前になりつつある今はもう……
返り値が一つしかない言語では有能機能だった。多値返却が当たり前になりつつある今はもう……
623デフォルトの名無しさん
2017/08/07(月) 12:28:03.34ID:tDzZ+7xU >>622
まぁ。それでもリストなりタプルで返せば一緒だけどね。
前の会社の上司がphpの関数の返却値を必ず配列で返してたの思い出した。
言語としての基本方針がそうなっているかどうかだよなー。
結局誰かがそういう実装にしてもメンテする過程で混在しちゃったら地獄と化す
まぁ。それでもリストなりタプルで返せば一緒だけどね。
前の会社の上司がphpの関数の返却値を必ず配列で返してたの思い出した。
言語としての基本方針がそうなっているかどうかだよなー。
結局誰かがそういう実装にしてもメンテする過程で混在しちゃったら地獄と化す
624デフォルトの名無しさん
2017/08/07(月) 12:37:33.59ID:tDzZ+7xU elixirの言語仕様の中に、結構何これかっこいいって仕様がたくさんあった気がする。
例えばパイプ演算子とか、
バイト配列に対するパターンマッチとか。
例えばパイプ演算子とか、
バイト配列に対するパターンマッチとか。
625デフォルトの名無しさん
2017/08/07(月) 14:18:21.77ID:JP8gCgB5 OCamlでは常備薬だったよ>パイプ演算子
haskellの$や.より読みやすくて好きなんだけど、関数型も取り入れててオブジェクト指向もサポートしている言語だと、
メソッドチェーンでええやん勢がいるのが難点
自由度はパイプの方が高い気がするんだがな
haskellの$や.より読みやすくて好きなんだけど、関数型も取り入れててオブジェクト指向もサポートしている言語だと、
メソッドチェーンでええやん勢がいるのが難点
自由度はパイプの方が高い気がするんだがな
626デフォルトの名無しさん
2017/08/07(月) 19:08:07.52ID:dQGQ218P お前らだれもF#話題にしないからマイクロソフトP#作っちゃったじゃん
627デフォルトの名無しさん
2017/08/07(月) 19:57:22.72ID:y+tGiyqS へー、FORTRANの次はPascalの.NET版か。
628デフォルトの名無しさん
2017/08/07(月) 20:38:25.36ID:E9IdpB60 MSっていったいいくつ言語作ったんだ
そしてパクリでない言語はあるのか
そしてパクリでない言語はあるのか
629デフォルトの名無しさん
2017/08/07(月) 20:45:36.62ID:n9zFQLuH >>628
すべての言語はすべからくパクりパクられの関係であるといえる。
一番言語を上手く作れている会社だと思うけど >MS
と言うか開発環境セットでいい感じ。
vscodeの完成度は高い。TypeScript大好き。
ただTypeScriptはあくまでESの型拡張に限定してるからES側に機能追加がないと
言語として成長できないという問題はある。
ドッチかというとFacebookが言語開発イマイチ感
Hackとかflowとか
すべての言語はすべからくパクりパクられの関係であるといえる。
一番言語を上手く作れている会社だと思うけど >MS
と言うか開発環境セットでいい感じ。
vscodeの完成度は高い。TypeScript大好き。
ただTypeScriptはあくまでESの型拡張に限定してるからES側に機能追加がないと
言語として成長できないという問題はある。
ドッチかというとFacebookが言語開発イマイチ感
Hackとかflowとか
630デフォルトの名無しさん
2017/08/07(月) 20:52:47.52ID:E9IdpB60 >>629
BASICっぽくないのにVisualBASICとか名前をパクってるってこと
他の言語は移行者を配慮してだが、MSは騙す努力ばかりに見える
開発環境とセットというのがまたダメだ
プログラマによる変革が生まれにくい
単なる作業者ならいいが
BASICっぽくないのにVisualBASICとか名前をパクってるってこと
他の言語は移行者を配慮してだが、MSは騙す努力ばかりに見える
開発環境とセットというのがまたダメだ
プログラマによる変革が生まれにくい
単なる作業者ならいいが
631デフォルトの名無しさん
2017/08/07(月) 21:02:50.52ID:n9zFQLuH >>630
俺もちょい前まではMS気に食わなかったし
vscodeが最初登場したときは、なにこれatomパクって車輪の再発明?
みたいな感じだったが使ってみてハマった。
別に開発環境で囲い込もうってわけでもないと思う。
一緒にlangage server protoolというのも定義して公開した。
IDEと言語サーバ間のプロトコルを共通化し対応するEditorならなんでも使えるようにする。
gccがサポートしてるってニュース見たよこないだ。
ということで最近のMSはオープンソースとの関係がよい。気がする。
俺もちょい前まではMS気に食わなかったし
vscodeが最初登場したときは、なにこれatomパクって車輪の再発明?
みたいな感じだったが使ってみてハマった。
別に開発環境で囲い込もうってわけでもないと思う。
一緒にlangage server protoolというのも定義して公開した。
IDEと言語サーバ間のプロトコルを共通化し対応するEditorならなんでも使えるようにする。
gccがサポートしてるってニュース見たよこないだ。
ということで最近のMSはオープンソースとの関係がよい。気がする。
632デフォルトの名無しさん
2017/08/07(月) 21:36:59.12ID:NP3377Zu633デフォルトの名無しさん
2017/08/07(月) 21:48:18.67ID:Ii/d6u5R >>632
Googleも結局VSCodeメインで使ってるしな
Googleも結局VSCodeメインで使ってるしな
634デフォルトの名無しさん
2017/08/07(月) 22:01:33.03ID:E9IdpB60 >>631
その先に3E戦略が見えるから乗っかれない
その先に3E戦略が見えるから乗っかれない
635デフォルトの名無しさん
2017/08/07(月) 22:03:25.57ID:JP8gCgB5 Electronベースのエディタとしては後発なのに他を追い抜いたのが凄いわ>vscode
vscodeはatomやbracketと同じElectronベースなのにどうしてあんなに軽いのかね
vscodeはatomやbracketと同じElectronベースなのにどうしてあんなに軽いのかね
636デフォルトの名無しさん
2017/08/07(月) 22:19:19.22ID:NP3377Zu >>635
MSは長い間VS作ってるしエディタとかIDEのノウハウが凄いのでは
MSは長い間VS作ってるしエディタとかIDEのノウハウが凄いのでは
637デフォルトの名無しさん
2017/08/07(月) 22:34:23.14ID:60+6AuiC 構造化BASICの正統進化なんだけど
ついでに8bit機にのってたようなのは当時既にストリートBASICって言われてた
(漏れもwikipediaで知ったんだけどさw)
ついでに8bit機にのってたようなのは当時既にストリートBASICって言われてた
(漏れもwikipediaで知ったんだけどさw)
638デフォルトの名無しさん
2017/08/07(月) 22:52:43.28ID:Bulya1kQ >>629
すべからくの使い方を間違えてる日本語が気持ち悪い
すべからくの使い方を間違えてる日本語が気持ち悪い
639デフォルトの名無しさん
2017/08/07(月) 22:56:12.10ID:PU2i/+ft 最大級の戦犯はペチプ〜やペェ〜ルとかいう真性糞ゴミを作った屑
640デフォルトの名無しさん
2017/08/07(月) 22:56:31.90ID:BjLAzK5L 一歩の作者が悪いんや…
すべからく…べし、の形すら守ってないと俺はそれ以降の文章はスキップする
読む価値がない
すべからく…べし、の形すら守ってないと俺はそれ以降の文章はスキップする
読む価値がない
641デフォルトの名無しさん
2017/08/07(月) 23:11:59.24ID:nZ0RU5t+ >>637
MSのQuickBASIC好きだったなぁ
MSのQuickBASIC好きだったなぁ
642デフォルトの名無しさん
2017/08/07(月) 23:20:02.38ID:PU2i/+ft 屁臭いペチプァゴミはすべからく死すべし
643デフォルトの名無しさん
2017/08/08(火) 01:38:13.00ID:Apkyawzp >>636
内部的にtypescript使ってるのは関係ないかな?
内部的にtypescript使ってるのは関係ないかな?
644デフォルトの名無しさん
2017/08/08(火) 01:43:32.85ID:lBJjevEI vscode はむしろマイクロソフト内の若手が爺どもにぶちぎれて
まったく別路線のものをつくったという印象
まったく別路線のものをつくったという印象
645あ
2017/08/08(火) 08:04:36.27ID:y4ztJzgK >>630
いわゆるMS BASICからQUICKBASIC→Visual Basic→VB.netと辿っていけばわかるけど、普通にMicrosoft系のBASICだと思うけど。
どの辺がBASICっぽくない?
いわゆるMS BASICからQUICKBASIC→Visual Basic→VB.netと辿っていけばわかるけど、普通にMicrosoft系のBASICだと思うけど。
どの辺がBASICっぽくない?
646デフォルトの名無しさん
2017/08/08(火) 11:58:13.44ID:1MHxdJ+Z647デフォルトの名無しさん
2017/08/08(火) 11:58:30.92ID:1MHxdJ+Z x だぢ
o だし
o だし
648デフォルトの名無しさん
2017/08/08(火) 14:24:25.13ID:Apkyawzp >>646
それは言われなくても分かる。
素のES2015よりメンテナンス性や安定性が向上しないかな。
例えばnull安全なコードがかけるからnilチェック漏れとかを潰せるし。
プラグインもtypescriptでかくから少しましになる?
それは言われなくても分かる。
素のES2015よりメンテナンス性や安定性が向上しないかな。
例えばnull安全なコードがかけるからnilチェック漏れとかを潰せるし。
プラグインもtypescriptでかくから少しましになる?
649デフォルトの名無しさん
2017/08/08(火) 16:22:17.89ID:1MHxdJ+Z650デフォルトの名無しさん
2017/08/08(火) 22:23:27.85ID:tSx5MElw651デフォルトの名無しさん
2017/08/08(火) 23:05:33.35ID:uStlgM0t652デフォルトの名無しさん
2017/08/09(水) 00:30:01.84ID:89KnBaBf エラーをバケツリレーするより
エクセションで飛ばした方が簡単でしょ
エクセションで飛ばした方が簡単でしょ
653デフォルトの名無しさん
2017/08/09(水) 08:59:18.22ID:FPEvL6ue 簡単そうに見えても結局それぞれの場所でオブジェクト開放を
うまくやらなきゃならんことを考えれば大して楽になるわけでもない。
うまくやらなきゃならんことを考えれば大して楽になるわけでもない。
654デフォルトの名無しさん
2017/08/09(水) 12:40:14.22ID:aEwDYdDe VSCodeでインテリセンス技術をオープンソースにしたのは地味に画期的なことだと思う
IDE分野でのMSの強さを支えるコア技術だよね
IDE分野でのMSの強さを支えるコア技術だよね
655デフォルトの名無しさん
2017/08/09(水) 13:12:03.09ID:ZSp2lruc Goはパターンマッチないのに例外を戻り値で返すからあんな面倒な事になってるんだろ
656デフォルトの名無しさん
2017/08/09(水) 19:01:09.05ID:FPEvL6ue その言い方だと例外投げられればいいのかパターンマッチが導入すればいいのか
わからんが。
どっちかもしくは両方あれば楽になったとでも?
プログラム書く上でまったく本質的な制約だと思わんな。
わからんが。
どっちかもしくは両方あれば楽になったとでも?
プログラム書く上でまったく本質的な制約だと思わんな。
657デフォルトの名無しさん
2017/08/09(水) 19:08:28.68ID:h3UNfnj7 本質的な制約って何だよ?
658デフォルトの名無しさん
2017/08/09(水) 19:25:58.05ID:ZSp2lruc659デフォルトの名無しさん
2017/08/09(水) 19:26:26.92ID:ZSp2lruc あと複数の戻り値じゃなくてタプル+単一戻り値の方が扱いやすい
660デフォルトの名無しさん
2017/08/09(水) 19:49:05.94ID:gdB1BRW9 よくわからんが、タプル+単一は複数とは違うのか?
661デフォルトの名無しさん
2017/08/09(水) 19:53:53.66ID:h3UNfnj7 Pythonとかあれタプル+単一じゃね?
662デフォルトの名無しさん
2017/08/09(水) 20:19:16.67ID:jK6ObLbS +演算子をorの意味で使ってるのか?
それだとタプルを返した時は単一ということになるか
単一の意味も違うのかもしれない
それだとタプルを返した時は単一ということになるか
単一の意味も違うのかもしれない
663デフォルトの名無しさん
2017/08/09(水) 20:44:15.24ID:h3UNfnj7 形式的にだけど、返り値はタプル一つになっていて、それを分配束縛してることになってなかったっけ?
違ったかも
違ったかも
664デフォルトの名無しさん
2017/08/09(水) 21:03:21.63ID:gdB1BRW9 んで結局、>>659はどういうのが扱いやすいと言っていたわけなの
665デフォルトの名無しさん
2017/08/09(水) 21:22:14.98ID:SHgM+TeI タプルとEitherはC言語のstructとunionに戻るようなものだからな
次世代の面子が潰れる
次世代の面子が潰れる
666デフォルトの名無しさん
2017/08/09(水) 21:38:43.55ID:cB8pPRbn goの戻り値がタプルのほうが嬉しいという気持ちはわかる。
自作の型に自由にメソッド生やせるのに、メソッドチェーンしようとした場合に、多値を返されると無理。
自作の型に自由にメソッド生やせるのに、メソッドチェーンしようとした場合に、多値を返されると無理。
667デフォルトの名無しさん
2017/08/09(水) 22:04:04.13ID:ZSp2lruc >>666
golangは本当メソッドチェーンが出来ないよな
golangは本当メソッドチェーンが出来ないよな
668デフォルトの名無しさん
2017/08/09(水) 22:51:13.67ID:cB8pPRbn まぁそういう弱点ありつつもgoは嫌いじゃないんだけどね。
エコシステムの部分とか。
import文にgithubのurl?を書けたり。
標準ライブラリのコードが自然に見にいけるから書いている最中も勉強になるし、標準ライブラリが教科書的な役割をはたしてくれたり。
コードフォーマットが標準装備で言語仕様的に制約が強いから構文規約は一つしかないところとか。
と言いつつも他の言語を見て羨ましくもあり。もっと関数型チックになってほしいけど無理かな。
エコシステムの部分とか。
import文にgithubのurl?を書けたり。
標準ライブラリのコードが自然に見にいけるから書いている最中も勉強になるし、標準ライブラリが教科書的な役割をはたしてくれたり。
コードフォーマットが標準装備で言語仕様的に制約が強いから構文規約は一つしかないところとか。
と言いつつも他の言語を見て羨ましくもあり。もっと関数型チックになってほしいけど無理かな。
669デフォルトの名無しさん
2017/08/09(水) 23:57:18.80ID:ECmmt/Ev メソッドチェーンが遺物だと気づけw
Goは意図的にメソッドチェーン出来ないようにしてるんだ
Goは意図的にメソッドチェーン出来ないようにしてるんだ
670デフォルトの名無しさん
2017/08/10(木) 00:20:35.92ID:eLvHxdUn パイプライン演算子の便利さを考えるとメソッドチェーンもそこまで悪くない気もするが、使い方次第かねえ
671デフォルトの名無しさん
2017/08/10(木) 01:03:52.42ID:BXUbqcL4 パイプカットでGo
672デフォルトの名無しさん
2017/08/10(木) 01:40:12.18ID:+tFBM5sG パイプラインの方が柔軟性高くていいよね
do_something foo |> lambda x => x + other_fun bar |> ...
みたいな前の戻り値のメソッドに限定しない書き方ができる
これをもっと楽にするような記法、例えばパイプラインの式中のアンダースコアは前の値とする、みたいなのがあると嬉しい
上のやつと等価だったらdo_something foo |> _ + other_fun bar |> ... みたいな
do_something foo |> lambda x => x + other_fun bar |> ...
みたいな前の戻り値のメソッドに限定しない書き方ができる
これをもっと楽にするような記法、例えばパイプラインの式中のアンダースコアは前の値とする、みたいなのがあると嬉しい
上のやつと等価だったらdo_something foo |> _ + other_fun bar |> ... みたいな
673デフォルトの名無しさん
2017/08/10(木) 01:51:16.15ID:eLvHxdUn Juliaでそのアンダースコア議論されてて、結局実装されなかったんだよなたしか
674デフォルトの名無しさん
2017/08/10(木) 01:52:27.10ID:E9UII0hi それはおかしいでしょ
カリー化した方が自然
カリー化した方が自然
675デフォルトの名無しさん
2017/08/10(木) 01:55:26.39ID:eLvHxdUn 2番目の引数を先に埋めてアンダースコアは一番目にしたいパターンがあるので、どちらかと言うとカリー化は好きじゃないなあ。設計が悪いと言われたらそれまでだけど
Juliaの場合は多重ディスパッチを採用している関係でカリー化は諦めたっていうのもあったな
Juliaの場合は多重ディスパッチを採用している関係でカリー化は諦めたっていうのもあったな
676デフォルトの名無しさん
2017/08/10(木) 03:00:14.84ID:J41+5nHx677デフォルトの名無しさん
2017/08/10(木) 07:31:11.02ID:EsQl4Iyt 単純にノイズが増えるだろう
現実にはほとんどの関数がエラーを返す可能性を持ってるんだから、言語に織り込んでデフォルトを Error | Result とするのは悪いアイデアではない
現実にはほとんどの関数がエラーを返す可能性を持ってるんだから、言語に織り込んでデフォルトを Error | Result とするのは悪いアイデアではない
678デフォルトの名無しさん
2017/08/10(木) 08:32:51.57ID:eLvHxdUn >>676
これ実際Haskell書いてないと分からない感覚かもな
これ実際Haskell書いてないと分からない感覚かもな
679デフォルトの名無しさん
2017/08/10(木) 23:01:38.31ID:g9gtECZC (Elixirは?動的型付け言語に人権はありますか)
680デフォルトの名無しさん
2017/08/11(金) 07:15:28.72ID:VinUUXdS ほとんどの動的型言語ってそれが動的型であるメリットは特に無くて
単なる処理系実装者の怠慢でしかない
動的型言語を推すならまずはそれが動的型でなければならない理由を示すこと
単なる処理系実装者の怠慢でしかない
動的型言語を推すならまずはそれが動的型でなければならない理由を示すこと
681デフォルトの名無しさん
2017/08/11(金) 08:32:31.97ID:wS48fUKa lisp とか仕様をシンプルにできることかな。
あほみたいに仕様が膨らんで意味の分からんキャストをがばがばおこなわなきゃならん
みたいな不自然なことで生じるバグは減る。
あほみたいに仕様が膨らんで意味の分からんキャストをがばがばおこなわなきゃならん
みたいな不自然なことで生じるバグは減る。
682デフォルトの名無しさん
2017/08/11(金) 08:51:11.85ID:Pc9UeBFi >>680
怠慢に寛容になると嘘をつく人間が減るから
自分はなにもしないくせに他人の嘘をデバッグするのだけはうまい奴がいる
そういう奴がいても許されるから嘘が減る
怠慢を許さない環境では忙しくて嘘を見抜く暇もないから嘘が蔓延する
怠慢に寛容になると嘘をつく人間が減るから
自分はなにもしないくせに他人の嘘をデバッグするのだけはうまい奴がいる
そういう奴がいても許されるから嘘が減る
怠慢を許さない環境では忙しくて嘘を見抜く暇もないから嘘が蔓延する
683デフォルトの名無しさん
2017/08/11(金) 08:56:57.66ID:wWK8j68x そもそも型が必要な理由が分からん。
数学なら「整数型のxが・・・」なんて言わないしな。
「ここでxは整数とする」はあるけど、条件に過ぎないし。
リストやタプルも分ける必要ある?
数学なら「整数型のxが・・・」なんて言わないしな。
「ここでxは整数とする」はあるけど、条件に過ぎないし。
リストやタプルも分ける必要ある?
684デフォルトの名無しさん
2017/08/11(金) 10:46:48.12ID:4bbWTV9L 372仕様書無しさん2017/08/11(金) 10:31:43.41
フリーランスで検索すると引っかかる零細ITがやっているサイトだめだ。
高額に見せているけど実際は50万前後
JIET加入した方がいいよ。案件は毎日千件以上末端価格は60万円 平凡な稼働時間の80万円の案件もある。
ユー子が求人をだしてる。名刺も渡せる。ユー子に名刺を渡せるんだぞ。夢のようだ
それらの案件まさぐってHPで転売していたのが零細ITがやるフリーランスサイト
フリーランスで検索すると引っかかる零細ITがやっているサイトだめだ。
高額に見せているけど実際は50万前後
JIET加入した方がいいよ。案件は毎日千件以上末端価格は60万円 平凡な稼働時間の80万円の案件もある。
ユー子が求人をだしてる。名刺も渡せる。ユー子に名刺を渡せるんだぞ。夢のようだ
それらの案件まさぐってHPで転売していたのが零細ITがやるフリーランスサイト
685デフォルトの名無しさん
2017/08/11(金) 11:00:48.00ID:HT0ZPb79686デフォルトの名無しさん
2017/08/11(金) 11:17:57.35ID:Dik+7mIk 動的型の問題って関数のインターフェースがガバガバなところでしょ?
elixirはパターンマッチで結構制約できるから動的だからって卑下する必要ないのよ
elixirはパターンマッチで結構制約できるから動的だからって卑下する必要ないのよ
687デフォルトの名無しさん
2017/08/11(金) 11:44:41.66ID:23hvE/8L688デフォルトの名無しさん
2017/08/11(金) 11:59:08.49ID:wWK8j68x689デフォルトの名無しさん
2017/08/11(金) 12:01:25.46ID:u64fZ1yg 申し訳ないが未だに使っているGPUの多い単精度小数点DisはNG
690デフォルトの名無しさん
2017/08/11(金) 15:03:12.85ID:Pc9UeBFi691デフォルトの名無しさん
2017/08/11(金) 15:39:55.52ID:Dik+7mIk TypeScript触ってるとjsに型がある方が幸せだってわかる。
jsonにスキーマ設定無しで
reduxでstate管理するのとか絶望する。
あと、学習面でも明らかに型があったほうが幸せ。書いてる端から指摘してくれるからすごく幸せ。
TypeScriptはvscodeとセットで幸せー
jsonにスキーマ設定無しで
reduxでstate管理するのとか絶望する。
あと、学習面でも明らかに型があったほうが幸せ。書いてる端から指摘してくれるからすごく幸せ。
TypeScriptはvscodeとセットで幸せー
692デフォルトの名無しさん
2017/08/11(金) 15:58:37.67ID:uuzmQ1J4 >>688
今言ってる片野必要性は容量のためじゃないだろ
全ての引数をテストするとすると1bit減ることでテストの数が半数になる実装もその1bitに対して考える必要がなくなる
例えばルートを計算する関数を実装するのに引数が正の整数と限定されてれば簡単だが、負だったり小数した場合は複雑になる。文字列や画像だった場合は例外が発生したりアボートしたり誤作動するかも知れない。
型はビジネスロジックに集中するためのルール、制約だ
静的は言語レベルで強制、チェックしてて、動的ではユーザ、実行時に任せてる
今言ってる片野必要性は容量のためじゃないだろ
全ての引数をテストするとすると1bit減ることでテストの数が半数になる実装もその1bitに対して考える必要がなくなる
例えばルートを計算する関数を実装するのに引数が正の整数と限定されてれば簡単だが、負だったり小数した場合は複雑になる。文字列や画像だった場合は例外が発生したりアボートしたり誤作動するかも知れない。
型はビジネスロジックに集中するためのルール、制約だ
静的は言語レベルで強制、チェックしてて、動的ではユーザ、実行時に任せてる
693デフォルトの名無しさん
2017/08/11(金) 18:06:45.60ID:wS48fUKa 関数の引数なんかはやっぱ型があった方が読みやすいなと思う。
でも内部のテンポラリ変数なんかは別にいらんかもね。
というかテンポラリ変数の型情報がないと読めないようなコードは
そもそもコードが長すぎるとか、他の根本的な部分に問題がある気がする。
でも内部のテンポラリ変数なんかは別にいらんかもね。
というかテンポラリ変数の型情報がないと読めないようなコードは
そもそもコードが長すぎるとか、他の根本的な部分に問題がある気がする。
694デフォルトの名無しさん
2017/08/11(金) 19:32:48.58ID:L+PB1ux2695デフォルトの名無しさん
2017/08/11(金) 19:36:48.30ID:L+PB1ux2696デフォルトの名無しさん
2017/08/11(金) 21:54:24.08ID:3dMix9dV 世界で最も使われている西京言語JavaScriptをディスってんのかメーン
697デフォルトの名無しさん
2017/08/11(金) 22:53:04.88ID:HT0ZPb79 西京漬けいいよね
698デフォルトの名無しさん
2017/08/11(金) 23:18:20.12ID:Dik+7mIk 最近はtypescriptが流行っていてな
699デフォルトの名無しさん
2017/08/12(土) 08:33:13.28ID:Uq7dQQ/j700デフォルトの名無しさん
2017/08/12(土) 09:39:33.11ID:DS1jvWO1 次世代言語を語りたければ、今流行ってる言語の分析をしないと
Java、C#、C/C++が人気だけど
Java、C#、C/C++が人気だけど
701デフォルトの名無しさん
2017/08/12(土) 11:11:20.00ID:Uq7dQQ/j WindowsとLinuxのAPIが人気
Javaは大規模開発が云々で人気
Javaは大規模開発が云々で人気
702デフォルトの名無しさん
2017/08/12(土) 11:28:39.85ID:lZqlh0rm Java系は一貫した技術の枠内で一通り完結するのがメリット
アプリケーションロジックの開発に集中できる
アプリケーションロジックの開発に集中できる
703デフォルトの名無しさん
2017/08/12(土) 13:00:05.73ID:Uq7dQQ/j マクロはズルってのと同じで枠の外にあるものはズルなんだな
704デフォルトの名無しさん
2017/08/12(土) 13:36:29.79ID:D9kn9WR2 しかし結局欲しいのはマクロでしょ?ってなることは結構ある。
705デフォルトの名無しさん
2017/08/12(土) 14:15:33.93ID:bnRf3zzW706デフォルトの名無しさん
2017/08/12(土) 14:17:29.71ID:bnRf3zzW C#は良い言語だと思うよ
パターンマッチが追加されたりifが式になったりで便利になってきてるし
パターンマッチが追加されたりifが式になったりで便利になってきてるし
707デフォルトの名無しさん
2017/08/12(土) 14:20:25.35ID:D9kn9WR2 .NET依存が激しいのが好きじゃない
708デフォルトの名無しさん
2017/08/12(土) 14:22:40.68ID:ahseiZ+6 >>707
なぜ?
なぜ?
709デフォルトの名無しさん
2017/08/12(土) 14:26:21.46ID:Z/LzjBMS 事実上Windowsでしか動かねーやん
話にならんわ
話にならんわ
710デフォルトの名無しさん
2017/08/12(土) 14:29:29.00ID:ahseiZ+6 >>709
いつの時代の話だよwww
いつの時代の話だよwww
711デフォルトの名無しさん
2017/08/12(土) 14:31:48.99ID:Z/LzjBMS .net coreはまだプロダクションで使うのは怖いだろ
仮にそこ乗り越えたとしても、C#だと結局開発はVS最強なんだから窓開発になる
仮にそこ乗り越えたとしても、C#だと結局開発はVS最強なんだから窓開発になる
712デフォルトの名無しさん
2017/08/12(土) 14:32:59.46ID:bnRf3zzW .NET CoreだけじゃなくてMonoもあるぞ
713デフォルトの名無しさん
2017/08/12(土) 14:38:41.45ID:ahseiZ+6714デフォルトの名無しさん
2017/08/12(土) 14:39:29.47ID:ahseiZ+6 (新しいことを学ぶのが)怖いってことだな
715デフォルトの名無しさん
2017/08/12(土) 14:46:02.46ID:bnRf3zzW .NET Standardってなんや
716デフォルトの名無しさん
2017/08/12(土) 14:47:02.12ID:zLZ79VVH 見事にオープンソースとクラウドの時代を代表するリーダーの一人として転身を果たしたMS
存在感を失い続けるIBMとオラクル
そう考えるとJavaは疫病神なのではないか
存在感を失い続けるIBMとオラクル
そう考えるとJavaは疫病神なのではないか
717デフォルトの名無しさん
2017/08/12(土) 14:51:47.74ID:ahseiZ+6 >>715
Fullの.NET FrameworkやMono、.NET Coreがそれぞれ実装すべきAPIを定めたもの
Fullの.NET FrameworkやMono、.NET Coreがそれぞれ実装すべきAPIを定めたもの
718デフォルトの名無しさん
2017/08/12(土) 14:53:12.33ID:n0XoXOKh LinuxのMonoっていい感じなん?
719デフォルトの名無しさん
2017/08/12(土) 14:54:08.03ID:ahseiZ+6 >>716
こないだのPaketの件といい、.NET CoreからFullの.NET Frameworkの一方的な切り捨てと言い、コミュニティをないがしろにしてちょいちょい炎上してるけどな
こないだのPaketの件といい、.NET CoreからFullの.NET Frameworkの一方的な切り捨てと言い、コミュニティをないがしろにしてちょいちょい炎上してるけどな
720デフォルトの名無しさん
2017/08/12(土) 18:22:00.10ID:D9kn9WR2 こういう妄信タイプがいるから
環境依存言語は嫌なんだよ。
環境依存言語は嫌なんだよ。
721デフォルトの名無しさん
2017/08/12(土) 19:44:58.81ID:8N+UUpIY 今じゃもう.NETを忌避するほうが逆に宗教みたいになってるよな
722デフォルトの名無しさん
2017/08/12(土) 20:00:15.90ID:2/FX67Cg .NETはまだまだ環境の問題もあるからともかく、
MSだからという理由でMSのプロダクトが開発者に嫌われることは少なくなったね
マカーがMS製のエディタでMS製の言語でプログラミングしてそれをMSのクラウドプラットフォーム上でホストされてるLinuxへデプロイするとか 一昔前ならあり得ない未来だった
MSだからという理由でMSのプロダクトが開発者に嫌われることは少なくなったね
マカーがMS製のエディタでMS製の言語でプログラミングしてそれをMSのクラウドプラットフォーム上でホストされてるLinuxへデプロイするとか 一昔前ならあり得ない未来だった
723デフォルトの名無しさん
2017/08/12(土) 20:03:25.03ID:DE4QKP9/ Monoで動いているものは結構色々あるはず
例えば3DGameEngineのUnityはC#で開発できるけど裏でMonoが動いてる
マルチプラットフォームな開発環境であるXamarinもMonoを使ってる。
知らないうちに.Netは大半のプラットフォームで動くように。
例えば3DGameEngineのUnityはC#で開発できるけど裏でMonoが動いてる
マルチプラットフォームな開発環境であるXamarinもMonoを使ってる。
知らないうちに.Netは大半のプラットフォームで動くように。
724デフォルトの名無しさん
2017/08/12(土) 20:10:51.11ID:A/BCmj8c 完全マカー依存のスーウィフトはどうなりましたか(小声)
725デフォルトの名無しさん
2017/08/12(土) 20:19:13.69ID:953va2dM .NETはLLVMつかってネイティブ化する計画なかったのか
726デフォルトの名無しさん
2017/08/12(土) 20:24:30.75ID:DE4QKP9/ 実際のところ.Netを選ぶメリットって何かあるのかな?
マルチプラットフォームならtypescriptとelectron、もしくはreact nativeで良い気がするけど。
マルチプラットフォームならtypescriptとelectron、もしくはreact nativeで良い気がするけど。
727デフォルトの名無しさん
2017/08/12(土) 20:25:59.19ID:953va2dM 現行、LLVMの使用はLinux、Macのみらしいが原理としてLLVMが動くすべてのOSでネイティブコンパイルできるのでは?
実際動かしてないし間違えてるかも。
性能を強化した「.NET Core 1.1」が公開 2016年11月21日
米Microsoftは11月16日、「.NET Core 1.1」を公開した。性能が強化されたほか、対応するLinuxディストリビューションも拡大した。
最新版では対応するディストリビューションを拡大し、Linux Mint 18、OpenSUSE 42.1、macOS 10.12、Windows Server 2016で利用できるようになった。
macOS 10.12とWindows Server 2016については、.NET Core 1.0も利用できる。
Linux向け、Mac向けでは、CoreCLRをClang/LLVMでコンパイルするため、次のリリースでClang版のPGOをサポートする予定としている。
https://mag.osdn.jp/16/11/21/154500
実際動かしてないし間違えてるかも。
性能を強化した「.NET Core 1.1」が公開 2016年11月21日
米Microsoftは11月16日、「.NET Core 1.1」を公開した。性能が強化されたほか、対応するLinuxディストリビューションも拡大した。
最新版では対応するディストリビューションを拡大し、Linux Mint 18、OpenSUSE 42.1、macOS 10.12、Windows Server 2016で利用できるようになった。
macOS 10.12とWindows Server 2016については、.NET Core 1.0も利用できる。
Linux向け、Mac向けでは、CoreCLRをClang/LLVMでコンパイルするため、次のリリースでClang版のPGOをサポートする予定としている。
https://mag.osdn.jp/16/11/21/154500
728デフォルトの名無しさん
2017/08/12(土) 20:33:46.06ID:D9kn9WR2 まあ実際使ってみると右往左往することになるわけだが。
「互換性」あるってセールストークに馬鹿みたいに引っかかりすぎなんだよ。
「互換性」あるってセールストークに馬鹿みたいに引っかかりすぎなんだよ。
729デフォルトの名無しさん
2017/08/12(土) 20:36:01.39ID:Dx69QmpS730デフォルトの名無しさん
2017/08/12(土) 20:42:05.60ID:953va2dM こういう流れらしい。
.NET Coreとは? 2017年6月6日
.NET Coreがリリースされて約1年経ち、ようやくビルドツールも正式版としてリリースされるに至った。
本連載記事では、「Linuxを中心にクロスプラットフォームで開発できる.NET Core」という視点で、開発の方法を説明していきたい。
.NET Coreの歴史
Windows上でのみ動作する.NET Frameworkは、2002年に最初に登場して以来、バージョンアップを重ねてきた。
それに対し、Windows・Linux・macOSで動作するクロスプラットフォームな.NET Coreが発表されたのが、2014年11月12日のことである。
このとき、今までWindowsのみをサポート対象としてきた.NETが、LinuxやmacOSもサポート対象としたことに加えて、最初からGitHubでオープンソースとして公開されたことにも驚きがあった。
クロスプラットフォームを動作環境とすることに関しては、Monoプロジェクトという先人がいた。
Monoプロジェクトは.NET Frameworkの互換環境をLinuxやmacOSを含めたスマートフォンOSにすることを目標としており、その中にはGUIフレームワークも含まれている。
Monoプロジェクトは現在、Xamarin社が開発・サポートをしており、スマートフォン向けのクロスプラットフォーム開発環境であるXamarinブランドの製品を提供している。
そのXamarin社が、2016年にMicrosoft社に買収されて今に至っている。
Monoが.NET Frameworkそのものと互換性のある環境を目指していることに対し、.NET Coreは.NET Frameworkのサブセットとなる機能をクロスプラットフォームで提供することを目標としたわけである。
そして、.NET Coreの発表から約1年後の2015年11月5日にRed Hat社がMicrosoft社と協力し、Red Hat Enterprise Linux上での.NETのサポートを発表した。
.NET Coreの特徴はいくつか挙げられるが、ここでは特に「クロスプラットフォーム」「オープンソース」「軽量」「フレキシブル」の4点について強調したい。
http://www.buildinsider.net/language/dotnetcore/01
.NET Coreとは? 2017年6月6日
.NET Coreがリリースされて約1年経ち、ようやくビルドツールも正式版としてリリースされるに至った。
本連載記事では、「Linuxを中心にクロスプラットフォームで開発できる.NET Core」という視点で、開発の方法を説明していきたい。
.NET Coreの歴史
Windows上でのみ動作する.NET Frameworkは、2002年に最初に登場して以来、バージョンアップを重ねてきた。
それに対し、Windows・Linux・macOSで動作するクロスプラットフォームな.NET Coreが発表されたのが、2014年11月12日のことである。
このとき、今までWindowsのみをサポート対象としてきた.NETが、LinuxやmacOSもサポート対象としたことに加えて、最初からGitHubでオープンソースとして公開されたことにも驚きがあった。
クロスプラットフォームを動作環境とすることに関しては、Monoプロジェクトという先人がいた。
Monoプロジェクトは.NET Frameworkの互換環境をLinuxやmacOSを含めたスマートフォンOSにすることを目標としており、その中にはGUIフレームワークも含まれている。
Monoプロジェクトは現在、Xamarin社が開発・サポートをしており、スマートフォン向けのクロスプラットフォーム開発環境であるXamarinブランドの製品を提供している。
そのXamarin社が、2016年にMicrosoft社に買収されて今に至っている。
Monoが.NET Frameworkそのものと互換性のある環境を目指していることに対し、.NET Coreは.NET Frameworkのサブセットとなる機能をクロスプラットフォームで提供することを目標としたわけである。
そして、.NET Coreの発表から約1年後の2015年11月5日にRed Hat社がMicrosoft社と協力し、Red Hat Enterprise Linux上での.NETのサポートを発表した。
.NET Coreの特徴はいくつか挙げられるが、ここでは特に「クロスプラットフォーム」「オープンソース」「軽量」「フレキシブル」の4点について強調したい。
http://www.buildinsider.net/language/dotnetcore/01
731デフォルトの名無しさん
2017/08/12(土) 21:41:47.95ID:49AswPag >>726
過去の膨大な資産(負の遺産とも言う)
過去の膨大な資産(負の遺産とも言う)
732デフォルトの名無しさん
2017/08/12(土) 23:44:55.22ID:CJUJVgQO 南シナ海に中国が基地作ってるよね。
だいたいそんな感想
だいたいそんな感想
733デフォルトの名無しさん
2017/08/13(日) 00:09:25.46ID:5ZVaRTG/734デフォルトの名無しさん
2017/08/13(日) 00:14:48.70ID:gYyecbpL >>733
VS for Macは?
VS for Macは?
735デフォルトの名無しさん
2017/08/13(日) 00:21:36.37ID:LJmg41iW typescriptがMs製なのは知ってるよ。
そして素晴らしいのはtsserverを同梱してること。
言語自体にリファクタリングや定義箇所への参照機能等ideに必要な機能を同梱させたんだよね。
この仕様をlanguage server protocolとして標準化しようとしてるのも素晴しい。
ide側で言語仕様を把握する必要がなくなり、上記のプロトコルを解釈する機構を用意しておけばいい。
そして素晴らしいのはtsserverを同梱してること。
言語自体にリファクタリングや定義箇所への参照機能等ideに必要な機能を同梱させたんだよね。
この仕様をlanguage server protocolとして標準化しようとしてるのも素晴しい。
ide側で言語仕様を把握する必要がなくなり、上記のプロトコルを解釈する機構を用意しておけばいい。
736デフォルトの名無しさん
2017/08/13(日) 00:25:12.33ID:LJmg41iW ぜひともlanguage server protocolを言語側で用意するのを必須にしてほしい。
新興言語ほど補完機能が弱いことが多いから。goの補完が効くようになったのもここ二年くらいからだったし。
新興言語ほど補完機能が弱いことが多いから。goの補完が効くようになったのもここ二年くらいからだったし。
737デフォルトの名無しさん
2017/08/13(日) 00:28:03.98ID:5ZVaRTG/ マルチプラットフォームの夢も分かるけど、現実的じゃないんだよね。。。
一個のOSでさえバージョン違いで互換性崩れるのに、それを複数とか。
現実的にはテストの都合でプラットフォームもバージョンもグッと絞らないと死ねる。
一個のOSでさえバージョン違いで互換性崩れるのに、それを複数とか。
現実的にはテストの都合でプラットフォームもバージョンもグッと絞らないと死ねる。
738デフォルトの名無しさん
2017/08/13(日) 00:53:43.57ID:47VquCRx MSはLinuxの技術者が食いついてきたらLinuxがクソになってきたので独自拡張LinuxまたはWindowsのみのサポートにしますって言って利益をあげるんだろ
知ってるんだから
知ってるんだから
739デフォルトの名無しさん
2017/08/13(日) 00:57:05.96ID:PA7iDDOj >>730
これアレじゃね?
競合しそうな会社を買って手中におさめて
コントロールするか飼い殺しにするかっていう
いつものMSじゃね?
少なくとも
>Monoプロジェクトは.NET Frameworkの互換環境をLinuxやmacOSを含めたスマートフォンOSにすることを目標としており、
>その中にはGUIフレームワークも含まれている。
の部分はもはや怪しいというか
.NET Coreで行きたいんでしょ?MSは
これアレじゃね?
競合しそうな会社を買って手中におさめて
コントロールするか飼い殺しにするかっていう
いつものMSじゃね?
少なくとも
>Monoプロジェクトは.NET Frameworkの互換環境をLinuxやmacOSを含めたスマートフォンOSにすることを目標としており、
>その中にはGUIフレームワークも含まれている。
の部分はもはや怪しいというか
.NET Coreで行きたいんでしょ?MSは
740デフォルトの名無しさん
2017/08/13(日) 01:07:45.53ID:WE0t0sIJ いやXamarinって普通に成功してるからね
741デフォルトの名無しさん
2017/08/13(日) 01:08:09.23ID:utxqr9MB linuxでVS使わせてくれればマルチプラットフォームなんてどうでもいい
742デフォルトの名無しさん
2017/08/13(日) 01:22:18.67ID:GoIJeqVQ 次世代言語ってなんなんだ?
Cの次世代言語がC++だと言われれば納得できる
c++の次世代言語がjavaだと言われればちょっと首を傾げながら納得する
javaやc#などの次世代言語が Go Rust Scala Haskellだと言われたら
全く納得できない
Cの次世代言語がC++だと言われれば納得できる
c++の次世代言語がjavaだと言われればちょっと首を傾げながら納得する
javaやc#などの次世代言語が Go Rust Scala Haskellだと言われたら
全く納得できない
743デフォルトの名無しさん
2017/08/13(日) 01:49:44.40ID:PA7iDDOj そりゃそうだ
次世代というなら、シェアをひっくり返すかトントンぐらいまで行かないと
次世代とは言えない
というか、そういう状況にならないと
業界が何となく全体的に次世代に移った、とは言えない
なら次世代とは何なんだ、「世代」とは何なんだ
来もしないであろう架空の未来のことを
「次世代」と言っても仕方がないではないか
C++の次世代という触れ込みだったD言語は言語仕様的にはそうかもしれないが
全然普及しなかったからC++の次世代だ!っつってもふ〜んって感じだし
そんな「世代」は来なかった、って感じ
次世代というなら、シェアをひっくり返すかトントンぐらいまで行かないと
次世代とは言えない
というか、そういう状況にならないと
業界が何となく全体的に次世代に移った、とは言えない
なら次世代とは何なんだ、「世代」とは何なんだ
来もしないであろう架空の未来のことを
「次世代」と言っても仕方がないではないか
C++の次世代という触れ込みだったD言語は言語仕様的にはそうかもしれないが
全然普及しなかったからC++の次世代だ!っつってもふ〜んって感じだし
そんな「世代」は来なかった、って感じ
744デフォルトの名無しさん
2017/08/13(日) 01:52:23.84ID:PA7iDDOj 結局はJava、C#、C++などの現世代の王道言語が順当にバージョンアップして
移行が行われたら、その地点が「次世代」って事になる
移行が行われたら、その地点が「次世代」って事になる
745デフォルトの名無しさん
2017/08/13(日) 03:22:34.66ID:xz6n1XH5 互換性のためだけのレガシー構文が積み重なるわ不自然な拡張方法になるわ
で最終的にperl5みたいな「これでなければなんでもいい」になるんですね?
で最終的にperl5みたいな「これでなければなんでもいい」になるんですね?
746デフォルトの名無しさん
2017/08/13(日) 06:40:32.63ID:LJmg41iW 構造化プログラミング -> オブジェクト指向 って進化は基本的に
制約をきつくしていく傾向だよね
だから次世代はもっときつくなる。
多分参照型の消滅が次世代の考え方になるのかなと思う。
次世代っていうか関数型の話だけど。
参照型って結局ポインタ型つまり機械語にかなりよった概念だと思う。
これのせいで値の比較とかが難しくなる
インスタンスの内容が同じなのに == で評価したら不一致。みたいな。
参照型って結局メモリ節約のシンプルな解決方法にすぎない。
Immutable.jsとかみてると内部構造をメモリ節約できる仕組みにして隠蔽するとこで表向きは値型にしてる。こういうことができるんだから全部値型で構わない。
制約をきつくしていく傾向だよね
だから次世代はもっときつくなる。
多分参照型の消滅が次世代の考え方になるのかなと思う。
次世代っていうか関数型の話だけど。
参照型って結局ポインタ型つまり機械語にかなりよった概念だと思う。
これのせいで値の比較とかが難しくなる
インスタンスの内容が同じなのに == で評価したら不一致。みたいな。
参照型って結局メモリ節約のシンプルな解決方法にすぎない。
Immutable.jsとかみてると内部構造をメモリ節約できる仕組みにして隠蔽するとこで表向きは値型にしてる。こういうことができるんだから全部値型で構わない。
747デフォルトの名無しさん
2017/08/13(日) 10:11:59.72ID:Zj27tgiX748デフォルトの名無しさん
2017/08/13(日) 10:17:24.38ID:amPCS2qv 俺はもうscript系の言語はbashとpythonでいいわ。
749デフォルトの名無しさん
2017/08/13(日) 11:19:43.08ID:VdRm1Qc9 >>745
そこである程度整理したら perl6 になったんだけども・・・
そこである程度整理したら perl6 になったんだけども・・・
750デフォルトの名無しさん
2017/08/13(日) 11:50:48.27ID:Zj27tgiX シェルスクリプト系はカーネルにフリーライドしているくせに
そのことを全く気に病む様子がない
Java系は自己完結とかOSを作りたいとか自分自身をコンパイルしたいとか煩悩が多い
そのことを全く気に病む様子がない
Java系は自己完結とかOSを作りたいとか自分自身をコンパイルしたいとか煩悩が多い
751デフォルトの名無しさん
2017/08/13(日) 21:20:50.78ID:7Wtpo09/ 未だにペェ〜ルとかいう真性糞ゴミをひり出してる糞製造器は死ね
死ね
死ね
752デフォルトの名無しさん
2017/08/13(日) 22:30:38.39ID:ZLPpL5wN753デフォルトの名無しさん
2017/08/13(日) 23:57:03.38ID:7Wtpo09/ くっさいシェル芸してる汚物製造器は死ね
死ね
死ね
754デフォルトの名無しさん
2017/08/14(月) 05:55:23.82ID:92xt4hcL Mono(.NET)と、.NET Coreの用途の違いは、すでに100%.NET環境が移植できていれば.NET Coreの出番はないはずだが。
そうではない環境では、その環境を構築なしに移植できるってことか。
C#のコードをLLVMのアセンブラに翻訳したらあとは既存LLVMに丸投げできるから、移植コストは低く共通化できる。
そうではない環境では、その環境を構築なしに移植できるってことか。
C#のコードをLLVMのアセンブラに翻訳したらあとは既存LLVMに丸投げできるから、移植コストは低く共通化できる。
755デフォルトの名無しさん
2017/08/14(月) 08:53:13.99ID:+p07mcQa \______ _______________________/
○
O モワモワ
o
∧_∧! ハッ! / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
___( ゜∀゜)_ < という夢を見たんだ
| 〃( つ つ | \________
|\ ⌒⌒⌒⌒⌒⌒\
| \^ ⌒ ⌒ \
\ |⌒⌒⌒⌒⌒⌒|
\ |.________|
○
O モワモワ
o
∧_∧! ハッ! / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
___( ゜∀゜)_ < という夢を見たんだ
| 〃( つ つ | \________
|\ ⌒⌒⌒⌒⌒⌒\
| \^ ⌒ ⌒ \
\ |⌒⌒⌒⌒⌒⌒|
\ |.________|
756デフォルトの名無しさん
2017/08/14(月) 09:01:00.79ID:l9TYt/P3 >>754
.NET CoreはCLR自体をアプリに同梱するように作られていて、AOTコンパイルではない
LLVM対応もJITをLLVMで実装しようというものに過ぎず、あくまでコンパイルはJIT
Coreは基本的にWebサーバー用だから少々起動に時間がかかろうが全く問題にならない
.NET CoreはCLR自体をアプリに同梱するように作られていて、AOTコンパイルではない
LLVM対応もJITをLLVMで実装しようというものに過ぎず、あくまでコンパイルはJIT
Coreは基本的にWebサーバー用だから少々起動に時間がかかろうが全く問題にならない
757デフォルトの名無しさん
2017/08/14(月) 09:32:55.89ID:92xt4hcL こんなのでてきた
Microsoft、C++技術で.NET Core 2の高速化実現 [2017/07/22]
Microsoftは7月20日(米国時間)、.NET Core 2.0で採用されている高速化技術「PGO (Profile-Guided Optimization )」について伝えた。
この技術はC++コンパイラでより最適化されたコードを生成するために使われているネイティブコンパイラ技術。
.NET Core 2.0にも同様の技術が適用されており、すべてのユーザは特定の処理をすることなくこの高速化技術の恩恵を受けていると説明している。
http://n.mynv.jp/news/2017/07/22/096/images/001l.jpg
http://n.mynv.jp/news/2017/07/22/096/images/002l.jpg
http://news.mynavi.jp/news/2017/07/22/096/
Microsoft、LLVMベースの.NET/CoreCLRコンパイラLLILCを発表
2015年5月6日
.NET FoundationがLLILCという新しいプロジェクトのリリースを発表した。
このプロジェクトはもともとMicrosoftによるもので、.NET Coreのための新しいLLVMベースのネイティブコードコンパイラを提供することを目的としている。
これによって「CoreCLRが移植されていてLLVMがターゲットとしているプラットフォーム上で」.NETプログラムを動かせるようになる。
LLILCのロードマップによると、Install-Time JITコンパイラが次のターゲットだ。「これは生成されたコードを、
1つのアプリケーションの複数の呼び出しの間で、または1つのアセンブリセットを共有する複数のプロセスの間で共有できるようにする」。LLILCプロジェクトでは、Ahead-Of-Timeコンパイラの実装も検討している。
https://www.infoq.com/jp/news/2015/05/microsoft-llilc-llvm-compiler
Microsoft、C++技術で.NET Core 2の高速化実現 [2017/07/22]
Microsoftは7月20日(米国時間)、.NET Core 2.0で採用されている高速化技術「PGO (Profile-Guided Optimization )」について伝えた。
この技術はC++コンパイラでより最適化されたコードを生成するために使われているネイティブコンパイラ技術。
.NET Core 2.0にも同様の技術が適用されており、すべてのユーザは特定の処理をすることなくこの高速化技術の恩恵を受けていると説明している。
http://n.mynv.jp/news/2017/07/22/096/images/001l.jpg
http://n.mynv.jp/news/2017/07/22/096/images/002l.jpg
http://news.mynavi.jp/news/2017/07/22/096/
Microsoft、LLVMベースの.NET/CoreCLRコンパイラLLILCを発表
2015年5月6日
.NET FoundationがLLILCという新しいプロジェクトのリリースを発表した。
このプロジェクトはもともとMicrosoftによるもので、.NET Coreのための新しいLLVMベースのネイティブコードコンパイラを提供することを目的としている。
これによって「CoreCLRが移植されていてLLVMがターゲットとしているプラットフォーム上で」.NETプログラムを動かせるようになる。
LLILCのロードマップによると、Install-Time JITコンパイラが次のターゲットだ。「これは生成されたコードを、
1つのアプリケーションの複数の呼び出しの間で、または1つのアセンブリセットを共有する複数のプロセスの間で共有できるようにする」。LLILCプロジェクトでは、Ahead-Of-Timeコンパイラの実装も検討している。
https://www.infoq.com/jp/news/2015/05/microsoft-llilc-llvm-compiler
758デフォルトの名無しさん
2017/08/14(月) 13:38:56.86ID:kXWZXT9S759デフォルトの名無しさん
2017/08/14(月) 13:42:18.27ID:kXWZXT9S >>742
世間で言われてる分類で言えば全部第3世代言語だからな
他でドヤ顔で言ったら恥ずかしいぞ
第4世代はユーザが使う言語
JavaはC++--って言われるくらいで先進性よりも普及を重視してたんだろ
今はもう滅茶苦茶だが
でC++++でC#と
世間で言われてる分類で言えば全部第3世代言語だからな
他でドヤ顔で言ったら恥ずかしいぞ
第4世代はユーザが使う言語
JavaはC++--って言われるくらいで先進性よりも普及を重視してたんだろ
今はもう滅茶苦茶だが
でC++++でC#と
760デフォルトの名無しさん
2017/08/14(月) 14:14:03.57ID:C7avT2pN 次世代はサービスインテグレーションのための超高レベル言語だろうな
ドメインスペシャリストと開発者の間の垣根を無くすことと、強力なサービス連携がポイントだと思う
ドメインスペシャリストと開発者の間の垣根を無くすことと、強力なサービス連携がポイントだと思う
761デフォルトの名無しさん
2017/08/14(月) 17:00:35.75ID:s23IFiwR >>759
そういう意味不明などやりかたされてもwwww
このスレでは誰もそんなくくりの話はしてない
第四世代言語(4GL)がなぜ次世代なんだかわからん
4GL
https://ja.wikipedia.org/wiki/4GL
SQL、R言語、RPG-IIの話なんて誰もしてない
そういう意味不明などやりかたされてもwwww
このスレでは誰もそんなくくりの話はしてない
第四世代言語(4GL)がなぜ次世代なんだかわからん
4GL
https://ja.wikipedia.org/wiki/4GL
SQL、R言語、RPG-IIの話なんて誰もしてない
762デフォルトの名無しさん
2017/08/14(月) 17:26:17.70ID:6DHdEZEL 3.9GL
763デフォルトの名無しさん
2017/08/14(月) 17:28:12.75ID:wnsRSkHP でもまぁ方向性としてはありかと。
結局プログラミング言語ってツールなわけだから
何かに特化したほうが仕事はやりやすくなる。
DB設計したらwebAPIの定義と処理が自動実装されるようなDSLとか欲しい。
golangのgoaとかAPI設計からGoのコードを自動設定するから近いっちゃ近いけど
DB周りとの連携はまだイマイチかなと。
結局プログラミング言語ってツールなわけだから
何かに特化したほうが仕事はやりやすくなる。
DB設計したらwebAPIの定義と処理が自動実装されるようなDSLとか欲しい。
golangのgoaとかAPI設計からGoのコードを自動設定するから近いっちゃ近いけど
DB周りとの連携はまだイマイチかなと。
764デフォルトの名無しさん
2017/08/14(月) 17:38:46.17ID:kXWZXT9S765デフォルトの名無しさん
2017/08/14(月) 19:20:45.04ID:Ib/9zFrg 自動でコード出力する系は嫌い
改造するの面倒だし
マクロみたいなのが好き
改造するの面倒だし
マクロみたいなのが好き
766デフォルトの名無しさん
2017/08/14(月) 19:42:20.23ID:O7NIduQl Excelからコードを自動生成するPHPのプロジェクトがあったなそういえば
767デフォルトの名無しさん
2017/08/14(月) 20:03:07.27ID:ysNMGCND コード生成系は出力先が機械だから手加減しない感じがあるからね。。
768デフォルトの名無しさん
2017/08/14(月) 22:37:21.06ID:wnsRSkHP でもgoaは割ときれいなコード書いてくれるから、結構勉強になるし、生成ファイルとは別ファイルにして動作をカスタマイズする前提だから、
マクロとそんなに変わらないと思う。
マクロよりマジック感が減るから処理を追いやすいし
マクロとそんなに変わらないと思う。
マクロよりマジック感が減るから処理を追いやすいし
769デフォルトの名無しさん
2017/08/14(月) 22:47:09.43ID:kXWZXT9S コード出力ってそのあと追記とかするの?
戻れなくないか
いっそバイナリ吐いてくれた方がよくないか
戻れなくないか
いっそバイナリ吐いてくれた方がよくないか
770デフォルトの名無しさん
2017/08/14(月) 22:55:39.38ID:O7NIduQl 糞バカペチプァにそんな知能あるわけないだろ
やつら、次に食べる飯と寝ることくらいしか頭に入らない小頭症のガイジだからね
やつら、次に食べる飯と寝ることくらいしか頭に入らない小頭症のガイジだからね
771デフォルトの名無しさん
2017/08/14(月) 23:04:29.33ID:W13Bw/D1772デフォルトの名無しさん
2017/08/15(火) 00:47:06.80ID:Iy2AbH2m773デフォルトの名無しさん
2017/08/15(火) 00:48:49.86ID:Iy2AbH2m774デフォルトの名無しさん
2017/08/15(火) 02:11:40.42ID:ucbHC/q/ まあいろいろな環境でも動かしたいとかいう理由で出力したソースを
コミットすることもあるけど、あんまりいいことないよ。。おすすめしない。
コミットすることもあるけど、あんまりいいことないよ。。おすすめしない。
775デフォルトの名無しさん
2017/08/15(火) 05:31:41.09ID:tN8D0FqC >>769
もちろん生成コードとは別ファイルにカスタマイズコードを書くよ。
だからgitの管理対象外にするのが普通。
ただ、俺はあえて管理対象にしてるけどね。設計変更したときに自動生成コードがどんな変更をしたかわかりやすい。
マクロ系だとこういう部分が隠蔽されてると考えることができる。
デコレータとかもそうだよね。
goはジェネリクスとかマクロがない代わりにコード生成を推奨してる言語と言えるね。
最初は後退した言語だと思ったけど
コード生成と衝突しない書き方ができるから、マクロとかで裏でどういうコードが生成されているかを把握できる言語と考えれば悪くないなと感じてる。
もちろん生成コードとは別ファイルにカスタマイズコードを書くよ。
だからgitの管理対象外にするのが普通。
ただ、俺はあえて管理対象にしてるけどね。設計変更したときに自動生成コードがどんな変更をしたかわかりやすい。
マクロ系だとこういう部分が隠蔽されてると考えることができる。
デコレータとかもそうだよね。
goはジェネリクスとかマクロがない代わりにコード生成を推奨してる言語と言えるね。
最初は後退した言語だと思ったけど
コード生成と衝突しない書き方ができるから、マクロとかで裏でどういうコードが生成されているかを把握できる言語と考えれば悪くないなと感じてる。
776あ
2017/08/15(火) 10:52:42.87ID:acuW3DAP phpバカにしまくる奴が疑問。
言語としてはまあボロボロだけどnginxとphp-fpmより安定したサーバ書けるの?って聞くと黙ったり、
過去、ひどいコード書いたとか、ひどいコードの保守したとしか考えられん。
言語としてはまあボロボロだけどnginxとphp-fpmより安定したサーバ書けるの?って聞くと黙ったり、
過去、ひどいコード書いたとか、ひどいコードの保守したとしか考えられん。
777デフォルトの名無しさん
2017/08/15(火) 11:04:03.16ID:WUz8q6HI nginxとphp-fpmより安定したサーバ書けるの?という質問が意味不明で黙るしかないよw
778デフォルトの名無しさん
2017/08/15(火) 11:19:06.17ID:X4XuSaPF nginxはC++じゃね?
779デフォルトの名無しさん
2017/08/15(火) 11:23:06.67ID:WUz8q6HI そう
だから意味が分からなくて黙るしかない
だから意味が分からなくて黙るしかない
780デフォルトの名無しさん
2017/08/15(火) 12:39:40.27ID:FVgUs5AP ?黙るしかない
○相手にされてない
○相手にされてない
781あ
2017/08/15(火) 12:46:45.72ID:acuW3DAP782デフォルトの名無しさん
2017/08/15(火) 12:58:02.24ID:jWNRWc6a783あ
2017/08/15(火) 13:02:18.16ID:acuW3DAP >>782
そうでもないよ。普通にいわゆるSSIみたいな形で動的なコンテンツ差し込むサーバも見たことあるし、
逆にPHPでも1ファイル1機能のAPIサーバと静的htmlの組み合わせも見たことある。
後者とは競合すると思うんだが。
そうでもないよ。普通にいわゆるSSIみたいな形で動的なコンテンツ差し込むサーバも見たことあるし、
逆にPHPでも1ファイル1機能のAPIサーバと静的htmlの組み合わせも見たことある。
後者とは競合すると思うんだが。
784デフォルトの名無しさん
2017/08/15(火) 13:20:01.29ID:X4XuSaPF nginxが実用に耐えない…?
普通につかってるが…
普通につかってるが…
785デフォルトの名無しさん
2017/08/15(火) 13:45:53.21ID:C4ChKb28 発達の相手すんな
786デフォルトの名無しさん
2017/08/15(火) 13:46:49.20ID:HWb5gMTo このクソコテガイジだからな
787デフォルトの名無しさん
2017/08/15(火) 13:48:14.36ID:HWb5gMTo 前スレ
918 :あ :2017/05/31(水) 11:10:55.99 ID:dc+IbjjD
>>916
子供作るときに一通りそういう気質があるか調べてもらったが、幸いながらアスペではなかったぞ。
残念ながら多動はあった。
918 :あ :2017/05/31(水) 11:10:55.99 ID:dc+IbjjD
>>916
子供作るときに一通りそういう気質があるか調べてもらったが、幸いながらアスペではなかったぞ。
残念ながら多動はあった。
788あ
2017/08/15(火) 13:58:19.02ID:acuW3DAP789デフォルトの名無しさん
2017/08/15(火) 14:00:11.08ID:HWb5gMTo あガイのガイ
790デフォルトの名無しさん
2017/08/15(火) 14:04:48.52ID:X4XuSaPF まるでphpなら、それらがいらないかのような口ぶり
791あ
2017/08/15(火) 14:34:08.47ID:acuW3DAP >>790
リバースプロキシは要るだろうが、その裏に立てるのもphp-fpmなりなんなりの、それなりに枯れたもので、スクラッチせんで良いでしょ。
リバースプロキシは要るだろうが、その裏に立てるのもphp-fpmなりなんなりの、それなりに枯れたもので、スクラッチせんで良いでしょ。
792あ
2017/08/15(火) 14:35:20.41ID:acuW3DAP 他の言語が優れてるのも認めるし、phpがポンコツなのも認めるが、
それ以上に自分で書いたサーバはあてにならん。
それ以上に自分で書いたサーバはあてにならん。
793デフォルトの名無しさん
2017/08/15(火) 14:49:11.64ID:IlJmfBT9 そりゃ君がPHPなんか使ってるからだろう
スクラッチといったって既存のライブラリを使うわけだし、
そのライブラリがnginxに比べて枯れてないことが大きな問題になるほどHTTPサーバーなんて高度なもんじゃないぞ?
スクラッチといったって既存のライブラリを使うわけだし、
そのライブラリがnginxに比べて枯れてないことが大きな問題になるほどHTTPサーバーなんて高度なもんじゃないぞ?
794デフォルトの名無しさん
2017/08/15(火) 15:24:31.13ID:IlJmfBT9 あと、今時は静的コンテンツの配信やパスベースのルーティング、SSLなど
Webサーバーの多くの機能をクラウドプラットフォームに任せてしまうから、アプリから独立したWebサーバーの必要性は低下している
もちろんガイジの主張においてnginxがクラウドプラットフォームに置き換わっただけであることは認めるけどね
Webサーバーの多くの機能をクラウドプラットフォームに任せてしまうから、アプリから独立したWebサーバーの必要性は低下している
もちろんガイジの主張においてnginxがクラウドプラットフォームに置き換わっただけであることは認めるけどね
795デフォルトの名無しさん
2017/08/15(火) 16:53:16.30ID:Iy2AbH2m まあPHPを安易にバカにする奴はエアプログラマだとは思うわ
使われてるだけあって書いてくれって言われることあるし、
書いてみりゃわかるが小規模なら生産性高いからな実際
Wordpressカスタムで済ませられる案件も多いし
使われてるだけあって書いてくれって言われることあるし、
書いてみりゃわかるが小規模なら生産性高いからな実際
Wordpressカスタムで済ませられる案件も多いし
796あ
2017/08/15(火) 17:00:35.19ID:acuW3DAP797デフォルトの名無しさん
2017/08/15(火) 17:15:25.67ID:tN8D0FqC798デフォルトの名無しさん
2017/08/15(火) 17:39:47.47ID:LOEABJJK phpは人口が多くて趣味やデザイナから来た奴が多いのかレベルが低い
他の言語知らないって奴もよくいる
なのでphpの仕事はあまりしたくない
他の言語知らないって奴もよくいる
なのでphpの仕事はあまりしたくない
799デフォルトの名無しさん
2017/08/15(火) 18:10:02.06ID:tN8D0FqC800デフォルトの名無しさん
2017/08/15(火) 18:17:01.25ID:z3aL1OR7 仕事でGoつかえって言われたら苦痛だな
もっと自由にさせてくれって思う
もっと自由にさせてくれって思う
801あ
2017/08/15(火) 18:18:04.71ID:acuW3DAP802デフォルトの名無しさん
2017/08/15(火) 18:20:14.17ID:IlJmfBT9 >>798の文脈でいうならGoの仕事は悪くないと思うけどな
少なくとも秀丸で書いてFFFTPでデプロイするような奴はその職場にはいないだろう
少なくとも秀丸で書いてFFFTPでデプロイするような奴はその職場にはいないだろう
803デフォルトの名無しさん
2017/08/15(火) 20:11:04.95ID:tN8D0FqC >>802
すごいな2003年辺りで時間が止まってそう。
すごいな2003年辺りで時間が止まってそう。
804デフォルトの名無しさん
2017/08/15(火) 20:12:50.74ID:tN8D0FqC typescriptをメインに据えてる会社とかないかな。
正直typescriptであればサーバサイドjsもありな気がする。
正直typescriptであればサーバサイドjsもありな気がする。
805デフォルトの名無しさん
2017/08/15(火) 20:16:13.66ID:tN8D0FqC >>801
> 永続化考えたら少しめんどくさいから、
> リクエストに対して即結果が出せるようなものを数珠つなぎにして出せるようなものにしてるよ。
もう少し具体的に話せない?。web+dbみたいな用途では使ってないってこと?
> 永続化考えたら少しめんどくさいから、
> リクエストに対して即結果が出せるようなものを数珠つなぎにして出せるようなものにしてるよ。
もう少し具体的に話せない?。web+dbみたいな用途では使ってないってこと?
806デフォルトの名無しさん
2017/08/15(火) 20:20:01.11ID:ucbHC/q/ まあ go は書いててつまらんからって理由で却下されたことがある職場の話は
聞いたことあるな。
面白くても糞品質だったら無意味だとは思うがな。
聞いたことあるな。
面白くても糞品質だったら無意味だとは思うがな。
807デフォルトの名無しさん
2017/08/15(火) 20:22:01.18ID:+FCAaQP3 禿丸エディター
808デフォルトの名無しさん
2017/08/15(火) 20:35:24.55ID:tN8D0FqC >>806
goってつまんないかな。
俺は最初にハマったときはシンプルな構文に抑えようという心意気に感動したけどな。
例えばclassとstruct。コレってどっちかでいいよなってずっと思ってて
goはstructに絞ってくれて、コレだっ!って思った。
後構文規約問題とか。コレって最新の言語rustとかswiftとか全然気にしてないけど
goはちゃんと解決してるんだよなぁ。
あとgoroutineとか。スレッドモデルの操作ってPHPでやろうとすると凄くめんどくさくて最初にgoに触ったきっかけになった
goってつまんないかな。
俺は最初にハマったときはシンプルな構文に抑えようという心意気に感動したけどな。
例えばclassとstruct。コレってどっちかでいいよなってずっと思ってて
goはstructに絞ってくれて、コレだっ!って思った。
後構文規約問題とか。コレって最新の言語rustとかswiftとか全然気にしてないけど
goはちゃんと解決してるんだよなぁ。
あとgoroutineとか。スレッドモデルの操作ってPHPでやろうとすると凄くめんどくさくて最初にgoに触ったきっかけになった
809デフォルトの名無しさん
2017/08/15(火) 21:10:14.60ID:ucbHC/q/ >>808
個人的には別に好き嫌いはないんだけどね。
まあだいたい以下の話で説明はつくよ。くだらない話。
http://qiita.com/hirokidaichi/items/adccebb41f77eaa6132f
個人的には別に好き嫌いはないんだけどね。
まあだいたい以下の話で説明はつくよ。くだらない話。
http://qiita.com/hirokidaichi/items/adccebb41f77eaa6132f
810あ
2017/08/15(火) 21:11:54.94ID:acuW3DAP >>805
ウェブアプリとしてはあんまり使ってない。DBは必要があれば基本的には外のAPIとかDB呼んでるけど。couchか、とある階層型DBが多い。
それより、もうちょい単機能で、メモ化で済む様な処理で、さらにスケールする必要があるものが多いよ。
jsonに署名して返すとか、緯度経度から国判断して返すとか、バッチ処理でreduceの部分を一万件ずつくらい請けて結果を別のエンドポイントに投げるとか、json渡すとhtml帰ってくるとか、ほんとバックエンド。
DBのデータのマスタや、テンプレートみたいな類も、毎回要るものはそもそもソースに文字列として埋めて、DB使わんでも良いようにしてる。
ウェブアプリとしてはあんまり使ってない。DBは必要があれば基本的には外のAPIとかDB呼んでるけど。couchか、とある階層型DBが多い。
それより、もうちょい単機能で、メモ化で済む様な処理で、さらにスケールする必要があるものが多いよ。
jsonに署名して返すとか、緯度経度から国判断して返すとか、バッチ処理でreduceの部分を一万件ずつくらい請けて結果を別のエンドポイントに投げるとか、json渡すとhtml帰ってくるとか、ほんとバックエンド。
DBのデータのマスタや、テンプレートみたいな類も、毎回要るものはそもそもソースに文字列として埋めて、DB使わんでも良いようにしてる。
811あ
2017/08/15(火) 21:17:02.53ID:acuW3DAP812デフォルトの名無しさん
2017/08/15(火) 21:41:25.44ID:4yQu0hbw Goってマルチスレッド書ける?
813デフォルトの名無しさん
2017/08/15(火) 21:43:52.13ID:tN8D0FqC >>810
ほーん。いわゆるマイクロフレームワークとして使ってるってことなんね。
中小でしか働いたことがない人間には無縁臭がするなぁ
やはりgoでDB操作は避けるよね、、、。
イマイチgoでRDBMS使い勝手が良くない、、
GormっていうORMが結局いいのかなって思ったけどパラメータがinterface{}型(いわゆるany型、何でもあり型)ばかりで、これ静的型だよね?ってなるし。
RDMS操作の決定版がいまいちgoにはないよね。
>>809
goは好きだけど不満もあるのは分かる。特にジェネリクスがないから
関数パラメータにinterface{}型ばかりになると萎えてくる。
でも片っ端から言語仕様追加してダサい言語になってほしくもない。
難しいね。
ほーん。いわゆるマイクロフレームワークとして使ってるってことなんね。
中小でしか働いたことがない人間には無縁臭がするなぁ
やはりgoでDB操作は避けるよね、、、。
イマイチgoでRDBMS使い勝手が良くない、、
GormっていうORMが結局いいのかなって思ったけどパラメータがinterface{}型(いわゆるany型、何でもあり型)ばかりで、これ静的型だよね?ってなるし。
RDMS操作の決定版がいまいちgoにはないよね。
>>809
goは好きだけど不満もあるのは分かる。特にジェネリクスがないから
関数パラメータにinterface{}型ばかりになると萎えてくる。
でも片っ端から言語仕様追加してダサい言語になってほしくもない。
難しいね。
814デフォルトの名無しさん
2017/08/15(火) 22:25:15.02ID:EUsgsL74 >>798
言語仕様が糞なのに加えて、
そういう連中が積み上げてきた過去の遺産があるからね
大手のPHPプロジェクトの悲惨さはもう筆舌に尽くしがたいよ
ああいうの見るとね、冗談でもPHPは便利とか言えなくなるよw
言語仕様が糞なのに加えて、
そういう連中が積み上げてきた過去の遺産があるからね
大手のPHPプロジェクトの悲惨さはもう筆舌に尽くしがたいよ
ああいうの見るとね、冗談でもPHPは便利とか言えなくなるよw
815デフォルトの名無しさん
2017/08/15(火) 22:29:52.97ID:wXZu/4Fl 若輩俺氏、PHPを触ったことがない
PHPの仕事ってそんなにあるもんか?全く観測できん
PHPの仕事ってそんなにあるもんか?全く観測できん
816デフォルトの名無しさん
2017/08/15(火) 22:33:23.96ID:EUsgsL74 いわゆるWeb系でそう思うんなら、あんちゃんが割とええとこにいるからやな
中小奴隷売買でPHP保守のスパイラルに迷い込んだら
ほんとキャリア詰むで
中小奴隷売買でPHP保守のスパイラルに迷い込んだら
ほんとキャリア詰むで
817デフォルトの名無しさん
2017/08/15(火) 22:34:05.48ID:LbZcuCiz >>815
こないだハロワで検索したら無限に出てきたぞ
こないだハロワで検索したら無限に出てきたぞ
818デフォルトの名無しさん
2017/08/15(火) 22:44:30.92ID:wXZu/4Fl こわい
819デフォルトの名無しさん
2017/08/15(火) 22:49:36.97ID:ucbHC/q/ UIべったりな糞カスコードを保守してくれる奴隷を探してるんだろうね。。
直してくれる人をありがたく扱ってくれるならいいんだがそういうところって
本当に人間をごみカス扱いしてくるからな。
直してくれる人をありがたく扱ってくれるならいいんだがそういうところって
本当に人間をごみカス扱いしてくるからな。
820デフォルトの名無しさん
2017/08/15(火) 23:06:08.95ID:EUsgsL74 直してくれる人がありがたいだって?
余計なことして壊れたらどうするんだ?誰がテストするんだ?
大人しく今のコードを最小限のコピペで直してくれる人を求めてるんだよ、ああいうのは
余計なことして壊れたらどうするんだ?誰がテストするんだ?
大人しく今のコードを最小限のコピペで直してくれる人を求めてるんだよ、ああいうのは
821デフォルトの名無しさん
2017/08/15(火) 23:08:55.10ID:LOEABJJK 新しいサービス思いついた
自分で作れないから人を雇おう
ぺーはーぴーって開発者が工数単価安いみたいだぞ
ねえ君、ホントは自分で作りたいんだけど忙しいから依頼するよ
新しいサービス思いついた
安いホスティングサービス借りよう
PHPが使えるらしいから本買って来て作ろう
真っ白い画面しか出ない
ねえ君、ホントは自分で作りたいんだけど忙しいから依頼するよ
新しいサービス思いついた
ワイWordPressマスター
PHPでプラグインが作れるらしい
ねえ君、ホントは自分で作りたいんだけど忙しいから依頼するよ
自分で作れないから人を雇おう
ぺーはーぴーって開発者が工数単価安いみたいだぞ
ねえ君、ホントは自分で作りたいんだけど忙しいから依頼するよ
新しいサービス思いついた
安いホスティングサービス借りよう
PHPが使えるらしいから本買って来て作ろう
真っ白い画面しか出ない
ねえ君、ホントは自分で作りたいんだけど忙しいから依頼するよ
新しいサービス思いついた
ワイWordPressマスター
PHPでプラグインが作れるらしい
ねえ君、ホントは自分で作りたいんだけど忙しいから依頼するよ
822デフォルトの名無しさん
2017/08/15(火) 23:25:03.76ID:ucbHC/q/ >>820
その最小限がもうどうにもならんくらいになってるからみんな困ってんでしょうが。
てかそういう場所でまともなテストが行われてることなんてまずないけどな。
逆にテストがまともならそんな状況にはならんよ。
その最小限がもうどうにもならんくらいになってるからみんな困ってんでしょうが。
てかそういう場所でまともなテストが行われてることなんてまずないけどな。
逆にテストがまともならそんな状況にはならんよ。
823あ
2017/08/15(火) 23:59:10.86ID:acuW3DAP824デフォルトの名無しさん
2017/08/16(水) 01:07:27.27ID:DsnJQVtM825デフォルトの名無しさん
2017/08/16(水) 13:16:52.76ID:WsLhfWto 名前を言ってはいけない あ の人
826あ
2017/08/16(水) 13:36:14.43ID:d4ksVO/Z >>824
でかい所になるとそれを要求する奴が居るしね。
ただ俺も自動テストのテストは要求するし、
テスト用のクライアント一式(物理〜イントラ接続インフラ一式セットアップ〜デバッグビルド一式が配信される環境含め)を用意してくれと言われたら用意するけど、
ネゴなしにそれ以外のテスト環境でエビデンス取っても不適合でサクッと返すからなんとも言えん。
俺自身コード書いても社内では第三者に同じ事されるし割と平等かと。
これは請ける側のパワー次第だと思うよ。
1次請けが面倒くさがる会社の2次請けさんの嘆きは話は聞く事あるけど、それで1次請けに俺が何か言うと割と問題になるしな。
できることと言えば話のわかる1次の奴と2次の奴を飲みに誘う位しかできん。
でかい所になるとそれを要求する奴が居るしね。
ただ俺も自動テストのテストは要求するし、
テスト用のクライアント一式(物理〜イントラ接続インフラ一式セットアップ〜デバッグビルド一式が配信される環境含め)を用意してくれと言われたら用意するけど、
ネゴなしにそれ以外のテスト環境でエビデンス取っても不適合でサクッと返すからなんとも言えん。
俺自身コード書いても社内では第三者に同じ事されるし割と平等かと。
これは請ける側のパワー次第だと思うよ。
1次請けが面倒くさがる会社の2次請けさんの嘆きは話は聞く事あるけど、それで1次請けに俺が何か言うと割と問題になるしな。
できることと言えば話のわかる1次の奴と2次の奴を飲みに誘う位しかできん。
827デフォルトの名無しさん
2017/08/16(水) 13:51:45.97ID:3p707Jkt828あ
2017/08/16(水) 15:26:31.90ID:DRyABrqx >>827
用意するし、ヤバイから台数増やして!ってあとから言われたら、貸出機出払ってても、少なくともうち来たらテストできるようにゲストカード用意するよ。
エクセルというか文書ファイルは必要悪と言うか、製造業は「いざとなったら手でできる」にこだわる側面もあるから、チェックシートで欲しいってのもある。
その辺汲んで、自動テストのテスト仕様と、自動テストで行うテストと結果を出してくれたら無理矢理でも俺通してきた。
東日本の震災でも、九州の震災とか豪雨でも、非常事態対応しながら開発したり、そもそも対応での不整合影響範囲推定とかせなならんかったし、あれは要る。
用意するし、ヤバイから台数増やして!ってあとから言われたら、貸出機出払ってても、少なくともうち来たらテストできるようにゲストカード用意するよ。
エクセルというか文書ファイルは必要悪と言うか、製造業は「いざとなったら手でできる」にこだわる側面もあるから、チェックシートで欲しいってのもある。
その辺汲んで、自動テストのテスト仕様と、自動テストで行うテストと結果を出してくれたら無理矢理でも俺通してきた。
東日本の震災でも、九州の震災とか豪雨でも、非常事態対応しながら開発したり、そもそも対応での不整合影響範囲推定とかせなならんかったし、あれは要る。
829デフォルトの名無しさん
2017/08/16(水) 20:59:07.98ID:NyarCuNK 雑談クズが住み着いちゃったね
830デフォルトの名無しさん
2017/08/16(水) 21:42:18.26ID:79/XacN3 な? Juliaの話しようぜ?
831デフォルトの名無しさん
2017/08/16(水) 23:58:53.11ID:1tm61gk1 >>830
Pyplot と Gadfly と Winston どれがいい?
Pyplot と Gadfly と Winston どれがいい?
832デフォルトの名無しさん
2017/08/17(木) 00:19:10.91ID:RP+KduLB Winston なんかあったのかよ
俺はGadfly使ってたけど特に理由はないなあ
Pyplotも悪くはないけどなんとなく使ってなかった
俺はGadfly使ってたけど特に理由はないなあ
Pyplotも悪くはないけどなんとなく使ってなかった
833デフォルトの名無しさん
2017/08/17(木) 00:42:21.76ID:x9wW63w8 テストとか仮想環境でしかしてないわ
本番も仮想環境ばかりだけど
モノにもよるか
本番も仮想環境ばかりだけど
モノにもよるか
834デフォルトの名無しさん
2017/08/17(木) 06:59:54.30ID:vNKyeUGQ 震災が起きると動かなくなる自動テストって何だよ(驚愕)
835デフォルトの名無しさん
2017/08/17(木) 07:36:01.82ID:oMgRAJ/R 彼はADHDだから問題の切り分けが苦手なんだろう
大目に見てあげなさい
大目に見てあげなさい
836あ
2017/08/17(木) 09:00:54.38ID:FZ3wXczz837デフォルトの名無しさん
2017/08/17(木) 09:08:56.76ID:I4N//eQS838デフォルトの名無しさん
2017/08/17(木) 09:10:01.18ID:EtIXwQlG 今fortranで量子化学のプログラムのボトルネック部分書いたんだけど、バグ取りしんどいわあ。
Juliaで書けって話だけど、Juliaコードは他言語からの呼び出し微妙なんだよな
Juliaで書けって話だけど、Juliaコードは他言語からの呼び出し微妙なんだよな
839デフォルトの名無しさん
2017/08/17(木) 12:29:44.17ID:BOGxSFah840デフォルトの名無しさん
2017/08/17(木) 13:35:40.38ID:EtIXwQlG >>839
渡さないといけない波動関数情報が4GBとかになってディスク書き込みにえらい時間がかかるので、ハードディスク書き込みは最低限にしたいんだけど、なんか良い方法あるもんですか?
渡さないといけない波動関数情報が4GBとかになってディスク書き込みにえらい時間がかかるので、ハードディスク書き込みは最低限にしたいんだけど、なんか良い方法あるもんですか?
841デフォルトの名無しさん
2017/08/17(木) 14:51:29.63ID:BOGxSFah >>840
RAMディスク作るとかRAIDやクラウド使うとか
RAMディスク作るとかRAIDやクラウド使うとか
843デフォルトの名無しさん
2017/08/17(木) 18:45:53.40ID:0J2w2YFT 他言語から一番呼びやすいのは C なわけだが。
844デフォルトの名無しさん
2017/08/17(木) 19:01:21.96ID:EtIXwQlG845デフォルトの名無しさん
2017/08/18(金) 00:00:31.37ID:+7kF3zDD Cは呼びやすいっちゃ呼びやすいんだが
関数のプロトタイプもろもろがヘッダファイルで定義してあるから
ヘッダファイルの移植が面倒だなぁ
何かライブラリのインターフェースに関して
統一的なフォーマットが欲しいと思わなくもないけど
どっちにしたって関数の呼び出しに必要な構造体とかも
ヘッダファイルで定義してあるし、どうにもならないんだろうな
標準入出力でやりとりするのもタルいし
WindowsならCOMとかあるけど・・・
関数のプロトタイプもろもろがヘッダファイルで定義してあるから
ヘッダファイルの移植が面倒だなぁ
何かライブラリのインターフェースに関して
統一的なフォーマットが欲しいと思わなくもないけど
どっちにしたって関数の呼び出しに必要な構造体とかも
ヘッダファイルで定義してあるし、どうにもならないんだろうな
標準入出力でやりとりするのもタルいし
WindowsならCOMとかあるけど・・・
846デフォルトの名無しさん
2017/08/18(金) 00:04:56.58ID:YDSkJKvw てか、それくらいプリミティブな仕組みだから呼びやすいわけだ。
847あ
2017/08/18(金) 01:19:03.96ID:WQb8VpS1 >>844
中間ファイル作りながら、次工程進めれば良いのでは?って。
HDDに書き込むのはその端末自身である必要も無いだろうし、別の端末にやらせても良いかと。
teeコマンドは、標準入力からの入力を、ファイルなりなんなりと標準出力に出すコマンド
中間ファイル作りながら、次工程進めれば良いのでは?って。
HDDに書き込むのはその端末自身である必要も無いだろうし、別の端末にやらせても良いかと。
teeコマンドは、標準入力からの入力を、ファイルなりなんなりと標準出力に出すコマンド
848デフォルトの名無しさん
2017/08/18(金) 07:08:42.68ID:YaXOGzzP シミュレーションなら入力の内容は全部まとめて読むだろうからパイプを使うのはあまりメリット無いでしょ
デッドロックの原因になるから作法的にも好ましくない
単純にファイル名を起動引数で渡した方がいい
デッドロックの原因になるから作法的にも好ましくない
単純にファイル名を起動引数で渡した方がいい
849デフォルトの名無しさん
2017/08/18(金) 09:59:20.00ID:64r0PFl5851デフォルトの名無しさん
2017/08/18(金) 15:30:18.21ID:5aImaITs >>840
圧縮して書き込めば?
圧縮して書き込めば?
852デフォルトの名無しさん
2017/08/18(金) 15:56:35.28ID:64r0PFl5853デフォルトの名無しさん
2017/08/18(金) 17:29:36.01ID:5aImaITs854デフォルトの名無しさん
2017/08/18(金) 18:38:52.93ID:Rznosojv デバッグしにくい設計してしまったんだな
856デフォルトの名無しさん
2017/08/18(金) 22:15:46.41ID:64r0PFl5 何この人。結局何を伝えようとしてくれてるのか全く分からなくて怖いんだけど
857デフォルトの名無しさん
2017/08/18(金) 23:31:23.26ID:j6mLrsKq 自分の頭が混乱してるのを
2chに書き込むことで整理しようとしているだけの人だからね
2chに書き込むことで整理しようとしているだけの人だからね
858デフォルトの名無しさん
2017/08/19(土) 00:57:54.03ID:bV1JViRB つか素直にメモリ詰むかSSD買ってこいよ
それも駄目ならinplaceな方法にでも書き換えるしかない
それも駄目ならinplaceな方法にでも書き換えるしかない
859デフォルトの名無しさん
2017/08/19(土) 01:10:16.34ID:T5uwruzP キチガイが住み着くのはよくあること
860デフォルトの名無しさん
2017/08/19(土) 01:14:45.90ID:nPJhR8kx861デフォルトの名無しさん
2017/08/19(土) 01:41:53.01ID:bV1JViRB そんなにFFIが面倒ならmmapとexecとか、端的なやりようあるよ
つか俺もストリーム処理にでもした方がいいんじゃねえかと思うが
つか俺もストリーム処理にでもした方がいいんじゃねえかと思うが
862デフォルトの名無しさん
2017/08/19(土) 02:04:33.04ID:GJ9v1oeu FFIは不安定になったりビルドが面倒になったりデバッグも開発も面倒だったりで極力やりたくないわ
ファイルやパイプはもちろん、RPCやMQを使う手もある
ファイルやパイプはもちろん、RPCやMQを使う手もある
863デフォルトの名無しさん
2017/08/19(土) 11:08:22.66ID:SFm+w/sk 設定より規約ってのを実践すればFFIも面倒ではないだろう
パイプには型がないから型を宣言する設定ファイルもない
パイプには型がないから型を宣言する設定ファイルもない
864デフォルトの名無しさん
2017/08/19(土) 13:43:40.11ID:y3ZCFtJS ファイルベースだと分散処理とかクソ簡単
俺も学生時代シミュレーションやってたけどMakefileのjオプションで並列化してる人もいた
俺も学生時代シミュレーションやってたけどMakefileのjオプションで並列化してる人もいた
865デフォルトの名無しさん
2017/08/19(土) 13:58:03.00ID:h9Bm6H42 え?分散処理するならファイルシステム使うとか悪手中の悪手でしょw
866デフォルトの名無しさん
2017/08/19(土) 14:01:57.56ID:E6tSyHuQ ストリーム処理にできるかどうかって何やろうとしてるかによるでしょ
長大テキスト処理的なものかどうかはわからないのにパイプやストリームがいいって言っても意味なくない?
質問がどういうデータをどう処理するってのを専門外の人に書いてないのも返答が発散する原因の一つではあると思うけど
長大テキスト処理的なものかどうかはわからないのにパイプやストリームがいいって言っても意味なくない?
質問がどういうデータをどう処理するってのを専門外の人に書いてないのも返答が発散する原因の一つではあると思うけど
867デフォルトの名無しさん
2017/08/19(土) 14:04:50.26ID:GJ9v1oeu868デフォルトの名無しさん
2017/08/19(土) 14:14:41.27ID:GJ9v1oeu >>866
シミュレーションで波動関数情報渡すって言ってるから、
普通に考えてストリーミング処理できるようなデータではなく全部一括して扱うもんだろう
複数件のジョブをまとめてバッチとして渡してるとかなら分ける余地はあるかもしれないけど
シミュレーションで波動関数情報渡すって言ってるから、
普通に考えてストリーミング処理できるようなデータではなく全部一括して扱うもんだろう
複数件のジョブをまとめてバッチとして渡してるとかなら分ける余地はあるかもしれないけど
869デフォルトの名無しさん
2017/08/19(土) 14:18:44.31ID:VwTbQ4le 波動関数情報4GBをアップロードして、必要な分だけシーケンシャルかランダム・アクセスしたらいい
870あ
2017/08/19(土) 16:00:48.68ID:b1lc6Upk 規格化されとるならtとx1でアクセスできる方が便利では?
確率密度で欲しいならちとめんどいが。
全然ジョブ別けれると思う。
確率密度で欲しいならちとめんどいが。
全然ジョブ別けれると思う。
871デフォルトの名無しさん
2017/08/19(土) 16:06:22.01ID:Czvm/mK/ >>870
早く発電する作業に戻らないとテストできなくなるぞ
早く発電する作業に戻らないとテストできなくなるぞ
873デフォルトの名無しさん
2017/08/19(土) 16:20:38.90ID:y3ZCFtJS この人がまともに働けるってすごいことだと思う
周りの人が理解してサポートしてくれている恵まれた環境なんだろうな
周りの人が理解してサポートしてくれている恵まれた環境なんだろうな
874デフォルトの名無しさん
2017/08/19(土) 16:52:15.03ID:SFm+w/sk コミュ力と文章力はほとんど関係ない気がするので文章だけ見てもよくわからないな
875あ
2017/08/19(土) 17:57:32.52ID:b1lc6Upk876デフォルトの名無しさん
2017/08/19(土) 21:26:38.70ID:E6tSyHuQ >>868
趣味で超適当な流体シミュレーションぐらいしか作ったことないけど全部一括して扱うもんだろうという推測には同意する
たとえば画像処理でSIFTとかの特徴点抽出アルゴリズムを使いたい場合に、ストリーミングで実装することに可能性やメリットはあるのかなぁ。
なんでもかんでもストリーミングで実装して効率良くなるなら極端な話スパコンなんて要らないじゃんってことになると思うんだけど
趣味で超適当な流体シミュレーションぐらいしか作ったことないけど全部一括して扱うもんだろうという推測には同意する
たとえば画像処理でSIFTとかの特徴点抽出アルゴリズムを使いたい場合に、ストリーミングで実装することに可能性やメリットはあるのかなぁ。
なんでもかんでもストリーミングで実装して効率良くなるなら極端な話スパコンなんて要らないじゃんってことになると思うんだけど
877デフォルトの名無しさん
2017/08/19(土) 23:57:56.57ID:3LWi1RRc 直受けの50万 客:いつまでもうちにいていいよ
3次受けの50万(客は70万払ってる) 客:短期延長していい?
5次受けの50万(客は110万払ってる) 客:作り終わったらとっと出てけ できなかったら即退場だ
長時間労働 高稼働 高スキル要求が多い
零細フリーランスサイトは5次受けから誰もできない難易度の高い仕事 余り物の仕事を紹介してくる。40万円代でやってくれと
これならJIETから3次でいったほうがいいな
446非決定性名無しさん2017/08/02(水) 22:12:48.95
JIETに毎月5千円払えば3次から入場できるだろ?
高額をうたうフリーランスのサイトはだいたい5次から45万円
JIETで閲覧応募できる末端価格からさらに搾取するのが高額をみせつけるフリーランスサイトでした
高額案件をみせつけるフリーランスサイトも案件の取得はJIETでした
473非決定性名無しさん2017/08/03(木) 15:21:30.71
JIETに加入すれば誰でも3次60万からスタートだ。フリーランスのサイトをやってる
自称エージェントもそこから案件情報を取得しきてる。サイトで60万で釣って40万から55万の
間でやらしている。
372仕様書無しさん2017/08/11(金) 10:31:43.41
フリーランスで検索すると引っかかる零細ITがやっているフリーランスのサイトはだめだ。
高額に見せているけど実際は50万前後
JIET加入した方がいいよ。案件は毎日千件以上末端価格は60万円 平凡な稼働時間の80万円の案件もある。
ユー子も求人をだしてる。名刺も渡せる。ユー子に名刺が渡せるんだぞ。夢のようだ
それらの案件まさぐってHPで転売していたのが零細ITがやるフリーランスサイト
自称エージェントはJIETから流れてくる案件を転売してるだけだった。
JIETに加入すれば誰でも案件に応募することができた。収入が40万50万台にならなくて済む
3次受けの50万(客は70万払ってる) 客:短期延長していい?
5次受けの50万(客は110万払ってる) 客:作り終わったらとっと出てけ できなかったら即退場だ
長時間労働 高稼働 高スキル要求が多い
零細フリーランスサイトは5次受けから誰もできない難易度の高い仕事 余り物の仕事を紹介してくる。40万円代でやってくれと
これならJIETから3次でいったほうがいいな
446非決定性名無しさん2017/08/02(水) 22:12:48.95
JIETに毎月5千円払えば3次から入場できるだろ?
高額をうたうフリーランスのサイトはだいたい5次から45万円
JIETで閲覧応募できる末端価格からさらに搾取するのが高額をみせつけるフリーランスサイトでした
高額案件をみせつけるフリーランスサイトも案件の取得はJIETでした
473非決定性名無しさん2017/08/03(木) 15:21:30.71
JIETに加入すれば誰でも3次60万からスタートだ。フリーランスのサイトをやってる
自称エージェントもそこから案件情報を取得しきてる。サイトで60万で釣って40万から55万の
間でやらしている。
372仕様書無しさん2017/08/11(金) 10:31:43.41
フリーランスで検索すると引っかかる零細ITがやっているフリーランスのサイトはだめだ。
高額に見せているけど実際は50万前後
JIET加入した方がいいよ。案件は毎日千件以上末端価格は60万円 平凡な稼働時間の80万円の案件もある。
ユー子も求人をだしてる。名刺も渡せる。ユー子に名刺が渡せるんだぞ。夢のようだ
それらの案件まさぐってHPで転売していたのが零細ITがやるフリーランスサイト
自称エージェントはJIETから流れてくる案件を転売してるだけだった。
JIETに加入すれば誰でも案件に応募することができた。収入が40万50万台にならなくて済む
878デフォルトの名無しさん
2017/08/20(日) 01:15:26.57ID:r7P84g+k879デフォルトの名無しさん
2017/08/20(日) 01:31:48.22ID:PUhzCj71880デフォルトの名無しさん
2017/08/20(日) 01:39:16.53ID:PUhzCj71 あと、>>876が言ってるスパコン云々は
データをストリーミング処理できるということはすなわちデータ件数に対して線形時間で処理できるということを意味する
全ての問題がそうだったら世の中に重い処理なんか存在しないからスパコンなんか要らないよね?ということだと思う
データをストリーミング処理できるということはすなわちデータ件数に対して線形時間で処理できるということを意味する
全ての問題がそうだったら世の中に重い処理なんか存在しないからスパコンなんか要らないよね?ということだと思う
881デフォルトの名無しさん
2017/08/20(日) 01:46:50.23ID:r7P84g+k882デフォルトの名無しさん
2017/08/20(日) 01:50:05.35ID:r7P84g+k883デフォルトの名無しさん
2017/08/20(日) 02:00:28.35ID:r7P84g+k いや、これ本人がマウントしてんのかな…
884デフォルトの名無しさん
2017/08/20(日) 04:44:52.46ID:HvheRl8w >>876だけど元の質問してる人とは別人だよ。
ストリーミング処理って普通は大きなデータをストリームで流して一部だけ処理していくことで大きなデータを全部オンメモリにしなくても処理できるから嬉しいよねっていうことで
ストリームに対して処理する実装のことを指すと思うんだけど。
元々の話はFortranはデバッグがきついからJuliaで書きたいけどデータの受け渡しイマイチだし他にいい方法あるか?って話だと思うのでリソースを削ろうって話ではないと思う
ただ、データが4GBとデカいんでmemcpyとかディスク書き込みとかは明らかなメリットがなければしたくないっていうだけの話で
そもそもメモリ転送だけストリームっていうのは、ストリーム処理と言えるのかな?そして、本来はメモリ転送も無い方がいいに決まってるので。
スパコンの例はまさに>>880の言ってるとおり。物理現象の時間発展をシミュレーションすることが目的のプログラミングなんかは瞬間瞬間のデータ全部が相互に影響を与えあっているような
モデルを用いて実装されるだろうから、全部がオンメモリでランダムアクセス可能でなきゃそもそも実現が難しいと思うのよ。今見える範囲だけ処理するというストリーミングのやり方では原則的にはうまくいかないと思う。
ストリーミング処理って普通は大きなデータをストリームで流して一部だけ処理していくことで大きなデータを全部オンメモリにしなくても処理できるから嬉しいよねっていうことで
ストリームに対して処理する実装のことを指すと思うんだけど。
元々の話はFortranはデバッグがきついからJuliaで書きたいけどデータの受け渡しイマイチだし他にいい方法あるか?って話だと思うのでリソースを削ろうって話ではないと思う
ただ、データが4GBとデカいんでmemcpyとかディスク書き込みとかは明らかなメリットがなければしたくないっていうだけの話で
そもそもメモリ転送だけストリームっていうのは、ストリーム処理と言えるのかな?そして、本来はメモリ転送も無い方がいいに決まってるので。
スパコンの例はまさに>>880の言ってるとおり。物理現象の時間発展をシミュレーションすることが目的のプログラミングなんかは瞬間瞬間のデータ全部が相互に影響を与えあっているような
モデルを用いて実装されるだろうから、全部がオンメモリでランダムアクセス可能でなきゃそもそも実現が難しいと思うのよ。今見える範囲だけ処理するというストリーミングのやり方では原則的にはうまくいかないと思う。
885デフォルトの名無しさん
2017/08/20(日) 05:41:57.25ID:r7P84g+k 文脈が違うから違う結論になっただけと言ってるのに、なぜくどくど説明したがるのか…
まず最初から素直にtmpfsでも高速なSSDでも使えばすぐ済む話
まさかそれすら最初から思いつかないってことはないだろう
でもグダグダ言ってるんだから、代わりにメモリや高速ストレージに金やリソース割くのが無理って事だろ
なら共有メモリにでもするか、処理単位を分けストリーム処理でもしろって話
で、ほしい処理主体がストリームじゃなかろうが割当は細く切り出しながら渡す必要あるから、どう言い繕ったってストリーム化だよ
いちいち言葉尻につっかかるあたりマウントしたいだけだろうが
まず最初から素直にtmpfsでも高速なSSDでも使えばすぐ済む話
まさかそれすら最初から思いつかないってことはないだろう
でもグダグダ言ってるんだから、代わりにメモリや高速ストレージに金やリソース割くのが無理って事だろ
なら共有メモリにでもするか、処理単位を分けストリーム処理でもしろって話
で、ほしい処理主体がストリームじゃなかろうが割当は細く切り出しながら渡す必要あるから、どう言い繕ったってストリーム化だよ
いちいち言葉尻につっかかるあたりマウントしたいだけだろうが
886デフォルトの名無しさん
2017/08/20(日) 06:26:59.79ID:Adwommj8887デフォルトの名無しさん
2017/08/20(日) 08:00:42.48ID:XzNX7+yk で、それのどこが次世代言語なの?
888デフォルトの名無しさん
2017/08/20(日) 09:02:07.47ID:02zgg1Cu 話は変わるけどFFIやRPCなどのインターフェイスを抽象化して多言語で共通に使える仕組みがあればいいのに
ThriftやgRPCみたいなのはサービスとして動かさなきゃいけないし、
Javaや.NETみたいなのは理想だけど仮想マシンに縛られるし
ThriftやgRPCみたいなのはサービスとして動かさなきゃいけないし、
Javaや.NETみたいなのは理想だけど仮想マシンに縛られるし
889デフォルトの名無しさん
2017/08/20(日) 11:14:26.93ID:cXtFYNrL なんだかんだ言ってjs or TypeScriptが最強な気がする
機械学習すら手軽に始められる言語になり始めてるし
https://pair-code.github.io/deeplearnjs/
ここ最近のES2015以降言語仕様の進化はいい方向に進んでいるし
パターンマッチングとか入り始めたらマジでこれでいいってなりそう。
機械学習すら手軽に始められる言語になり始めてるし
https://pair-code.github.io/deeplearnjs/
ここ最近のES2015以降言語仕様の進化はいい方向に進んでいるし
パターンマッチングとか入り始めたらマジでこれでいいってなりそう。
890デフォルトの名無しさん
2017/08/20(日) 11:15:55.74ID:cXtFYNrL jsonをインターフェースとして考えるならjs
891デフォルトの名無しさん
2017/08/20(日) 11:36:57.11ID:m8177A+a 周辺のエコシステムがちっともエコじゃない
ボイラプレート使わないと、めんどくさすぎてまずスタートラインにすら立てないという
おにちく仕様
ちゅか、フロタイプかタイプスクリプトを標準にしろ
生JSはできない
ボイラプレート使わないと、めんどくさすぎてまずスタートラインにすら立てないという
おにちく仕様
ちゅか、フロタイプかタイプスクリプトを標準にしろ
生JSはできない
892デフォルトの名無しさん
2017/08/20(日) 13:16:38.54ID:IkwItTHK ここまで次世代言語の議論なし
893あ
2017/08/20(日) 14:05:20.43ID:wfThuXaW894デフォルトの名無しさん
2017/08/20(日) 14:40:01.39ID:856Qy56L ハイパーテキストじゃなくてもhttpプロトコルだしな。
895デフォルトの名無しさん
2017/08/20(日) 16:38:15.82ID:HvheRl8w >>885
「処理単位を分けられる処理」なのかは把握した上でストリーム化を勧めてるんだったらわかる。
質問者の望む処理がそういう処理だと思ったってことである程度どうやって分割するかも予想がついた上でストリーム処理にした方がいいって言ったってことだよね?
マウンティングとかじゃなくてさ、問題を的確に把握する前にアドバイスしたってしょうがないだろって思ってるだけだよ。
「処理単位を分けられる処理」なのかは把握した上でストリーム化を勧めてるんだったらわかる。
質問者の望む処理がそういう処理だと思ったってことである程度どうやって分割するかも予想がついた上でストリーム処理にした方がいいって言ったってことだよね?
マウンティングとかじゃなくてさ、問題を的確に把握する前にアドバイスしたってしょうがないだろって思ってるだけだよ。
896デフォルトの名無しさん
2017/08/20(日) 17:02:53.59ID:zvlsjK6m >>888
結局、各言語でメモリの取り扱いが異なるわけだから、.NET みたいなことする以外に
解決方法なんてないだろう。
メモリの取り扱いを抽象化するってのはどうしたって結局のところ性能的に無理が生じる。
結局、各言語でメモリの取り扱いが異なるわけだから、.NET みたいなことする以外に
解決方法なんてないだろう。
メモリの取り扱いを抽象化するってのはどうしたって結局のところ性能的に無理が生じる。
897デフォルトの名無しさん
2017/08/20(日) 19:08:10.98ID:2qDLsNd9 847 あ[sage] 2017/08/18(金) 01:19:03.96 ID:WQb8VpS1
>>844
中間ファイル作りながら、次工程進めれば良いのでは?って。
HDDに書き込むのはその端末自身である必要も無いだろうし、別の端末にやらせても良いかと。
teeコマンドは、標準入力からの入力を、ファイルなりなんなりと標準出力に出すコマンド
849 デフォルトの名無しさん[sage] 2017/08/18(金) 09:59:20.00 ID:64r0PFl5
841が非常に適切なアドバイスをくれたから、俺の書き込みでも割と通じてるんだと思ったけど、
844、847には通じてなさそうな気がする
848には通じてる
850 あ[sage] 2017/08/18(金) 13:16:32.57 ID:WQb8VpS1
通じてるよ。ただファイルで渡しても良いけど、出来上がった暁には全部流したいだろうなと思ったんだが。
852 デフォルトの名無しさん[sage] 2017/08/18(金) 15:56:35.28 ID:64r0PFl5
流す?よく分からんけど、FFIの代わりの話ししてるのになんで標準出力にもHDDにも出すことになってるんだ??????
855 あ[sage] 2017/08/18(金) 21:59:17.07 ID:WQb8VpS1
標準出力とは限らんよ。
だからtee「的」と言ってるんだが。
856 デフォルトの名無しさん[sage] 2017/08/18(金) 22:15:46.41 ID:64r0PFl5
何この人。結局何を伝えようとしてくれてるのか全く分からなくて怖いんだけど
明らかに話が噛み合っていないのに「通じてるよ」とか、855の受け答えとか、話し通じないガイジ丸出しで大変面白い
>>844
中間ファイル作りながら、次工程進めれば良いのでは?って。
HDDに書き込むのはその端末自身である必要も無いだろうし、別の端末にやらせても良いかと。
teeコマンドは、標準入力からの入力を、ファイルなりなんなりと標準出力に出すコマンド
849 デフォルトの名無しさん[sage] 2017/08/18(金) 09:59:20.00 ID:64r0PFl5
841が非常に適切なアドバイスをくれたから、俺の書き込みでも割と通じてるんだと思ったけど、
844、847には通じてなさそうな気がする
848には通じてる
850 あ[sage] 2017/08/18(金) 13:16:32.57 ID:WQb8VpS1
通じてるよ。ただファイルで渡しても良いけど、出来上がった暁には全部流したいだろうなと思ったんだが。
852 デフォルトの名無しさん[sage] 2017/08/18(金) 15:56:35.28 ID:64r0PFl5
流す?よく分からんけど、FFIの代わりの話ししてるのになんで標準出力にもHDDにも出すことになってるんだ??????
855 あ[sage] 2017/08/18(金) 21:59:17.07 ID:WQb8VpS1
標準出力とは限らんよ。
だからtee「的」と言ってるんだが。
856 デフォルトの名無しさん[sage] 2017/08/18(金) 22:15:46.41 ID:64r0PFl5
何この人。結局何を伝えようとしてくれてるのか全く分からなくて怖いんだけど
明らかに話が噛み合っていないのに「通じてるよ」とか、855の受け答えとか、話し通じないガイジ丸出しで大変面白い
899デフォルトの名無しさん
2017/08/20(日) 23:05:46.98ID:yNKc7CAF 会話ができてないお前がいうか?
900デフォルトの名無しさん
2017/08/20(日) 23:36:43.04ID:m8177A+a 単発のお前がいうか?
901デフォルトの名無しさん
2017/08/21(月) 00:48:06.97ID:COEoTBs8 >>895
そちらの言い分は分かるが、俺の言いたい事は違うよ
分割の話はFFIを界面にしてる点を取っ掛かりに言ったに過ぎない
不明な仕様という点を踏まえて、より一般化したの代替の提案してるだけ
要するに言外の事に突っ込んだ話はしてません
そちらの言い分は分かるが、俺の言いたい事は違うよ
分割の話はFFIを界面にしてる点を取っ掛かりに言ったに過ぎない
不明な仕様という点を踏まえて、より一般化したの代替の提案してるだけ
要するに言外の事に突っ込んだ話はしてません
902デフォルトの名無しさん
2017/08/21(月) 00:52:50.95ID:ogLdY0/a このスピードのスレで単発煽りとか、普段はID真っ赤のガイジですって自己紹介してるようなもんじゃん……
903デフォルトの名無しさん
2017/08/21(月) 02:03:36.52ID:sjKZo8mX904デフォルトの名無しさん
2017/08/21(月) 03:02:40.94ID:eGD2En39 俺たちのスピードについてこれない香具師がいるようだね
905デフォルトの名無しさん
2017/08/21(月) 22:30:29.02ID:UGhNsUQ+ いつまでストリームのはなししてるの。
ストリームならRxだろjk
ストリームならRxだろjk
906デフォルトの名無しさん
2017/08/22(火) 00:33:08.71ID:9GD6qpN2 ワイはBlackRx
907デフォルトの名無しさん
2017/08/22(火) 11:49:00.34ID:i6ZzO263 光のオーロラ身に纏い
君は闘う人になれ
傷つことを恐れたら
世界は悪の手に沈む
ネットバトラー爆誕である
君は闘う人になれ
傷つことを恐れたら
世界は悪の手に沈む
ネットバトラー爆誕である
908デフォルトの名無しさん
2017/08/22(火) 11:54:49.36ID:wr0MW0qV909デフォルトの名無しさん
2017/08/22(火) 16:38:49.34ID:WO9jjhJ1 名古屋から山口組の6代目が出たんだし、SKEにも頑張ってほしい
◆AKBは近代ヤクザのシステムを導入しているとしか思えない◆
http://robo-mae.com/2017/06/20/
なんか本職のヤクザ?が書いてる裏事情ブログでおもろいから読んでるんだけど、
ぽいけどこの記事だけ的確過ぎて笑ってしまった。
この人は結構ヲタなんだろうけど、組内では内緒にしてるのかな?
◆AKBは近代ヤクザのシステムを導入しているとしか思えない◆
http://robo-mae.com/2017/06/20/
なんか本職のヤクザ?が書いてる裏事情ブログでおもろいから読んでるんだけど、
ぽいけどこの記事だけ的確過ぎて笑ってしまった。
この人は結構ヲタなんだろうけど、組内では内緒にしてるのかな?
910あ
2017/08/22(火) 20:55:51.79ID:5SSOVQI8 パイプとかRPCでやるなら、
プロセスAがデータ作り終わったら、
プロセスAがデータを一定量、プロセスBに送って、
プロセスBはそれを受けてバッファに置いて、
プロセスAは送った分、確実にメモリを開放して、
全部送り終わったらEOF送って、
プロセスBはEOFで走り出せばいいんじゃないの?
その送受信フックしといたら、プロセスBだけもう一回走らせるのも簡単だし、別の計算機でプロセスB動かすのも簡単だし、エビデンスにもなるのでは?
プロセスAがデータ作り終わったら、
プロセスAがデータを一定量、プロセスBに送って、
プロセスBはそれを受けてバッファに置いて、
プロセスAは送った分、確実にメモリを開放して、
全部送り終わったらEOF送って、
プロセスBはEOFで走り出せばいいんじゃないの?
その送受信フックしといたら、プロセスBだけもう一回走らせるのも簡単だし、別の計算機でプロセスB動かすのも簡単だし、エビデンスにもなるのでは?
911あ
2017/08/22(火) 20:57:28.90ID:5SSOVQI8 全部送り終わったら、のところ、全部送り終わってなければ、また「一定量送って」にループね。
912デフォルトの名無しさん
2017/08/22(火) 21:45:32.91ID:3dDtZQan913あ
2017/08/22(火) 22:19:18.76ID:5SSOVQI8 >>912
Fortranなら、allocatableで宣言して、allocateで適当な「一度の量」単位で確保して使って、送ったらdeallocateで開放すりゃいいんじゃないの?
pointerで宣言してるならちと考え方変えねばならんかもしれんが。
あと尻から送ったほうが良いかも。
GCある言語だったら開放待ち作らなきゃなんともならんな。
Fortranなら、allocatableで宣言して、allocateで適当な「一度の量」単位で確保して使って、送ったらdeallocateで開放すりゃいいんじゃないの?
pointerで宣言してるならちと考え方変えねばならんかもしれんが。
あと尻から送ったほうが良いかも。
GCある言語だったら開放待ち作らなきゃなんともならんな。
914デフォルトの名無しさん
2017/08/23(水) 19:38:39.70ID:C10WJIyJ >>912
mallocじゃなくてシステムコール使う
mallocじゃなくてシステムコール使う
915デフォルトの名無しさん
2017/08/24(木) 03:36:25.37ID:89P6VciC 久しぶりに覗いてみたらまだこの基〇外いたんだwww
俺が勉強している間も遊んでいる間も色々している間もずっと書き込んでいたんだねww
俺が勉強している間も遊んでいる間も色々している間もずっと書き込んでいたんだねww
916デフォルトの名無しさん
2017/08/24(木) 07:01:09.06ID:plP2PBjy まろ〜く
917あ
2017/08/24(木) 12:57:45.68ID:aPple+DF 勉強したり遊んだり仕事したり2chに書き込んだりしてるだけだがなぁ。
一度に1つの事しか出来ないんだろうか。
一度に1つの事しか出来ないんだろうか。
918デフォルトの名無しさん
2017/08/24(木) 13:06:05.45ID:CU8adGcb この基地外の収容所と化したからな。このスレは
919あ
2017/08/24(木) 13:10:59.72ID:aPple+DF 賑やかしでいいんじゃないの?
黙ってたら進まんかHaskell信者が踊り狂うスレなんだし。キャットドア()の検証()するスレで良いの?
あと、そもそも盛り上がってたら静観してあんまり書かんぞ。
黙ってたら進まんかHaskell信者が踊り狂うスレなんだし。キャットドア()の検証()するスレで良いの?
あと、そもそも盛り上がってたら静観してあんまり書かんぞ。
920デフォルトの名無しさん
2017/08/24(木) 13:23:19.75ID:PzOnmf2Y 結局Haskell最強ってなるの。
正直あんまり仕事で使ってる感じしないけど。
なんか研究者が戯れに使う感じ。そもそも何に向いてる言語なのhaskellって
正直あんまり仕事で使ってる感じしないけど。
なんか研究者が戯れに使う感じ。そもそも何に向いてる言語なのhaskellって
921デフォルトの名無しさん
2017/08/24(木) 13:28:16.99ID:0Cezav5n エンジニアガイジ再訪。Part4より
905 :デフォルトの名無しさん:2017/05/31(水) 06:14:00.96 ID:wEozaoTa
>>879
では、具体的にGHCが実行時型情報を必要とするケースを挙げてみろよ。
言っておくが、パラメトリック多相は全てコンパイル時に解決されるし、
型クラスによるアドホック多相も、あれは関数オーバーロードの形式化だからな。
関数オーバーロードはコンパイル時に解決されるぞ。
さあ、具体的に挙げてみろよ。
908 :あ:2017/05/31(水) 09:15:21.09 ID:dc+IbjjD
>>905
具体的に上げろと言われてもなぁ。
<T>を持ったenumがOptionかcar(T)とcdr(<T,T>)である時くらいかな。
905 :デフォルトの名無しさん:2017/05/31(水) 06:14:00.96 ID:wEozaoTa
>>879
では、具体的にGHCが実行時型情報を必要とするケースを挙げてみろよ。
言っておくが、パラメトリック多相は全てコンパイル時に解決されるし、
型クラスによるアドホック多相も、あれは関数オーバーロードの形式化だからな。
関数オーバーロードはコンパイル時に解決されるぞ。
さあ、具体的に挙げてみろよ。
908 :あ:2017/05/31(水) 09:15:21.09 ID:dc+IbjjD
>>905
具体的に上げろと言われてもなぁ。
<T>を持ったenumがOptionかcar(T)とcdr(<T,T>)である時くらいかな。
922デフォルトの名無しさん
2017/08/24(木) 13:32:07.62ID:z+OCxOWy923デフォルトの名無しさん
2017/08/24(木) 18:31:02.84ID:IR7qYp4l キャットドアって何?
924デフォルトの名無しさん
2017/08/24(木) 19:43:58.38ID:EpnGEQYH >>920
結論は「〜言語最強」とか言ってる輩は馬鹿ってことかな。
結論は「〜言語最強」とか言ってる輩は馬鹿ってことかな。
925デフォルトの名無しさん
2017/08/24(木) 21:27:56.58ID:LiUup8WI >>924
まぁ向き不向きの問題ってことかね。
haskellはバリデーションチェック系が得意っていうのはやっぱりパターンマッチングで宣言的にかけるからってことなのかね。
パターンマッチングはrustとかelixirとかでもできるわけだから
haskellじゃなきゃダメってことはなさそう。
まぁ向き不向きの問題ってことかね。
haskellはバリデーションチェック系が得意っていうのはやっぱりパターンマッチングで宣言的にかけるからってことなのかね。
パターンマッチングはrustとかelixirとかでもできるわけだから
haskellじゃなきゃダメってことはなさそう。
926デフォルトの名無しさん
2017/08/24(木) 21:34:11.83ID:LoTTLSP4 いやHaskellのが楽
RustなどにQuickTestのようなものはない
RustなどにQuickTestのようなものはない
927デフォルトの名無しさん
2017/08/24(木) 21:34:48.48ID:LoTTLSP4 QuickCheckだ間違えた
928デフォルトの名無しさん
2017/08/25(金) 00:50:39.84ID:KCgpTMlD ある。使ったことは無いがhttps://github.com/BurntSushi/quickcheck
ただRustの型システムはHaskellより貧弱だし、最初からメモリについて意識しないとプログラムが動かない
Haskellで作ったプロトタイプをRustで書き直して速度を稼ぐのはアリ
ただRustの型システムはHaskellより貧弱だし、最初からメモリについて意識しないとプログラムが動かない
Haskellで作ったプロトタイプをRustで書き直して速度を稼ぐのはアリ
929デフォルトの名無しさん
2017/08/25(金) 06:00:59.36ID:xDVMzM02 >>928
めちゃくちゃ冗長だねこれ…
めちゃくちゃ冗長だねこれ…
930デフォルトの名無しさん
2017/08/25(金) 11:10:28.70ID:Yqz1DVXO 暗黙の型変換は大嫌いな俺でも型システムを信じすぎる輩はどうかと思う。
931デフォルトの名無しさん
2017/08/25(金) 13:37:23.88ID:nLnLKgfd932デフォルトの名無しさん
2017/08/25(金) 20:25:21.97ID:7uFXgRip 暗黙嫌い=与党ってことだな
たとえ内容が全く同じでも、野党が批判するのと、与党の俺が批判するのは全然違うと
最近の日本語は面倒臭い
たとえ内容が全く同じでも、野党が批判するのと、与党の俺が批判するのは全然違うと
最近の日本語は面倒臭い
933デフォルトの名無しさん
2017/08/25(金) 20:45:47.36ID:xDVMzM02 >>930
もしかしてRustの型が貧弱というのに反論しているつもりなのか?
もしかしてRustの型が貧弱というのに反論しているつもりなのか?
934デフォルトの名無しさん
2017/08/25(金) 20:56:12.07ID:Yqz1DVXO 例えば perl みたいに "123" を勝手に数値変換したり文字列として取り扱ったりってな
言語は好きじゃないって話が一方であり、
じゃあ haskell みたいに型チェックを強めにやってりゃバグありませんって態度も
どうかと思うって話だよ。
なぜ与党とか政治の話になるのか謎。。
言語は好きじゃないって話が一方であり、
じゃあ haskell みたいに型チェックを強めにやってりゃバグありませんって態度も
どうかと思うって話だよ。
なぜ与党とか政治の話になるのか謎。。
935デフォルトの名無しさん
2017/08/25(金) 21:20:19.63ID:7uFXgRip 与党は比喩だな
一方、Haskellの「バグありません」って態度とか台詞とかは擬人化だろ
一方、Haskellの「バグありません」って態度とか台詞とかは擬人化だろ
936デフォルトの名無しさん
2017/08/26(土) 08:42:33.45ID:OYkNf4vr PerlとHaskellは両極端だが激しい対立は起きてなかったよね
対立がなかったところに中立の勢力が現れて両極端 vs. 中立の対立が発生したよね
中立の意味ないんじゃないか?
対立がなかったところに中立の勢力が現れて両極端 vs. 中立の対立が発生したよね
中立の意味ないんじゃないか?
937928
2017/08/26(土) 08:49:18.26ID:Mm+y9adx HKTが無いことを念頭に入れてのレスだったんよ。RustじゃHaskellで便利なFunctorは作れない
型システムを信じすぎるって状況が自分も想像できない。他言語の話だろうか
型システムを信じすぎるって状況が自分も想像できない。他言語の話だろうか
938デフォルトの名無しさん
2017/08/26(土) 13:53:01.93ID:+XRpmYj4 ペェ〜ルだかプェチピィだか、あんな真性糞ゴミを中立の位置まで持ち上げて議論に引き出すのが
そもそも間違っている
あんなんジャップランドの土方SIerの低学歴奴隷どもしか使っとらんぞ
そもそも間違っている
あんなんジャップランドの土方SIerの低学歴奴隷どもしか使っとらんぞ
939デフォルトの名無しさん
2017/08/26(土) 15:13:15.69ID:attIITNf >>938
海外でも使われてるし、土方SIerはむしろPHPなんか使ってなさそうだし色々間違ってるんだが
海外でも使われてるし、土方SIerはむしろPHPなんか使ってなさそうだし色々間違ってるんだが
940デフォルトの名無しさん
2017/08/26(土) 15:34:56.04ID:+XRpmYj4941デフォルトの名無しさん
2017/08/26(土) 15:37:34.37ID:yVg+x2rU 自社事業やってるベンチャーをいくつか転職活動で回ったけど、
俺達の事業に最適な最高のシステムを独自に開発した!もう人間要らねえ!俺すげぇぇ!
みたいな知性を感じないオレオレ系はPHP多かったな
もちろん即辞退
俺達の事業に最適な最高のシステムを独自に開発した!もう人間要らねえ!俺すげぇぇ!
みたいな知性を感じないオレオレ系はPHP多かったな
もちろん即辞退
942あ
2017/08/26(土) 15:42:18.00ID:X5M1TIXy >>938
SIerの仕事は、技術ではなくて管理だからな。
不良率や稼働率を客と話し合って、SLAを結んで、それを満たすシステム作らせるべくプロジェクト立ち上げて管理して納品させて、自分らが納品するのが目的なんだし、
定義した稼働率満たしてりゃ中身がなんであれそれで良いよ。
それ以上の品質はただの過剰品質。化粧板止めるネジにチタン使うぐらいのバカ。
理想論者の技術バカは、ちょっと自分に何が求められてるのか把握してほしいわ。
SIerの仕事は、技術ではなくて管理だからな。
不良率や稼働率を客と話し合って、SLAを結んで、それを満たすシステム作らせるべくプロジェクト立ち上げて管理して納品させて、自分らが納品するのが目的なんだし、
定義した稼働率満たしてりゃ中身がなんであれそれで良いよ。
それ以上の品質はただの過剰品質。化粧板止めるネジにチタン使うぐらいのバカ。
理想論者の技術バカは、ちょっと自分に何が求められてるのか把握してほしいわ。
943デフォルトの名無しさん
2017/08/26(土) 16:10:01.03ID:+f59r+kw944デフォルトの名無しさん
2017/08/26(土) 17:45:44.24ID:F/lZ1rgx 好き好んでSlerのPHP奴隷に成り下がる奴wwwww
945デフォルトの名無しさん
2017/08/26(土) 18:30:04.24ID:mC0A2mA/ >>943
最後の皮肉で噴き出したじゃないか、パブリックな場でww
最後の皮肉で噴き出したじゃないか、パブリックな場でww
946デフォルトの名無しさん
2017/08/26(土) 18:44:35.29ID:+9+W3CBg test
947デフォルトの名無しさん
2017/08/26(土) 19:59:48.46ID:VInW/Le9948デフォルトの名無しさん
2017/08/26(土) 20:06:00.46ID:QQJs7uWk >>947
きみがかかわった「完成が遅れたプロジェクト」ぜんぶ
きみがかかわった「完成が遅れたプロジェクト」ぜんぶ
949デフォルトの名無しさん
2017/08/26(土) 20:34:24.42ID:+XRpmYj4 >>948
ウンポコピーの糞プェチピィ土方を寄せ集めたジャップランド土人さんの悪口はやめたまえ
ウンポコピーの糞プェチピィ土方を寄せ集めたジャップランド土人さんの悪口はやめたまえ
950デフォルトの名無しさん
2017/08/26(土) 20:59:45.94ID:UaCnfxPk いい加減にマ板でやれ
951デフォルトの名無しさん
2017/08/27(日) 00:13:00.86ID:Xm4zUSYU PHPやPerlのような、終わった言語の話はもうやめようよ
952デフォルトの名無しさん
2017/08/27(日) 01:25:48.62ID:gWxugQMb goだとGAE/goが使えるから。という理由でGO言語が選択されてたりするかな。
中国人がGOが好きだという話を中国人のエンジニアの人に教えてもらいました。その人の話では中国でのベンチャーはいきなり一千万人単位のユーザが生まれる場合があるから、サーバ単価が低くできるGOが好まれるとか
中国人がGOが好きだという話を中国人のエンジニアの人に教えてもらいました。その人の話では中国でのベンチャーはいきなり一千万人単位のユーザが生まれる場合があるから、サーバ単価が低くできるGOが好まれるとか
953あ
2017/08/27(日) 01:26:55.82ID:0sFxQlMg >>947
俺はもう少し若輩者だけど、それでも過剰品質はあったよ。
●非常時には止めても良いシステムで、止めないでホットパッチ当てれる仕組みまで作ってた
→案の定その部分が原因でデータ不整合が起こった
●ホットなミラーリングが出来るDB使ってみました
→そもそもテンポラリDBしか使わないジョブ用のバッチ。
と言うように、害があるってのは2つの意味がある。
それを作ったせいで余計な対応が発生して余計にかかったコストを害とする
それを作らなくても良かったのに、作った事による、単純な工数の無駄遣い。
俺はもう少し若輩者だけど、それでも過剰品質はあったよ。
●非常時には止めても良いシステムで、止めないでホットパッチ当てれる仕組みまで作ってた
→案の定その部分が原因でデータ不整合が起こった
●ホットなミラーリングが出来るDB使ってみました
→そもそもテンポラリDBしか使わないジョブ用のバッチ。
と言うように、害があるってのは2つの意味がある。
それを作ったせいで余計な対応が発生して余計にかかったコストを害とする
それを作らなくても良かったのに、作った事による、単純な工数の無駄遣い。
954デフォルトの名無しさん
2017/08/27(日) 01:38:37.46ID:XtwdHSP9955デフォルトの名無しさん
2017/08/27(日) 03:28:48.46ID:Xm4zUSYU956デフォルトの名無しさん
2017/08/27(日) 06:45:30.70ID:uirFB7xG PHPで求人だしてるのはそれが一番安く雇えるからだろ
品質なんて気にしないというか知らない
自分が気に入るまで文句言ってれば理想のモノが出来上がると思ってる
画面がーとか言われてもな
品質なんて気にしないというか知らない
自分が気に入るまで文句言ってれば理想のモノが出来上がると思ってる
画面がーとか言われてもな
957デフォルトの名無しさん
2017/08/27(日) 07:17:55.40ID:5p3PV0IY958デフォルトの名無しさん
2017/08/27(日) 07:39:28.90ID:9QUPPDGG959デフォルトの名無しさん
2017/08/27(日) 08:03:58.19ID:A5vH1dU1 過剰に安く買って過剰に高く売ればいいのにね
物価を固定して品質を変えようとする奴しかいないね
物価を固定して品質を変えようとする奴しかいないね
960デフォルトの名無しさん
2017/08/27(日) 09:30:18.93ID:J8/CoBlN 今時はSIerも>>959を夢見て自社資産(成果物の流用に限らず無形のノウハウも含む)を作ろうとしてるところも多く、
要件を超えることが必ずしも悪いわけではない
俺もコストの半分くらいが自社の投資でカバーされる案件やったことあるぞ
まあSIerのクソ技術じゃせいぜいテンプレート化までなんだけど
要件を超えることが必ずしも悪いわけではない
俺もコストの半分くらいが自社の投資でカバーされる案件やったことあるぞ
まあSIerのクソ技術じゃせいぜいテンプレート化までなんだけど
961あ
2017/08/27(日) 11:15:59.94ID:0sFxQlMg962デフォルトの名無しさん
2017/08/27(日) 13:29:48.08ID:HU59sOY6 あるECサイトが情報漏えいを起こしてニュースになった。
そのECサイト PHPで調べるとだいたい ECサイト/index.php で大体ヒットする
そのECサイト PHPで調べるとだいたい ECサイト/index.php で大体ヒットする
963デフォルトの名無しさん
2017/08/27(日) 13:45:21.58ID:0P4eY3kj でもphpも最近は型アノテーション効くんだよね。
phpは型がないからダメだというのはないかも。
phpは型がないからダメだというのはないかも。
964デフォルトの名無しさん
2017/08/27(日) 13:55:08.57ID:aHc3NNic phpは良くなっても使ってるユーザの8割はコピペユーザだろ
965デフォルトの名無しさん
2017/08/27(日) 16:14:38.67ID:Xm4zUSYU 動的型付けだから書きやすい!生産性高い!
なんて喚いてたのに
今さらプリミティブ型の型アサーション導入で嬉ション漏らしてるなんて
ペチパーってひょっとして馬鹿なのか?
って思った
なんて喚いてたのに
今さらプリミティブ型の型アサーション導入で嬉ション漏らしてるなんて
ペチパーってひょっとして馬鹿なのか?
って思った
966デフォルトの名無しさん
2017/08/27(日) 17:30:06.18ID:0P4eY3kj >>965
なんでステレオタイプな一つの人格にしようとしてんの?
俺はphperでもないし、動的言語がいいなんて言った覚えもない。
ただ和田さんのプレゼン、防衛的プログラミングの一環として
型アノテーションを使うことを提案されていて良いと思ったから話しただけ。
http://sssslide.com/speakerdeck.com/twada/php-conference-2016
なんでステレオタイプな一つの人格にしようとしてんの?
俺はphperでもないし、動的言語がいいなんて言った覚えもない。
ただ和田さんのプレゼン、防衛的プログラミングの一環として
型アノテーションを使うことを提案されていて良いと思ったから話しただけ。
http://sssslide.com/speakerdeck.com/twada/php-conference-2016
967デフォルトの名無しさん
2017/08/27(日) 18:22:30.86ID:Xm4zUSYU968デフォルトの名無しさん
2017/08/27(日) 18:34:38.91ID:afYlE8K8 >>966
これ会場で誰か「Java使えば?」って言ってあげろよ
これ会場で誰か「Java使えば?」って言ってあげろよ
969デフォルトの名無しさん
2017/08/27(日) 18:50:11.83ID:q7bmEdLB PHPはなぜライト層が好むのか
970デフォルトの名無しさん
2017/08/27(日) 19:22:26.33ID:Xm4zUSYU >>969
「PHPなら初心者でも書ける」という大嘘がまかり通ってるから
そんな連中が書いたゴミの山を保守する奴隷が足りてないから
やっぱり「PHPなら初心者でも書ける」と噂を流して
奴隷がやってくるのを待っている
「PHPなら初心者でも書ける」という大嘘がまかり通ってるから
そんな連中が書いたゴミの山を保守する奴隷が足りてないから
やっぱり「PHPなら初心者でも書ける」と噂を流して
奴隷がやってくるのを待っている
971デフォルトの名無しさん
2017/08/27(日) 19:39:59.26ID:0cj4lMWm 暗黙にいろいろ用意してくれてるものがライト層には人気出るのはわかる。
972デフォルトの名無しさん
2017/08/27(日) 19:48:59.90ID:ZA6o2PCQ ライト層が好むんじゃなくて結果的にライト層が残るんだろ
まともにコード書ける奴はゴミみたいな単価のWeb制作なんかすぐ辞めて自社事業系に行くよ
まともにコード書ける奴はゴミみたいな単価のWeb制作なんかすぐ辞めて自社事業系に行くよ
973デフォルトの名無しさん
2017/08/27(日) 20:47:45.53ID:0P4eY3kj >>968
プレゼンの内容ロクに見ずに批判してるのがまるわかり。
動的言語の良さと静的言語の良さをあわせてる
動的言語はメタプログラミングし易いからフレームワークの挙動を組みやすい。
でもインターフェースがゆるゆるだと使う時にひどいから
インターフェース部分を型アノテーションで固めようってことでしょ。
javaは全部かっちりしすぎて辛い部分もある。だからkotlinとか注目されてる。
ボイラープレートだらけとかシンドいのは事実
goも若干きつくて正直goaに出会うまではgoでwebやろうってあんまり思わなかった
プレゼンの内容ロクに見ずに批判してるのがまるわかり。
動的言語の良さと静的言語の良さをあわせてる
動的言語はメタプログラミングし易いからフレームワークの挙動を組みやすい。
でもインターフェースがゆるゆるだと使う時にひどいから
インターフェース部分を型アノテーションで固めようってことでしょ。
javaは全部かっちりしすぎて辛い部分もある。だからkotlinとか注目されてる。
ボイラープレートだらけとかシンドいのは事実
goも若干きつくて正直goaに出会うまではgoでwebやろうってあんまり思わなかった
974デフォルトの名無しさん
2017/08/27(日) 21:14:56.73ID:0uJKb2TV 動的だとメタプログラミングしやすい…?
メタプログラミングって何かわかってる??
メタプログラミングって何かわかってる??
975デフォルトの名無しさん
2017/08/27(日) 21:42:23.55ID:J8/CoBlN 確かに、Rubyのようにコード上の静的なセマンティクスと実行時のデータ構造とが明確に分離されていない言語において
動的にメソッド生やしたりするのをメタプログラミングと呼ぶのは違和感あるよな
動的にメソッド生やしたりするのをメタプログラミングと呼ぶのは違和感あるよな
976デフォルトの名無しさん
2017/08/27(日) 21:43:30.82ID:0P4eY3kj >>974
ダックタイピングとマジックメソッドの組み合わせによって
例えばORMとかだとDBのスキーマ情報からメソッド生やしたりできる。
そういうのはjavaとかgoだとcode genereateするしかないでしょ。
ダックタイピングとマジックメソッドの組み合わせによって
例えばORMとかだとDBのスキーマ情報からメソッド生やしたりできる。
そういうのはjavaとかgoだとcode genereateするしかないでしょ。
977デフォルトの名無しさん
2017/08/27(日) 21:51:14.06ID:0P4eY3kj >>976
あれ?俺の考えてるメタプログラミングって違うの?
例えばジェネリクスもメタプログラミングだと思ってるんだけど
https://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%BF%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0
を見る限りじゃ合ってると思うんだけど。
簡単に言えばロジックを記述するロジックを組むのがメタプログラミングだよね。
あれ?俺の考えてるメタプログラミングって違うの?
例えばジェネリクスもメタプログラミングだと思ってるんだけど
https://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%BF%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0
を見る限りじゃ合ってると思うんだけど。
簡単に言えばロジックを記述するロジックを組むのがメタプログラミングだよね。
978デフォルトの名無しさん
2017/08/27(日) 22:12:18.75ID:otpxcVUC >>977
ジェネリクスによるメタプログラミングは型という本来静的に決まっているものに依存しないという点でメタ
ロジックを記述するメタプログラミングとは意味が違う
動的言語ではメソッドが静的に定義されている必要は元々全くないし、
定義するメソッドもごく普通のメソッドであり決してロジックを生成しているわけではない
LISPみたいに実行するコードそのものを作ってしまうのがロジックを記述する方のメタプログラミングだ
ジェネリクスによるメタプログラミングは型という本来静的に決まっているものに依存しないという点でメタ
ロジックを記述するメタプログラミングとは意味が違う
動的言語ではメソッドが静的に定義されている必要は元々全くないし、
定義するメソッドもごく普通のメソッドであり決してロジックを生成しているわけではない
LISPみたいに実行するコードそのものを作ってしまうのがロジックを記述する方のメタプログラミングだ
979デフォルトの名無しさん
2017/08/27(日) 22:25:38.24ID:J8/CoBlN 補足
動的言語でcallをフックする系のメタプログラミングがメタである所以は、
メソッドは本来クラスに対して静的にアサインされるものである、という前提において、
メソッドを動的にアサイン(動的にロジックを記述しているわけではない)しているという点だ
その前提を認めるかどうかは議論の余地がある
例えば、さすがにJavaScriptでメソッドは静的にアサインされるものだと主張するのは無理があるだろうね
動的言語でcallをフックする系のメタプログラミングがメタである所以は、
メソッドは本来クラスに対して静的にアサインされるものである、という前提において、
メソッドを動的にアサイン(動的にロジックを記述しているわけではない)しているという点だ
その前提を認めるかどうかは議論の余地がある
例えば、さすがにJavaScriptでメソッドは静的にアサインされるものだと主張するのは無理があるだろうね
980デフォルトの名無しさん
2017/08/27(日) 22:26:36.34ID:QZuIwK0r981デフォルトの名無しさん
2017/08/27(日) 23:44:09.86ID:0P4eY3kj >>979
難しいっすわ。
つまりjsでメタプログラミングと言ったら
jsのコードを文字列で記述してそれをevalしたものだけってこと?
学術的な定義だと言われると凄く困るんだけど、
メタ って自己言及ってことでしょ
ロジックを持ってロジックを作るという考え方全般をメタプログラミングと呼んだら
実際的に弊害があったりする?
静的言語だと例えばマクロを駆使してコード生成をかける
部分をメタプログラミングと呼ぶ。
rust のprintln!とかだよね
テンプレート文字列の内容を実際に渡すパラメータの数と型の一致の確認をコンパイル時に行う。
goだとプリプロセッサがないからcode genereteがメタプログラミングなわけだ。
でも動的言語だとコンパイルはないから全て実行時に処理する。
だから明確にメタプログラミングと言える箇所はないってことか。
そこはわかったよ。
でも、実際には静的言語にはマクロがないとできないことを動的言語はできる。
だからメタプログラミングが動的言語は得意っていいたかったんだよね。
難しいっすわ。
つまりjsでメタプログラミングと言ったら
jsのコードを文字列で記述してそれをevalしたものだけってこと?
学術的な定義だと言われると凄く困るんだけど、
メタ って自己言及ってことでしょ
ロジックを持ってロジックを作るという考え方全般をメタプログラミングと呼んだら
実際的に弊害があったりする?
静的言語だと例えばマクロを駆使してコード生成をかける
部分をメタプログラミングと呼ぶ。
rust のprintln!とかだよね
テンプレート文字列の内容を実際に渡すパラメータの数と型の一致の確認をコンパイル時に行う。
goだとプリプロセッサがないからcode genereteがメタプログラミングなわけだ。
でも動的言語だとコンパイルはないから全て実行時に処理する。
だから明確にメタプログラミングと言える箇所はないってことか。
そこはわかったよ。
でも、実際には静的言語にはマクロがないとできないことを動的言語はできる。
だからメタプログラミングが動的言語は得意っていいたかったんだよね。
982デフォルトの名無しさん
2017/08/27(日) 23:47:44.62ID:0uJKb2TV C++ではマクロを使わないと実現できない最小のpythonコードをご提示ください
983デフォルトの名無しさん
2017/08/28(月) 00:04:08.73ID:bSe63dl4 誰がなんと言おうと、PHPみたいな糞言語使わないし、使う必要もない
生涯を保守に捧げたい哀れな土方どもにやらせておけばいい
生涯を保守に捧げたい哀れな土方どもにやらせておけばいい
984デフォルトの名無しさん
2017/08/28(月) 00:15:01.04ID:hSp+oBxP やはり動的型が好きな人はありとあらゆることがゆるゆるで
それはこういった会話にも表れてしまって、全てが場当たり的なんだな
会話がこうなんだから、他のこともそうなんだろう
指摘されてから直したらよい、的な
どうしてそうなってしまうのか、非常に興味深いところであるが
おそらく現実が正しく認識できていないか、もしくは根本的なところを履き違えているだとか
そんなおかしな状態で日常を過ごしていると
思考回路がいい加減になってしまって常習化してしまうのだろう
モデルが正しくないところへ幾らインプットを流し込んでも
正しく学習できないばかりか、どんどん変になっていく
そのうち何が何やらどうでもよくなってしまうのだろう
それはこういった会話にも表れてしまって、全てが場当たり的なんだな
会話がこうなんだから、他のこともそうなんだろう
指摘されてから直したらよい、的な
どうしてそうなってしまうのか、非常に興味深いところであるが
おそらく現実が正しく認識できていないか、もしくは根本的なところを履き違えているだとか
そんなおかしな状態で日常を過ごしていると
思考回路がいい加減になってしまって常習化してしまうのだろう
モデルが正しくないところへ幾らインプットを流し込んでも
正しく学習できないばかりか、どんどん変になっていく
そのうち何が何やらどうでもよくなってしまうのだろう
985デフォルトの名無しさん
2017/08/28(月) 01:53:37.57ID:2qTxVo4t986デフォルトの名無しさん
2017/08/28(月) 02:23:45.93ID:PMfiarSN 動的言語のメタプログラミングのメリットもわからないとか終わってるなww
987デフォルトの名無しさん
2017/08/28(月) 06:51:11.62ID:bSe63dl4 ペチプァさん・・・w
988デフォルトの名無しさん
2017/08/28(月) 09:41:42.58ID:hmoIfjPi あほくさ。
そこまで堅いのが好きならすべてワイヤロジックで組むべきだな。
そこまで堅いのが好きならすべてワイヤロジックで組むべきだな。
989デフォルトの名無しさん
2017/08/28(月) 09:48:23.03ID:IHzBG4Iq メタプログラミングってどれがって定義とかじゃなくて相対的なものじゃないの
敢えて言えば平均的な使い方よりメタかどうかなので、言語によって変わってくるのでは
敢えて言えば平均的な使い方よりメタかどうかなので、言語によって変わってくるのでは
990デフォルトの名無しさん
2017/08/28(月) 10:23:02.60ID:knrf7PIh 静的なメタプログラミングにはチューリング完全ではない特殊な言語を使う
コンパイル時に無限ループさせないために
言語が二つあるから完全に二極化している
コンパイル時に無限ループさせないために
言語が二つあるから完全に二極化している
991デフォルトの名無しさん
2017/08/28(月) 15:51:07.02ID:PMfiarSN メタプログラミングという概念について述べてるところに
メタプログラミングの実現方式について返すから話が噛み合わないわけだw
言語処理能力って重要だね
メタプログラミングの実現方式について返すから話が噛み合わないわけだw
言語処理能力って重要だね
992デフォルトの名無しさん
2017/08/28(月) 15:54:35.06ID:hmoIfjPi まあこれ以上、メタプロとはってなこと話しても無駄だろうということで
話題の発端である「動的言語はメタプログラミングし易いからフレームワークの挙動を組みやすい。」
てなところに戻って、
動的言語でフレームワークの挙動を組みやすいかどうかを語った方が良いのでは?
話題の発端である「動的言語はメタプログラミングし易いからフレームワークの挙動を組みやすい。」
てなところに戻って、
動的言語でフレームワークの挙動を組みやすいかどうかを語った方が良いのでは?
993あ
2017/08/28(月) 16:01:40.95ID:J4nOOC8D994デフォルトの名無しさん
2017/08/28(月) 16:11:48.75ID:hSp+oBxP どちらにしても次世代言語の覇者なるものがもし出てくるとしても
動的型言語界隈から出てくるわけないので、どうでもよい
動的なメタプログラミングなど悪夢でしかなく、好まれるはずがない
静的な分、Cのマクロの方がましだ
静的型で出来なくて、動的型で出来ることの殆どは、悪手でしかない
結局人間にもわかりにくいし
実行速度を落としてまでサポートするほどの価値はない
動的型言語界隈から出てくるわけないので、どうでもよい
動的なメタプログラミングなど悪夢でしかなく、好まれるはずがない
静的な分、Cのマクロの方がましだ
静的型で出来なくて、動的型で出来ることの殆どは、悪手でしかない
結局人間にもわかりにくいし
実行速度を落としてまでサポートするほどの価値はない
995デフォルトの名無しさん
2017/08/28(月) 16:37:43.73ID:eoTPDlew Lispのマクロはメタプログラムに入りますか〜?
996デフォルトの名無しさん
2017/08/28(月) 19:04:21.49ID:nnMMDr4F997デフォルトの名無しさん
2017/08/28(月) 19:06:30.14ID:nnMMDr4F >>994
つまりあんたはOSをインストールしたら最後、プログラミングなんて一切しない人なんだね。
動的であることを拒否するということは、OS上でユーザは実行可能ファイルを一切生成することも上書きすることも許されないということだ。
IEでインターネットでもしてろw
つまりあんたはOSをインストールしたら最後、プログラミングなんて一切しない人なんだね。
動的であることを拒否するということは、OS上でユーザは実行可能ファイルを一切生成することも上書きすることも許されないということだ。
IEでインターネットでもしてろw
998デフォルトの名無しさん
2017/08/28(月) 19:41:37.27ID:hSp+oBxP と、このように関係のない的外れなことを言い出す
ゆるゆるなのは誰がどう見てもお前じゃねーか
ゆるゆるなのは誰がどう見てもお前じゃねーか
999デフォルトの名無しさん
2017/08/28(月) 19:48:51.91ID:hSp+oBxP 要するには何の区別も分別もついてないということだな
じゃなきゃそんな的外れなたとえ話w
そういった混沌とした状態の頭で生活をしていから
普段から、何もかも、何が何やらで
終いには全てのことが、どうでもよくなるんだろうな
悪循環だな
じゃなきゃそんな的外れなたとえ話w
そういった混沌とした状態の頭で生活をしていから
普段から、何もかも、何が何やらで
終いには全てのことが、どうでもよくなるんだろうな
悪循環だな
1000デフォルトの名無しさん
2017/08/28(月) 20:26:26.83ID:3Zs55+dM よく考えてみたらメタプログラミングってgoとかでコードを書くようになったから意識するようになった。php自体は意識しないで使ってたから。
静的言語、動的言語って分け方もよくなかったね。
静的言語だってマクロ機能があればメタプログラミングはある程度できる。
goだとreflectとか使わないとphpと同じことはできないしできたとしてもかなり苦しい。
結局言語機能が不足してるのが問題なんだよね。
TypeScriptはその点でかなり自由度が高かった
型の直和型と直積型を & と | を駆使して組み合わせられるから
かなり動的言語よりにコードを書ける。
let a :string|number|undefined;
とやるとstringの可能性とnumberの可能性とundeifnedの可能性がある型が作れる。
もちろん
if (typeof a === ‘string’) {
} else if (typeof a === ‘undefined’ ) {
} else {
// ここに来るのは絶対number型だとIDEも認識する。
}
とういう風にTypeGuardも完璧に動作する。
goはエコシステムがいいのにこういうのが充実してないからかなり苦しむことになる。
だからメタプログラミングは弱いって思ったんだけど
静的言語だから弱いって言うべきではなかったな。
静的言語、動的言語って分け方もよくなかったね。
静的言語だってマクロ機能があればメタプログラミングはある程度できる。
goだとreflectとか使わないとphpと同じことはできないしできたとしてもかなり苦しい。
結局言語機能が不足してるのが問題なんだよね。
TypeScriptはその点でかなり自由度が高かった
型の直和型と直積型を & と | を駆使して組み合わせられるから
かなり動的言語よりにコードを書ける。
let a :string|number|undefined;
とやるとstringの可能性とnumberの可能性とundeifnedの可能性がある型が作れる。
もちろん
if (typeof a === ‘string’) {
} else if (typeof a === ‘undefined’ ) {
} else {
// ここに来るのは絶対number型だとIDEも認識する。
}
とういう風にTypeGuardも完璧に動作する。
goはエコシステムがいいのにこういうのが充実してないからかなり苦しむことになる。
だからメタプログラミングは弱いって思ったんだけど
静的言語だから弱いって言うべきではなかったな。
10011001
Over 1000Thread このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 76日 11時間 32分 19秒
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 76日 11時間 32分 19秒
10021002
Over 1000Thread 2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.2ch.net/
▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.2ch.net/
▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 小泉進次郎農相、就任一夜明け「コメ5キロ2990円」記事ポスト……「(税込み)3229円だよ」などツッコミ [少考さん★]
- 三浦瑠麗氏、永野芽郁を“キャンセル”する企業に持論「単に事なかれ主義」「ほめられたことではない」 [少考さん★]
- フジ第三者委員会 中居氏側の守秘義務解除の前向きな姿勢は「事実」も最終回答は「解除せず」★2 [ひかり★]
- 【山梨】中国警察名乗り「あなた名義で航空券が多数買われ、中国のおばあさんがショック死した」…保証金要求に大学生「だまされたふり」 [ぐれ★]
- 【住宅】タワマン火災は消火や救助が困難、どう避難すべき? [ぐれ★]
- 永野芽郁 打ち上げでスピーチ「週刊誌から声かけられたら知りませーん!って言ってくださいね」「ご迷惑をおかけしてすいませーん。ふふふ」★3 [Ailuropoda melanoleuca★]
- 日本人「ワンチャンス略してワンチャンです」言うほど略してない件 [931948549]
- 【速報】小室K、第一子を出産wwwwwwwwwwwwwwwwwwwwwwwwwwwwww
- なぜ低所得者は、「政治家のせい」にするのか…自分の人生を「自分のもの」と思えない理屈 [195219292]
- 【訃報】日米欧で超長期金利が上昇、米債入札低調、インフレ、財政不安で共振 [943688309]
- 日本人、気ずく… 「消費も最低限、労働も最低限、人付き合いや社会貢献もしないでひたすら1人で資産貯めて戦ってるゲリラいるよね?」 [452836546]
- 【朗報】ホリエモン「別姓反対派は戸籍制度が守れなくなる!とかいうけど戸籍なんて廃止で良いだろ」 [339035499]