いざ、語ろうぞ。
スレタイ超過のため、一部省略。
Go, Erlang, Kotlin, etcもウェルカム。
Haskellは協議により次世代失格になりました
前スレ
次世代言語議論スレ[Go Rust Haskell Scala]第3世代
http://echo.2ch.net/test/read.cgi/tech/1488608741/
探検
次世代言語議論スレ[Go Rust Kotlin Scala]第4世代 [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
2017/04/20(木) 04:43:27.12ID:mNwXvrXv
2あ
2017/04/20(木) 07:32:05.38ID:AyFGgpwk 乙
2017/04/20(木) 08:19:51.38ID:zhxiAG0o
TypeScriptも次世代言語に入れてくれ。
https://trends.google.co.jp/trends/explore?q=Golang,Typescript,Kotlin
Google社内の標準言語としてTypeScriptが承認される。ng-conf 2017
http://www.publickey1.jp/blog/17/googletypescriptng-conf_2017.html
TypeScriptが標準言語になっても、Dartのことは忘れてませんよとGoogle担当者がフォロー
http://www.publickey1.jp/blog/17/typescriptdartgoogle.html
https://trends.google.co.jp/trends/explore?q=Golang,Typescript,Kotlin
Google社内の標準言語としてTypeScriptが承認される。ng-conf 2017
http://www.publickey1.jp/blog/17/googletypescriptng-conf_2017.html
TypeScriptが標準言語になっても、Dartのことは忘れてませんよとGoogle担当者がフォロー
http://www.publickey1.jp/blog/17/typescriptdartgoogle.html
2017/04/20(木) 08:44:47.83ID:jeWo4Dft
208 デフォルトの名無しさん[sage] 2017/04/19(水) 12:20:37.70 ID:rIlDsUIc
継承もカプセル化もオブジェクト指向には必要ない
クラスを作る、つまり型を定義する事こそがオブジェクト指向
265 デフォルトの名無しさん[sage] 2017/04/19(水) 23:10:42.57 ID:2dTlCsss
>>208
代数的データ型で型を定義できるHaskellはオブジェクト志向言語だった……?
266 デフォルトの名無しさん[sage] 2017/04/19(水) 23:12:01.85 ID:qOdNs+TP
>>265
代数的データ型とはなんぞや?
269 デフォルトの名無しさん[sage] 2017/04/19(水) 23:19:37.80 ID:qOdNs+TP
type c = a or b
みたいな?
270 デフォルトの名無しさん[sage] 2017/04/19(水) 23:20:37.20 ID:qOdNs+TP
これもオブジェクト指向と言ってもいいでしょう!
こんなん草生える
継承もカプセル化もオブジェクト指向には必要ない
クラスを作る、つまり型を定義する事こそがオブジェクト指向
265 デフォルトの名無しさん[sage] 2017/04/19(水) 23:10:42.57 ID:2dTlCsss
>>208
代数的データ型で型を定義できるHaskellはオブジェクト志向言語だった……?
266 デフォルトの名無しさん[sage] 2017/04/19(水) 23:12:01.85 ID:qOdNs+TP
>>265
代数的データ型とはなんぞや?
269 デフォルトの名無しさん[sage] 2017/04/19(水) 23:19:37.80 ID:qOdNs+TP
type c = a or b
みたいな?
270 デフォルトの名無しさん[sage] 2017/04/19(水) 23:20:37.20 ID:qOdNs+TP
これもオブジェクト指向と言ってもいいでしょう!
こんなん草生える
2017/04/20(木) 12:21:47.82ID:yNBy9eOM
TypeScriptはJavaScriptのクソな点をまともに直しただけで
次世代というものを感じないのだがなんかあるの?
次世代というものを感じないのだがなんかあるの?
2017/04/20(木) 19:50:17.61ID:VIiPRj9u
TypeScriptは次世代を担うってよりも
旧世代の資産をなんとか次世代まで持ちこたえさせるつなぎって感じ
旧世代の資産をなんとか次世代まで持ちこたえさせるつなぎって感じ
2017/04/21(金) 00:32:39.17ID:TpnuMFUz
別に便利ならそれでいいと思うけど。
8デフォルトの名無しさん
2017/04/21(金) 13:54:11.80ID:cmecYv9F >>5
とはいえ次世代は次世代でしょ
とはいえ次世代は次世代でしょ
9あ
2017/04/21(金) 16:45:28.52ID:KFYgHFHL TypeScriptは手段が目的化してきてるからな。
構文は嫌いじゃないけど。
構文は嫌いじゃないけど。
2017/04/21(金) 23:38:23.47ID:F8Tq/dHs
なんでHaskell無くなってるの?もう学ぶの諦めたの?
11デフォルトの名無しさん
2017/04/21(金) 23:42:05.24ID:1EW2mi9U うん
Haskell学ぶなんて時間の無駄だってことに気づいたの
Haskell学ぶなんて時間の無駄だってことに気づいたの
2017/04/21(金) 23:59:18.37ID:9S9WRWBb
2017/04/22(土) 00:57:02.64ID:Kjd2lTg6
問題とされたのは遅延することではなく何秒遅れるか予測不可能なことだと思う
タイミングを何秒後と指定して評価するのは問題ないとされる
現にそういう問題が出題されたしね
タイミングを何秒後と指定して評価するのは問題ないとされる
現にそういう問題が出題されたしね
2017/04/22(土) 02:36:22.27ID:gXJYMt+Q
いやHaskellを声高にプッシュしていた奴が例題のコードも出さずに逃亡して、Haskellそんなに詳しくない人が替わりに書くという事態になったからだよ
Haskellに詳しい人もHaskellについて議論できる人もいなかったんで対象として取り上げるには不適切になった(このスレでは)
Haskell上げの意見は説得力が無いしHaskell下げの意見はただのレッテル貼りにしかならない
Haskellに詳しい人もHaskellについて議論できる人もいなかったんで対象として取り上げるには不適切になった(このスレでは)
Haskell上げの意見は説得力が無いしHaskell下げの意見はただのレッテル貼りにしかならない
2017/04/22(土) 07:18:18.45ID:yb9XO/RM
で、Haskellよりも劣った言語が次世代言語候補として残ったわけか
おもしれーw
おもしれーw
2017/04/22(土) 07:49:13.55ID:9MR2WQGe
次世代言語なんだから、現行の言語を語っても意味ないよね。
2017/04/22(土) 09:34:02.47ID:Kjd2lTg6
>>14
逃亡というレッテル貼りをおそれて多くの人が努力したんだな
レッテル貼りには人を努力させる効果があった
レッテル貼りは悪という意見にはあまり説得力がない
この場合、逃亡は悪ではかったと考える方が説得力がある
逃亡というレッテル貼りをおそれて多くの人が努力したんだな
レッテル貼りには人を努力させる効果があった
レッテル貼りは悪という意見にはあまり説得力がない
この場合、逃亡は悪ではかったと考える方が説得力がある
2017/04/22(土) 09:54:38.02ID:69jc9pki
>>17
最後の1行がそれより前とつながらないんだが
最後の1行がそれより前とつながらないんだが
2017/04/22(土) 10:24:05.10ID:69jc9pki
糞問題、糞設計、糞実装だの言うわりにどれ一つ代替案は出てこなかった(つまりパラダイムは変えない)
加えて、正直な感想として現行言語の方が次世代と称される言語よりずっとすっきり書けていた
という現状をふまえると次世代の「売り」って何なのだろう
クラスや付随する言語機能を捨ててシンプルさを求めたこと(継承のデメリットの排除と学習コストの軽減)と
それで生じる表現力・抽象度の低下を型チェックや型推論機構の充実で補ってバランスをとったところ?
加えて、正直な感想として現行言語の方が次世代と称される言語よりずっとすっきり書けていた
という現状をふまえると次世代の「売り」って何なのだろう
クラスや付随する言語機能を捨ててシンプルさを求めたこと(継承のデメリットの排除と学習コストの軽減)と
それで生じる表現力・抽象度の低下を型チェックや型推論機構の充実で補ってバランスをとったところ?
20デフォルトの名無しさん
2017/04/22(土) 10:33:00.05ID:d4ODGBV8 HaskellとDが最底辺であることに変わりはない。
実用性皆無なプログラム言語は存在価値無し。
実用性皆無なプログラム言語は存在価値無し。
2017/04/22(土) 10:40:11.00ID:Kjd2lTg6
2017/04/22(土) 11:00:51.13ID:69jc9pki
>>21
そこじゃない!www>訂正
逃亡というレッテル張りを恐れて他の善意のファンが努力
→レッテル張り自体は悪だが結果はそう悪いものでもなかった
という流れからどうして逃亡自体が悪でないという帰結が導かれるのか?
ひたすら机上の空論を展開し、他を貶め、蔑み、悪態をつくだけついて
じゃあ動くコードやよりよい設計を出せというと逃げるのはどうみても身勝手だろう
そこじゃない!www>訂正
逃亡というレッテル張りを恐れて他の善意のファンが努力
→レッテル張り自体は悪だが結果はそう悪いものでもなかった
という流れからどうして逃亡自体が悪でないという帰結が導かれるのか?
ひたすら机上の空論を展開し、他を貶め、蔑み、悪態をつくだけついて
じゃあ動くコードやよりよい設計を出せというと逃げるのはどうみても身勝手だろう
2017/04/22(土) 11:14:59.00ID:Kjd2lTg6
悪口を言われたから賠償してほしいって?
そんな出題者の意図があるとは知らなかった
そんな出題者の意図があるとは知らなかった
2017/04/22(土) 11:36:19.62ID:69jc9pki
2017/04/22(土) 11:53:17.53ID:69jc9pki
なんかいちいち噛み合わないな
もしかしてHaskell儲がまだいるのか?
なら逃亡行為を好意的に解釈したがるのも頷ける
もしかしてHaskell儲がまだいるのか?
なら逃亡行為を好意的に解釈したがるのも頷ける
2017/04/22(土) 12:24:45.77ID:VCLbyEjA
あんまり荒らしたくはないが、できるかできないかで言えばできたんだから問題ないだろ
それにType Classのコード理解できるやつ何人いた?
単なる継承だと勘違いしてるっぽい奴はいたが
それにType Classのコード理解できるやつ何人いた?
単なる継承だと勘違いしてるっぽい奴はいたが
2017/04/22(土) 12:38:09.97ID:yb9XO/RM
そもそも単価の高いHaskellerにタダでコード書けというほうが間違っている
2017/04/22(土) 13:11:14.86ID:69jc9pki
>>27
旧世代言語なら実質50行程度せいぜい10分で書けるコードにいくら請求するつもりだよww
それに単価ならカンブリア言語のSmalltalkerの方がよほど高いわ
奴ら呼べばきっと頼まれなくてもホイホイ書くぞ
Rust使いに次いで自分言語大好きだからな
https://developers.srad.jp/story/17/03/31/0448232/
旧世代言語なら実質50行程度せいぜい10分で書けるコードにいくら請求するつもりだよww
それに単価ならカンブリア言語のSmalltalkerの方がよほど高いわ
奴ら呼べばきっと頼まれなくてもホイホイ書くぞ
Rust使いに次いで自分言語大好きだからな
https://developers.srad.jp/story/17/03/31/0448232/
2017/04/22(土) 13:55:32.78ID:/fxOrStV
どうせお前ら、フレームワークに用意されたメソッドを
サンプル通りに呼び出すだけのドカタだろ?
次世代言語なんて要らんだろ
サンプル通りに呼び出すだけのドカタだろ?
次世代言語なんて要らんだろ
2017/04/22(土) 14:38:27.32ID:XG8YtWUq
そういう言語こそ切望されている。
2017/04/22(土) 19:55:27.63ID:2QNaIclJ
次世代言語ならおっさんにマウントされずに
仕事できると思ってるバカが多いってだけなんだよ結局。
仕事できると思ってるバカが多いってだけなんだよ結局。
2017/04/23(日) 13:37:29.12ID:mKAZq6VZ
2017/04/23(日) 14:04:42.00ID:NE9/Voyw
個人的にはスレタイからRustも抜いてほしい。まともに物が作れないのにクソモジラのステマだけで話題になってる、言語未満のクソの塊。
2017/04/23(日) 14:08:54.35ID:HdKb/Sdq
このスレは何を目指してるの?
2017/04/23(日) 15:35:02.72ID:zop66JA+
よく分からんよね
いつか知らないけど、次に主流になる言語が何かを決めたいんだろう
いつか知らないけど、次に主流になる言語が何かを決めたいんだろう
2017/04/23(日) 15:41:50.81ID:OBcWFFpc
もう全部C++でいいんじゃないかな
これから100年先までずっとC++だ
これから100年先までずっとC++だ
2017/04/23(日) 16:07:52.01ID:UJAzDyB2
>>36
それでいいそれで。他を圧倒的に突き放して一番早くて実用的な言語だ。
それでいいそれで。他を圧倒的に突き放して一番早くて実用的な言語だ。
2017/04/23(日) 16:10:21.34ID:svTWBXfu
多次元配列弱いC++はFortran以下
まず配列アクセス演算子が引数一つしか取れない時点で終わってる
まず配列アクセス演算子が引数一つしか取れない時点で終わってる
2017/04/23(日) 16:16:54.85ID:dVBaHUf3
そりゃ、関数で十分だからな。テンプレートとオーバーロードと参照があれば
配列アクセス演算子なんて最初から必要なかった。
配列アクセス演算子なんて最初から必要なかった。
2017/04/23(日) 16:20:47.89ID:svTWBXfu
まあ確かにEigenなんかは関数呼び出し演算子で代用してるな
そのEigenでさえ3次元以上には対応してないっていうのがC++の自由度の低さを物語ってるが
そのEigenでさえ3次元以上には対応してないっていうのがC++の自由度の低さを物語ってるが
2017/04/23(日) 16:24:19.41ID:UJAzDyB2
逆に聞くけどそれなくて何か実用的なプログラミングで困るの?
2017/04/23(日) 16:29:32.67ID:mKAZq6VZ
C++++あくしろよ
2017/04/23(日) 17:38:01.40ID:svTWBXfu
2017/04/23(日) 19:47:31.29ID:zjYzndui
いや、そんな要素一つ一つに対して別個の処理をするようなコードは
あんまいらんだろ。
本当に必要な場合は結局、配列レベルで高速化が望まれる場合だけだし。
誰かが用意した python のライブラリでも使ってなさいってこった。
カスが個人的に作ったものよりもよっぽど速くて正確なものがあるんだから。
あんまいらんだろ。
本当に必要な場合は結局、配列レベルで高速化が望まれる場合だけだし。
誰かが用意した python のライブラリでも使ってなさいってこった。
カスが個人的に作ったものよりもよっぽど速くて正確なものがあるんだから。
2017/04/23(日) 20:12:53.69ID:svTWBXfu
Python >>>> C++が証明されたな
速度においてもCython擁するPythonが負ける要素はないし
速度においてもCython擁するPythonが負ける要素はないし
2017/04/23(日) 20:19:34.87ID:PCQQgnKm
C++er「もう全部C++でいい」
配列マン「多次元配列需要あるのにC++にはないやん」
C++er「そんなもんあんまいらんだろ。Pythonでも使ってなさいカス」
C++erってやっぱダブルスタンダードのカスだわ
配列マン「多次元配列需要あるのにC++にはないやん」
C++er「そんなもんあんまいらんだろ。Pythonでも使ってなさいカス」
C++erってやっぱダブルスタンダードのカスだわ
2017/04/23(日) 20:36:30.78ID:zjYzndui
用途によって使い分けるという当たり前の発送のないバカと一緒にされたくないんだけど。。
48デフォルトの名無しさん
2017/04/23(日) 21:11:17.67ID:OBcWFFpc 皮肉なのにマジで取られても
2017/04/23(日) 21:15:41.28ID:PCQQgnKm
あとはID:UJAzDyB2だけか
2017/04/23(日) 21:50:20.49ID:bkkcl6Xn
多次元配列とはいえ結局は仮想メモリ上に一次元に乗るデータになるんだから、多次元→一次元マッピングを最初から最適にデータ設計出来てればいらんだろそんなもん。
そこを処理系任せにしてメモリ上のデータ構造チューニングできないようなものが次世代言語なのか?
そこを処理系任せにしてメモリ上のデータ構造チューニングできないようなものが次世代言語なのか?
2017/04/23(日) 21:51:12.16ID:bkkcl6Xn
あ、ID変わったけどID:UJAzDyB2。
2017/04/23(日) 22:10:15.66ID:bkkcl6Xn
最先端のアルゴリズムで実用ライブラリを書く言語としてのC++はこの先100年安泰で、
ラッパ用スクリプトのPythonとはそもそも言語としての立ち位置が違うって話。
ラッパ用スクリプトのPythonとはそもそも言語としての立ち位置が違うって話。
2017/04/23(日) 22:22:19.93ID:mKAZq6VZ
100年後の言語ってどうなってんだろな
頭にチンポ型の伝送デバイスハメるだけでプログラミングできたりする?
頭にチンポ型の伝送デバイスハメるだけでプログラミングできたりする?
2017/04/23(日) 22:24:04.51ID:NBHRohTD
そりゃもう感応入力で思考の速度でプログラミングできてるだろう
言語はなくなってるかもしれん
言語はなくなってるかもしれん
55デフォルトの名無しさん
2017/04/23(日) 23:40:41.71ID:OBcWFFpc C++を今の地位から引きずり下ろすためにもRustには頑張って欲しいものだ
56デフォルトの名無しさん
2017/04/24(月) 00:14:14.60ID:Hq5/eqGq 言語がなくなる
科学がなくなる
数学がなくなる
こういう無数の可能性から一個選んで的中させるのはほぼ不可能だよな
科学がなくなる
数学がなくなる
こういう無数の可能性から一個選んで的中させるのはほぼ不可能だよな
2017/04/24(月) 00:21:20.12ID:lffXTkps
ID:bkkcl6Xnの発言は一番気が狂っていた頃のエンジニアガイジと似てるな
58デフォルトの名無しさん
2017/04/24(月) 00:26:31.35ID:6h5JoTUe >>36
早くネットワーク系のライブラリを標準で入れてくれぃ
早くネットワーク系のライブラリを標準で入れてくれぃ
2017/04/24(月) 00:33:57.43ID:6NGlh03T
ID:UJAzDyB2「C++は実用的な言語である。多次元配列がなくても実用的なプログラムでは困らない」
ID:bkkcl6Xn「私はID:UJAzDyB2である。C++は実用ライブラリを書くための言語だ」
なにこれ
ID:bkkcl6Xn「私はID:UJAzDyB2である。C++は実用ライブラリを書くための言語だ」
なにこれ
2017/04/24(月) 00:40:56.94ID:zwhieng4
>>50
多次元配列でチューニングすべきところなんかあるか?せいぜい格納方向が2通りあるくらいだろ。チューニング出来るものは一切搭載してないFortranにすらデフォルトで搭載されてる機能だぜ?
それにそれ言っちゃあSTLなんてどうなるんだよ? まさかSTLは使うけど多次元配列は自分で作るなんて言わないよなあ?
多次元配列でチューニングすべきところなんかあるか?せいぜい格納方向が2通りあるくらいだろ。チューニング出来るものは一切搭載してないFortranにすらデフォルトで搭載されてる機能だぜ?
それにそれ言っちゃあSTLなんてどうなるんだよ? まさかSTLは使うけど多次元配列は自分で作るなんて言わないよなあ?
2017/04/24(月) 00:56:56.87ID:FOMNUfbf
2017/04/24(月) 00:58:00.30ID:zwhieng4
2017/04/24(月) 01:04:22.49ID:FOMNUfbf
>>62
そりゃ自分の書くものに一番合うように書くから、あらゆるベンチを通すように丸く作られたSTLに全分野で勝てるわけないだろ。
そりゃ自分の書くものに一番合うように書くから、あらゆるベンチを通すように丸く作られたSTLに全分野で勝てるわけないだろ。
2017/04/24(月) 01:10:06.24ID:zwhieng4
>>63
この用途ならこれが一番速くて信頼性が高くて拡張性も優れていて、自分で書いてSTLを使わないコストという面でも釣り合いが取れるっていうのがあるってことだよな?
用途から自分で設定していいから書いてみろよ。
この用途ならこれが一番速くて信頼性が高くて拡張性も優れていて、自分で書いてSTLを使わないコストという面でも釣り合いが取れるっていうのがあるってことだよな?
用途から自分で設定していいから書いてみろよ。
2017/04/24(月) 01:16:51.68ID:lffXTkps
いや、そもそも多次元配列の話してたんだし、numpyを超えるスピード、信頼性の多次元配列を書いてもらうべきだな
2017/04/24(月) 01:19:28.66ID:p282pyvh
疎行列
2017/04/24(月) 01:22:28.66ID:zwhieng4
ああ、そもそもSTLで出来ないことを書いて「勝った」っていうのはなしだぞ。それこそ疎行列とかな
68デフォルトの名無しさん
2017/04/24(月) 01:30:31.10ID:p282pyvh ハッシュマップ
2017/04/24(月) 01:36:23.44ID:zwhieng4
ってか割と真面目にC++上で動く多次元配列欲しいんだけど
1〜5次元くらいまで同じインターフェースで動く奴作ろうとして、思いの外面倒だったから辞めてFortranに乗り換えたことあるんだよな
1〜5次元くらいまで同じインターフェースで動く奴作ろうとして、思いの外面倒だったから辞めてFortranに乗り換えたことあるんだよな
2017/04/24(月) 06:51:30.21ID:wCWPirmZ
>>42
亀だけど、C#って、C++++という意味を込めてるんだよ。
亀だけど、C#って、C++++という意味を込めてるんだよ。
71デフォルトの名無しさん
2017/04/24(月) 20:17:17.36ID:zyXx2ugF >>65
だよねぇ、多次元配列の操作で Python に勝るのは Fortran くらいしか思いつかないや
純粋手続き型言語の始祖である Fortran と、同じく純粋手続き型スクリプト言語である
Python、誰にも否定できない当然の結果だよね
もう、このスレでは次世代 Fortran は Python で決まり!!ってこと結論が出たね
だよねぇ、多次元配列の操作で Python に勝るのは Fortran くらいしか思いつかないや
純粋手続き型言語の始祖である Fortran と、同じく純粋手続き型スクリプト言語である
Python、誰にも否定できない当然の結果だよね
もう、このスレでは次世代 Fortran は Python で決まり!!ってこと結論が出たね
2017/04/24(月) 21:50:54.50ID:CyDBAtYH
その結論は何を表すの?
2017/04/24(月) 23:19:46.46ID:H47kwRKj
>>71
多次元配列操作で次世代言語を選ぶならJuliaだろう。
Python使いをJuliaに引き込むサンプル集
http://www.mwsoft.jp/programming/julia/python_to_julia.html
RユーザのためのJulia入門(行列編)
http://rishida.hatenablog.com/entry/2013/11/30/194733
多次元配列操作で次世代言語を選ぶならJuliaだろう。
Python使いをJuliaに引き込むサンプル集
http://www.mwsoft.jp/programming/julia/python_to_julia.html
RユーザのためのJulia入門(行列編)
http://rishida.hatenablog.com/entry/2013/11/30/194733
2017/04/24(月) 23:52:45.18ID:lffXTkps
Juliaのステマ貼るならせめて最新版の解説貼れよ
ないけどさ
ないけどさ
2017/04/25(火) 00:38:05.23ID:O6VBfE9R
2017/04/25(火) 02:23:12.66ID:wELv0O7d
言語オタクが重視する言語間の細かいシンタックスの差なんてどうでも良くて、
次世代言語に必要だったのは高速で便利な多次元配列だったってオチか
次世代言語に必要だったのは高速で便利な多次元配列だったってオチか
2017/04/25(火) 08:40:21.09ID:fJvGo7FT
>>75
Julia0.3の化石みたいな記事貼るなって意味だよ
Julia0.3の化石みたいな記事貼るなって意味だよ
2017/04/25(火) 10:54:45.65ID:niXLk7Hx
Juliaって化石なの?
2017/04/25(火) 10:55:45.34ID:cMLOigtr
0.3はね
そろそろ0.6
そろそろ0.6
80デフォルトの名無しさん
2017/04/25(火) 11:10:54.53ID:x9Sc69FW2017/04/25(火) 11:51:27.86ID:DZfkzF9H
RubyとPythonとか観てると文法より多次元配列やライブラリのが重要だと実感するが。
C#やJavaScriptにしても、簡潔に書けるとかじゃなくて何を作れる(サポートするプラットフォームの多さ)で選ばれてるし。
C#やJavaScriptにしても、簡潔に書けるとかじゃなくて何を作れる(サポートするプラットフォームの多さ)で選ばれてるし。
2017/04/25(火) 12:35:16.20ID:0RXyPjWo
利用者が多い・ライブラリが豊富って現在流行っているものの話でしょ
2017/04/25(火) 12:35:23.60ID:KAzBuoYA
多次元配列が重要って感覚がわからないんだけど、
どういう分野の人が使うの?
どういう分野の人が使うの?
84あ
2017/04/25(火) 12:49:25.85ID:m9LocPpZ 多次元配列ってジャグじゃないものの事だよな?
マクロ書いちゃえばいいんでないの?
アクセス演算子と大仰な言い方するが、要は単に掛け算なんだし。アライメントも揃えられるしさ。
適当な並べ方してるとメモリアクセスで悲しい思いをする気がする。特にどーんとクラスタに投げるときとか。
Fortranでもメモリマップ的には後ろの列からの順番になるから思い付きで並べると重いよ。
マクロ書いちゃえばいいんでないの?
アクセス演算子と大仰な言い方するが、要は単に掛け算なんだし。アライメントも揃えられるしさ。
適当な並べ方してるとメモリアクセスで悲しい思いをする気がする。特にどーんとクラスタに投げるときとか。
Fortranでもメモリマップ的には後ろの列からの順番になるから思い付きで並べると重いよ。
85あ
2017/04/25(火) 12:51:38.43ID:m9LocPpZ2017/04/25(火) 12:56:48.67ID:DZfkzF9H
>>82
Rubyが流行りそうになった時、RoRの登場で一躍有名になった。
Pythonにはそれに相当するものが無かった。
後に同じようなの出来たけど、Rubyを引き離すほどじゃ無かった。
Ruby1.9の時、互換性切り捨てでRuby自滅が決定打だった。
結果としてディープラーニング向けライブラリの登場で揺るぎない地位を得た。
文法はRuby1.9以降のが好きだし理に適ってる。
でも、世界的には終わった言語。
Rubyが流行りそうになった時、RoRの登場で一躍有名になった。
Pythonにはそれに相当するものが無かった。
後に同じようなの出来たけど、Rubyを引き離すほどじゃ無かった。
Ruby1.9の時、互換性切り捨てでRuby自滅が決定打だった。
結果としてディープラーニング向けライブラリの登場で揺るぎない地位を得た。
文法はRuby1.9以降のが好きだし理に適ってる。
でも、世界的には終わった言語。
87あ
2017/04/25(火) 13:06:52.92ID:m9LocPpZ Rubyは理想を追いかけ過ぎ。
自然言語で言えば、エッセイストは言語学者じゃないのに形態素に基づくなんとかかんとか、こういうしきたり、こういうルールってのを並べられてもって感じで、
しかも、言語学者側はそれを素晴らしいと絶賛してると言う狂った状態に近い。
英語なんかあんな破綻した闇仕様に溢れた言語
(例えば、Shipの口語の代名詞に失われた性を補完してsheを使う)なのに、
あんなに全世界で使われてるんだから。
言語なんて歯ブラシなんや、ってPHPの方が随分スタンスとして好き。
自然言語で言えば、エッセイストは言語学者じゃないのに形態素に基づくなんとかかんとか、こういうしきたり、こういうルールってのを並べられてもって感じで、
しかも、言語学者側はそれを素晴らしいと絶賛してると言う狂った状態に近い。
英語なんかあんな破綻した闇仕様に溢れた言語
(例えば、Shipの口語の代名詞に失われた性を補完してsheを使う)なのに、
あんなに全世界で使われてるんだから。
言語なんて歯ブラシなんや、ってPHPの方が随分スタンスとして好き。
88デフォルトの名無しさん
2017/04/25(火) 13:39:27.32ID:9lYWlQQl 次世代の定義と合わなくね?って書き込みになんでそんなレスがつくんだろ
2017/04/25(火) 13:59:47.20ID:DZfkzF9H
かつて次世代だった言語の栄枯盛衰から、次世代言語に何が必要かが分かると思って投下した。
90デフォルトの名無しさん
2017/04/25(火) 14:18:46.85ID:x9Sc69FW 文法は繁栄の原因にはならないけど互換性云々で衰退の原因になるんだ
2017/04/25(火) 14:54:40.56ID:3KXt8ND/
文法は繁栄の原因にもなり得たよ。
Rubyも注目された当初は簡単でなんでも出来る言語としてsmalltalk作ったけど、真のsmalltalkはRubyだったとかアラン・ケイも絶賛してたし、RoRもRubyの文法に惚れて作られた。
その後の保守戦略家で差が付いた。
Rubyも注目された当初は簡単でなんでも出来る言語としてsmalltalk作ったけど、真のsmalltalkはRubyだったとかアラン・ケイも絶賛してたし、RoRもRubyの文法に惚れて作られた。
その後の保守戦略家で差が付いた。
2017/04/25(火) 14:55:18.59ID:3KXt8ND/
x保守戦略家
o保守戦略
o保守戦略
94デフォルトの名無しさん
2017/04/25(火) 18:40:55.97ID:x9Sc69FW 戦略ってなんだろう
どうやって決めたかは教えないけど、成功とか失敗とか成果だけ教えてやるよって感じ
成果だけが重要と思っているからなのか
どうやって決めたかは教えないけど、成功とか失敗とか成果だけ教えてやるよって感じ
成果だけが重要と思っているからなのか
95デフォルトの名無しさん
2017/04/25(火) 18:52:57.84ID:e9WI/SQ5 >>86
>Ruby1.9の時、互換性切り捨てでRuby自滅が決定打だった。
互換性切り捨てってのは、これのこと?
http://echo.2ch.net/test/read.cgi/tech/1413113999/128
うーみゅ、確かに Hello world レベルのお題ですら動かなくなるようでは、
互換性切り捨てと批判されるのも仕方ないよね
>Ruby1.9の時、互換性切り捨てでRuby自滅が決定打だった。
互換性切り捨てってのは、これのこと?
http://echo.2ch.net/test/read.cgi/tech/1413113999/128
うーみゅ、確かに Hello world レベルのお題ですら動かなくなるようでは、
互換性切り捨てと批判されるのも仕方ないよね
2017/04/25(火) 19:19:36.86ID:gy+i7xO9
>>94
戦略って言っても、私が結果だけ見てそう判定しただけだがね。
結局、言語の開発管理側が業務で使われているって事実を重要と見たかどうかってだけ。
どっちも互換性切り捨ててるんだけど、Pythonはまだ旧バージョン系列サポート切ってないし、長々とアナウンスしてる。
戦略って言っても、私が結果だけ見てそう判定しただけだがね。
結局、言語の開発管理側が業務で使われているって事実を重要と見たかどうかってだけ。
どっちも互換性切り捨ててるんだけど、Pythonはまだ旧バージョン系列サポート切ってないし、長々とアナウンスしてる。
97デフォルトの名無しさん
2017/04/25(火) 19:40:02.70ID:e9WI/SQ5 訂正してあげるね
X:Pythonはまだ旧バージョン系列サポート切ってないし
O:Pythonはまだ旧バージョン系列サポート切れないし
Pythonはまだ新旧バージョンでの後方互換性切り捨てが災いして、
未だに旧バージョン系列から新バージョン系列へ移行できていないだけの話
だから旧バージョン系列サポートを切りたくても切れないってのが現実
http://blog-imgs-82.fc2.com/n/o/r/noriaki3/201508310726369c2.jpg
X:Pythonはまだ旧バージョン系列サポート切ってないし
O:Pythonはまだ旧バージョン系列サポート切れないし
Pythonはまだ新旧バージョンでの後方互換性切り捨てが災いして、
未だに旧バージョン系列から新バージョン系列へ移行できていないだけの話
だから旧バージョン系列サポートを切りたくても切れないってのが現実
http://blog-imgs-82.fc2.com/n/o/r/noriaki3/201508310726369c2.jpg
2017/04/25(火) 20:00:00.53ID:DCpQVXaD
それが企業に好感持たれてる現実。
強行したRubyはどうなったよ。
強行したRubyはどうなったよ。
99デフォルトの名無しさん
2017/04/25(火) 20:09:39.00ID:e9WI/SQ5 こうなった
http://echo.2ch.net/test/read.cgi/tech/1486026729/900
ところで、Rubyの互換性切り捨てとは具体的には何を指しているのかな?
少なくとも Hello world レベルであれば、RoR登場以前の 1.6 から最新の 2.2 に至るまで、
Ruby であれば Syntax Error にならず正常動作するから互換性は維持されているけどね
http://echo.2ch.net/test/read.cgi/tech/1486026729/900
ところで、Rubyの互換性切り捨てとは具体的には何を指しているのかな?
少なくとも Hello world レベルであれば、RoR登場以前の 1.6 から最新の 2.2 に至るまで、
Ruby であれば Syntax Error にならず正常動作するから互換性は維持されているけどね
>>87
うーん,LL(1)に徹している pascal が古今東西素晴らしいとおもっているんだが‥ruby ってそんなにすごいの?
うーん,LL(1)に徹している pascal が古今東西素晴らしいとおもっているんだが‥ruby ってそんなにすごいの?
101デフォルトの名無しさん
2017/04/25(火) 20:37:45.43ID:KIIhfRh7 Rubyが理想を追いかけてるとか、苦笑しか出てこない。
102デフォルトの名無しさん
2017/04/25(火) 20:45:57.84ID:MvOKB5m4104デフォルトの名無しさん
2017/04/25(火) 21:16:47.80ID:qd1hD0YR 結局、キャットドア問題解決できなかったしね
105デフォルトの名無しさん
2017/04/25(火) 22:43:32.29ID:lEn+EjQK python3 とか好きじゃないんだよな。。
1/ 2 = 0.5
とか型が弱くなる方向に修正したんだか。。
明示的に書かせるのが python の良さなのにそれと逆行しようとしてるのが好きになれん。
1/ 2 = 0.5
とか型が弱くなる方向に修正したんだか。。
明示的に書かせるのが python の良さなのにそれと逆行しようとしてるのが好きになれん。
106あ
2017/04/25(火) 23:45:33.40ID:RguWTiRy >>100
pascalは素晴らしいと思うよ。俺も。
いつの間にか呼ばれてるto_intみたいな馬鹿な仕様もないし。
あれは理想ではなくて現実。
>>101
追いかけてるだろー。
「Objectには不要なものが多すぎる、好ましくない。でも、互換性失いたくない。
そうだ、Objectの親にBasicObjectを作って白紙のオブジェクトとしよう」
なんてまともな神経してたらちょっと思いついたけど敢えて忘れるレベルの実装をマジでやった上に、
一番やめてほしい==の実装をBasicObjectに持ってったんだぞ。
気が狂ってる。
わざわざtrueClassやらnilClass作ってたのが原理主義っぽくて良かったのに。
n = true if false
で、nがnilになるのもおかしい。
n = n+1でnilに+はねえよってメッセージの原因だけど、こればっかりは異常。
pascalは素晴らしいと思うよ。俺も。
いつの間にか呼ばれてるto_intみたいな馬鹿な仕様もないし。
あれは理想ではなくて現実。
>>101
追いかけてるだろー。
「Objectには不要なものが多すぎる、好ましくない。でも、互換性失いたくない。
そうだ、Objectの親にBasicObjectを作って白紙のオブジェクトとしよう」
なんてまともな神経してたらちょっと思いついたけど敢えて忘れるレベルの実装をマジでやった上に、
一番やめてほしい==の実装をBasicObjectに持ってったんだぞ。
気が狂ってる。
わざわざtrueClassやらnilClass作ってたのが原理主義っぽくて良かったのに。
n = true if false
で、nがnilになるのもおかしい。
n = n+1でnilに+はねえよってメッセージの原因だけど、こればっかりは異常。
107デフォルトの名無しさん
2017/04/25(火) 23:47:17.89ID:qd1hD0YR108あ
2017/04/25(火) 23:50:40.24ID:RguWTiRy メッセージパッシングで大枠作ったのにな
そもそも、クラスを破壊せずに機能追加せよ、って矛盾した設問がおかしい事にまだ気づかんのかなぁ。
そもそも、クラスを破壊せずに機能追加せよ、って矛盾した設問がおかしい事にまだ気づかんのかなぁ。
109デフォルトの名無しさん
2017/04/26(水) 00:00:43.82ID:T5a4wmc6110デフォルトの名無しさん
2017/04/26(水) 00:34:00.42ID:Boe/ixbX111デフォルトの名無しさん
2017/04/26(水) 00:43:56.99ID:9BTWZVlt112デフォルトの名無しさん
2017/04/26(水) 03:53:03.15ID:2ISuU/qN スレタイからElixir抜いた奴俺の許可とったの?
113101
2017/04/26(水) 04:48:11.60ID:gEnKLRTK >>106
Objectクラスの親クラスにProtoObjectクラスがあるのも、
==をProtoObjectで実装するのも、
TrueクラスやUndefinedObjectクラスがあるのも、
false ifTrue: [true]がnilになるのも、
みんなSmalltalkでは理想どころじゃない、
ProtoObjectは90年代のOO普及期からずっと当たり前のこと、
それ以外は80年代のOO黎明期からずっと当たり前のことだが、
どこがどう理想なのか、どこがどう次世代なのか、教えてくれよ。
Objectクラスの親クラスにProtoObjectクラスがあるのも、
==をProtoObjectで実装するのも、
TrueクラスやUndefinedObjectクラスがあるのも、
false ifTrue: [true]がnilになるのも、
みんなSmalltalkでは理想どころじゃない、
ProtoObjectは90年代のOO普及期からずっと当たり前のこと、
それ以外は80年代のOO黎明期からずっと当たり前のことだが、
どこがどう理想なのか、どこがどう次世代なのか、教えてくれよ。
114ich1
2017/04/26(水) 07:20:16.12ID:KcpaNie5115デフォルトの名無しさん
2017/04/26(水) 07:22:08.94ID:xY5d2zmE 「うろ覚え」の誤り。「うろ覚え」は、はっきりと覚えていない様子を意味する語。空洞を意味する「うろ」が、文字や音の似た「うる」に置き換わって生じたといわれている。ネットスラングとしては、「ふいんき」と同様に、誤記を承知で敢えて用いられる例が見られる。
ネットスラングとしては、「ふいんき」と同様に、誤記を承知で敢えて用いられる例が見られる。
ネットスラングとしては、「ふいんき」と同様に、誤記を承知で敢えて用いられる例が見られる。
ネットスラングとしては、「ふいんき」と同様に、誤記を承知で敢えて用いられる例が見られる。
ネットスラングとしては、「ふいんき」と同様に、誤記を承知で敢えて用いられる例が見られる。
116デフォルトの名無しさん
2017/04/26(水) 08:01:30.06ID:70MJdvvC117デフォルトの名無しさん
2017/04/26(水) 08:02:47.44ID:GreYiU3v >>71
Python の配列って、list でしょ?
Python の配列って、list でしょ?
118あ
2017/04/26(水) 08:27:05.94ID:aLqmc7M7 >>113
だから、理想に走りすぎで現実見えてないって言ってるの。その論調だとsmailltalkが自然で目指すべきだと聞こえるが?俺はそうは思わないけど。
泥の中の蓮的な理想感はあるが、実際にはそんな物が必要ならそれこそRubyなんか使ったら劣化コピーで気持ち悪いものをこねくり回して満足してる学者大先生と同じ。
エスペラント語を素晴らしいと言いはって、エスペラント語でエッセイ書くようなもんだ。書いてみりゃわかるが、無謀だよ。
正しくしか書けないし、元の発想が比喩で作られてるようなもんだから、比喩表現は比喩の比喩になってもう意味がわからない姿になる。
永遠に次世代になりたくて、実は永遠に次世代ではない。
だから、理想に走りすぎで現実見えてないって言ってるの。その論調だとsmailltalkが自然で目指すべきだと聞こえるが?俺はそうは思わないけど。
泥の中の蓮的な理想感はあるが、実際にはそんな物が必要ならそれこそRubyなんか使ったら劣化コピーで気持ち悪いものをこねくり回して満足してる学者大先生と同じ。
エスペラント語を素晴らしいと言いはって、エスペラント語でエッセイ書くようなもんだ。書いてみりゃわかるが、無謀だよ。
正しくしか書けないし、元の発想が比喩で作られてるようなもんだから、比喩表現は比喩の比喩になってもう意味がわからない姿になる。
永遠に次世代になりたくて、実は永遠に次世代ではない。
119デフォルトの名無しさん
2017/04/26(水) 09:01:42.16ID:uVr9LBvI エッセイなら正しく書けばいいだろ。
ポエムは難しいけど。
ポエムは難しいけど。
120デフォルトの名無しさん
2017/04/26(水) 09:43:39.33ID:A4NmaPdj >>111
思い出したよ。
Stringクラスからeachメソッド無くなって、each_lineとかeach_charsになったんだ。
お陰で配列と同じように扱ってたのが、文字列だけ別扱いになったから、ダックタイピング出来なくなった。
あと文字コードの扱いとか。
詳細はこっち。
https://www.oreilly.co.jp/community/blog/2009/05/changes-on-ruby-1-9.html
思い出したよ。
Stringクラスからeachメソッド無くなって、each_lineとかeach_charsになったんだ。
お陰で配列と同じように扱ってたのが、文字列だけ別扱いになったから、ダックタイピング出来なくなった。
あと文字コードの扱いとか。
詳細はこっち。
https://www.oreilly.co.jp/community/blog/2009/05/changes-on-ruby-1-9.html
121デフォルトの名無しさん
2017/04/26(水) 10:59:41.81ID:pV6k193k スクリプトは純粋仮想関数が無意味だからクラスの意味をこじつけるのが大変
Pythonのクラスは演算子を定義する機能のような印象
Pythonのクラスは演算子を定義する機能のような印象
122あ
2017/04/26(水) 12:47:25.64ID:aLqmc7M7123デフォルトの名無しさん
2017/04/26(水) 13:48:30.98ID:pV6k193k 経験則
表音文字に依存するな、記号に依存しろ
表音文字に依存するな、記号に依存しろ
124デフォルトの名無しさん
2017/04/26(水) 15:44:49.66ID:TQfkYYQc (みんなあってもよくね?と思ってたはずなのに)
ずっとクラスベースを拒否し続けたJavaScriptも
ある意味プロトタイプベースの理想を追い続けてるような
ずっとクラスベースを拒否し続けたJavaScriptも
ある意味プロトタイプベースの理想を追い続けてるような
125あ
2017/04/26(水) 16:06:30.69ID:aLqmc7M7126デフォルトの名無しさん
2017/04/26(水) 21:50:24.12ID:SZlYFMhx >>98
>それが企業に好感持たれてる現実。
Hello world すら Syntax Error になってしまう(>>95)ほどの壊滅的な
後方互換性切り捨てを強行してなお旧バージョンのサポート打ち切りなんて、
常識的な企業倫理からはありえないだろ
そんな対応を指して「好感」という言葉は冷酷な皮肉でしかない
あるいは、過去に Hello world がバージョンアップで動かなくなったメジャー言語が存在するの?
print が文なのか関数なのかという言語とライブラリ設計における根源的な決定、
言い換えると入出力処理は構文で実現すべきなのか(すなわち文)、それとも
ライブラリで提供すべきなのか(すなわち関数または手続き)という言語設計の哲学、
そんな初歩的な判断すらできない人物によって行き当たりばったりに設計されたのが
Python だろ
>それが企業に好感持たれてる現実。
Hello world すら Syntax Error になってしまう(>>95)ほどの壊滅的な
後方互換性切り捨てを強行してなお旧バージョンのサポート打ち切りなんて、
常識的な企業倫理からはありえないだろ
そんな対応を指して「好感」という言葉は冷酷な皮肉でしかない
あるいは、過去に Hello world がバージョンアップで動かなくなったメジャー言語が存在するの?
print が文なのか関数なのかという言語とライブラリ設計における根源的な決定、
言い換えると入出力処理は構文で実現すべきなのか(すなわち文)、それとも
ライブラリで提供すべきなのか(すなわち関数または手続き)という言語設計の哲学、
そんな初歩的な判断すらできない人物によって行き当たりばったりに設計されたのが
Python だろ
127デフォルトの名無しさん
2017/04/26(水) 22:30:36.25ID:SZlYFMhx >>120
$ irb1.9
irb(main):001:0> "abc".each { |x| p x }
NoMethodError: undefined method `each' for "abc":String
from (irb):1
from /usr/bin/irb:12:in `<main>'
うん、確かに実行時エラーになった
では、ここで呪文を唱えてみよう
irb(main):002:0> class String; alias :each :each_char; end
=> nil
irb(main):003:0> "abc".each { |x| p x }
"a"
"b"
"c"
=> "abc"
irb(main):004:0>
あれ、おかしいなあ、Ruby 1.9 の String クラスなのに、Ruby 1.8 と同じく
配列と同じように扱えるようになったぞ、しかも元のコードは一切改変されていない
いったいどうなってるんだあ…
$ irb1.9
irb(main):001:0> "abc".each { |x| p x }
NoMethodError: undefined method `each' for "abc":String
from (irb):1
from /usr/bin/irb:12:in `<main>'
うん、確かに実行時エラーになった
では、ここで呪文を唱えてみよう
irb(main):002:0> class String; alias :each :each_char; end
=> nil
irb(main):003:0> "abc".each { |x| p x }
"a"
"b"
"c"
=> "abc"
irb(main):004:0>
あれ、おかしいなあ、Ruby 1.9 の String クラスなのに、Ruby 1.8 と同じく
配列と同じように扱えるようになったぞ、しかも元のコードは一切改変されていない
いったいどうなってるんだあ…
128あ
2017/04/26(水) 23:16:03.93ID:WASTpqE2 メソッド生やしてしまえる事自体がオブジェクト指向でも何でもない気持ち悪さ。
129デフォルトの名無しさん
2017/04/27(木) 00:01:25.31ID:GJNrvvrA Open Class だろ。モンキーパッチ
130デフォルトの名無しさん
2017/04/27(木) 00:31:22.08ID:1+VMbtmi >>128
その理屈だとSmalltalkはオブジェクト指向じゃなくてなんだったんだ?
その理屈だとSmalltalkはオブジェクト指向じゃなくてなんだったんだ?
131デフォルトの名無しさん
2017/04/27(木) 00:39:07.48ID:NvHKpotz Stringは定数ではなくグローバル変数のように改変される
全ての関数をクラスという箱に入れた結果全てが事実上のグローバル変数になった
全ての関数をクラスという箱に入れた結果全てが事実上のグローバル変数になった
132デフォルトの名無しさん
2017/04/27(木) 00:55:55.98ID:jbk1ehAe >>131
見方によってはそう(グローバル変数)なんだよね。
スコープは狭い方が良い。
正直オープクラスはイマイチと思うのだが、でもjavascript はそのおかげでpolyfillとかできるんだよな。
見方によってはそう(グローバル変数)なんだよね。
スコープは狭い方が良い。
正直オープクラスはイマイチと思うのだが、でもjavascript はそのおかげでpolyfillとかできるんだよな。
134デフォルトの名無しさん
2017/04/27(木) 02:05:35.72ID:XheCn2mn >>133
記法の問題ってこと?
記法の問題ってこと?
135デフォルトの名無しさん
2017/04/27(木) 07:23:11.77ID:1+VMbtmi136デフォルトの名無しさん
2017/04/27(木) 07:38:57.38ID:0Df9bF2U Smalltalkがウンコ過ぎて世間からそっぽ向かれて死滅したんだから
後追いのRubyも死滅するのは歴史が証明している
後追いのRubyも死滅するのは歴史が証明している
138デフォルトの名無しさん
2017/04/27(木) 08:28:33.27ID:/s/zy9NN まさか、rubyがADT拡張としてのOOPLだと思ってる?
139デフォルトの名無しさん
2017/04/27(木) 08:44:30.71ID:N3r3uYtr >>136
死滅したとか記憶から消し去りたいロートルがいる一方でスタートアップで勝負をかける奇特な人もいる
http://pharo.org/success/AllStocker
スタートアップ界の異端児!産業機器 x IT x SmalltalkのSORABITO株式会社
https://thepedia.co/article/1068/
Smalltalkのとらえ方は人それぞれやね
死滅したとか記憶から消し去りたいロートルがいる一方でスタートアップで勝負をかける奇特な人もいる
http://pharo.org/success/AllStocker
スタートアップ界の異端児!産業機器 x IT x SmalltalkのSORABITO株式会社
https://thepedia.co/article/1068/
Smalltalkのとらえ方は人それぞれやね
140デフォルトの名無しさん
2017/04/27(木) 08:58:08.10ID:/s/zy9NN Smalltalkはうんこすぎて死滅したと2ちゃんでクダ巻いてるだけの爺さんを横目に、
今日もSmalltalkが世界の海上コンテナ輸送の30%を捌いているわけだが。
今日もSmalltalkが世界の海上コンテナ輸送の30%を捌いているわけだが。
141デフォルトの名無しさん
2017/04/27(木) 09:17:39.03ID:N3r3uYtr >>140
OOCLのことを言っているんなら、あれってJavaに置き換えられたんじゃないの?
Who uses Smalltalk? : programming - Reddit
https://www.reddit.com/r/programming/comments/3wv7ik/who_uses_smalltalk/cxzzhkp/
OOCLのことを言っているんなら、あれってJavaに置き換えられたんじゃないの?
Who uses Smalltalk? : programming - Reddit
https://www.reddit.com/r/programming/comments/3wv7ik/who_uses_smalltalk/cxzzhkp/
142デフォルトの名無しさん
2017/04/27(木) 09:25:15.12ID:wBdpEusi143デフォルトの名無しさん
2017/04/27(木) 10:07:04.57ID:Cz6WFEXA 爺さん批判してる奴の知識が爺さんだったか
144デフォルトの名無しさん
2017/04/27(木) 10:10:47.76ID:sNquU9cU Smalltalkがどうこう以前にファンやアンチがうんこすぎてわらた
145デフォルトの名無しさん
2017/04/27(木) 10:12:00.41ID:/ppzzK1q Smalltalk信者とHaskell信者はよく似てる
146デフォルトの名無しさん
2017/04/27(木) 12:35:13.63ID:/s/zy9NN >>141
よく読め。再実装されたのはUIだけだ。あほか?
よく読め。再実装されたのはUIだけだ。あほか?
147デフォルトの名無しさん
2017/04/27(木) 13:02:15.04ID:jfFmbm9g >>146
なんでとても素晴らしいsmalltalkで再実装されなかったの?
なんでとても素晴らしいsmalltalkで再実装されなかったの?
148デフォルトの名無しさん
2017/04/27(木) 13:17:16.51ID:+ggBtOYn おそらく同じ言語で再実装するとeachをeach_charに変えたくなるから
そんなことするなら言語ごと変えた方が良い
そんなことするなら言語ごと変えた方が良い
149デフォルトの名無しさん
2017/04/27(木) 14:09:11.99ID:Yjb8fh0C >>147
Smalltalk は開発環境含めてあまりにオールインワン過ぎるから。
Smalltalk は開発環境含めてあまりにオールインワン過ぎるから。
150デフォルトの名無しさん
2017/04/27(木) 17:05:36.01ID:sNquU9cU >>146
そんなどーでもいいことより30%シェア撤回マダー
そんなどーでもいいことより30%シェア撤回マダー
151デフォルトの名無しさん
2017/04/27(木) 20:07:13.14ID:PwOPvcNg どーでもいいな、クソくだらねえ。
152デフォルトの名無しさん
2017/04/27(木) 20:28:54.10ID:zXLo9cW8 もう死んでる言語を追い詰めても仕方ないよな
死体蹴りは良くない
死体蹴りは良くない
153デフォルトの名無しさん
2017/04/27(木) 22:14:26.81ID:McKGSVbG もう風化してて蹴るものもないと思ったのに
154デフォルトの名無しさん
2017/04/27(木) 22:36:43.95ID:+ggBtOYn 風化すればまた再発明される
過去に同じことがあったと口で言っても証拠が残ってなければ同じことが繰り返される
過去に同じことがあったと口で言っても証拠が残ってなければ同じことが繰り返される
155デフォルトの名無しさん
2017/04/27(木) 23:26:29.59ID:Yjb8fh0C 死んだ言語の死んだ理由ってのは新しい言語の糞機能アピールよりかは勉強にはなる。
156デフォルトの名無しさん
2017/04/28(金) 08:28:08.68ID:WPyfQjET157デフォルトの名無しさん
2017/04/28(金) 08:55:25.45ID:j+L8+G8p SmallTalkガイジって一番ガイジだった頃のエンジニアガイジとちょっと似てるな
159デフォルトの名無しさん
2017/04/28(金) 20:19:57.31ID:j+L8+G8p >>158
最近文読みやすくなってきてるしちょっとええ感じやで
最近文読みやすくなってきてるしちょっとええ感じやで
160あ
2017/04/28(金) 20:29:25.20ID:0gV62uUk >>159
まぁ具体的に「パラグラフが長い」「言い回しがくどい」と言われたら、
なるほどと思うし、ちょっと気を付けられるからな。
読みにくい、ガイジか!とだけ言われたら、読みにくいだけならしっかり読めとしか言いたくなくなる。
まぁ具体的に「パラグラフが長い」「言い回しがくどい」と言われたら、
なるほどと思うし、ちょっと気を付けられるからな。
読みにくい、ガイジか!とだけ言われたら、読みにくいだけならしっかり読めとしか言いたくなくなる。
161デフォルトの名無しさん
2017/04/29(土) 02:55:48.56ID:R+WhfS42 シミュレーションをより簡略に作成するための新言語開発を。
「ロボットは東大に入れるか」成果報告会 in 2016(11/14)レポート
http://blog.livedoor.jp/dg_law/archives/52354118.html
これからはシミュレーションシステムの構築が簡略化されるので、来年のセンター物理は大きく得点が伸びるに違いない。
スーパーコンピュータでの計算に必要となるプログラムはときに数十万行にも及び、作成やチューニングは大変困難です。
一方で、原理的にはシミュレーションしたい自然現象とその離散化法(注2)を指定すれば、プログラムは機械的に生成できます。
しかし、プログラミングはシミュレーションとコンピュータ双方に深い知識が必要となる非常に高度な作業であり、多数の計算機を
協調して動作させるスーパーコンピュータの性能を引き出す高度なプログラムを、自動かつ汎用的に生成することは不可能でした。
そこで共同研究グループは、方程式がプログラムに変換されるまでの一連の段階に対応する数学的定義を作りました。
スーパーコンピュータが持つ階層のすべての段階において、自然が元来備えている「並列性」と「局所性」(注3)を保持する変換
を厳密に定めることで、新たなプログラミング言語「Formura」を開発しました。これによって、これまで不可能だったプログラミング
の機械化に成功しました。さらにFormuraは、同じアプリケーションに対して何万通りものプログラムを試し、最も速かったものを自動的に選択します。
Formuraを開発したことで、規則格子シミュレーション(注4)分野においては、自然科学者が慣れ親しんだ方程式の記法を使ってシミュレーション
したい対象を記述することで、スーパーコンピュータの性能を引き出すための高度なプログラムが自動的に作成できるようになりました。
気象、地震、宇宙、生態ネットワークの研究など、規則格子シミュレーションを用いる分野の研究の加速が期待できます。
http://pr.fujitsu.com/jp/news/2016/12/2.html
「ロボットは東大に入れるか」成果報告会 in 2016(11/14)レポート
http://blog.livedoor.jp/dg_law/archives/52354118.html
これからはシミュレーションシステムの構築が簡略化されるので、来年のセンター物理は大きく得点が伸びるに違いない。
スーパーコンピュータでの計算に必要となるプログラムはときに数十万行にも及び、作成やチューニングは大変困難です。
一方で、原理的にはシミュレーションしたい自然現象とその離散化法(注2)を指定すれば、プログラムは機械的に生成できます。
しかし、プログラミングはシミュレーションとコンピュータ双方に深い知識が必要となる非常に高度な作業であり、多数の計算機を
協調して動作させるスーパーコンピュータの性能を引き出す高度なプログラムを、自動かつ汎用的に生成することは不可能でした。
そこで共同研究グループは、方程式がプログラムに変換されるまでの一連の段階に対応する数学的定義を作りました。
スーパーコンピュータが持つ階層のすべての段階において、自然が元来備えている「並列性」と「局所性」(注3)を保持する変換
を厳密に定めることで、新たなプログラミング言語「Formura」を開発しました。これによって、これまで不可能だったプログラミング
の機械化に成功しました。さらにFormuraは、同じアプリケーションに対して何万通りものプログラムを試し、最も速かったものを自動的に選択します。
Formuraを開発したことで、規則格子シミュレーション(注4)分野においては、自然科学者が慣れ親しんだ方程式の記法を使ってシミュレーション
したい対象を記述することで、スーパーコンピュータの性能を引き出すための高度なプログラムが自動的に作成できるようになりました。
気象、地震、宇宙、生態ネットワークの研究など、規則格子シミュレーションを用いる分野の研究の加速が期待できます。
http://pr.fujitsu.com/jp/news/2016/12/2.html
162あ
2017/04/29(土) 12:11:59.50ID:R/nsoadB 投機ベースは確かに分野限られるし、実用例と先端の研究者が解離してる典型だわなぁ。
「5%の不良率で100個発注したら当たり前のように105個納品されてくるようなどっかのおおざっぱな国の発想だ」
と、日本の会社だと反発されるやつ。
ナップサックとか問題持ち出して、モノによっては泥臭く計算せなあかんのやと言うのと、
次は百万台でやっても一つのタスクの不可分な時間以下にはならんのだよ、
を説明して説得して導入するようなものだから。
トポロジ解析と図面生成か何かで原始的なそれやった事ある。
「5%の不良率で100個発注したら当たり前のように105個納品されてくるようなどっかのおおざっぱな国の発想だ」
と、日本の会社だと反発されるやつ。
ナップサックとか問題持ち出して、モノによっては泥臭く計算せなあかんのやと言うのと、
次は百万台でやっても一つのタスクの不可分な時間以下にはならんのだよ、
を説明して説得して導入するようなものだから。
トポロジ解析と図面生成か何かで原始的なそれやった事ある。
163デフォルトの名無しさん
2017/04/29(土) 13:21:11.09ID:rB0Fvmgg >>161
多くの深層学習フレームワークはNN構造をPythonなどで記述すると
それをテンソルの計算グラフに変換してGPUで高速計算してくれる。
NN構造や規則格子をさらに簡略に記述したければJuliaがある。
Fomuraの20行のシミュレーション記述も既存の言語でできるはずだ。
つまりシミュレーションをより簡略に作成するために新言語は必要ない。
必要なのは用途毎のフレームワークだ。
多くの深層学習フレームワークはNN構造をPythonなどで記述すると
それをテンソルの計算グラフに変換してGPUで高速計算してくれる。
NN構造や規則格子をさらに簡略に記述したければJuliaがある。
Fomuraの20行のシミュレーション記述も既存の言語でできるはずだ。
つまりシミュレーションをより簡略に作成するために新言語は必要ない。
必要なのは用途毎のフレームワークだ。
164デフォルトの名無しさん
2017/04/29(土) 18:34:55.63ID:n+S+CElE 発展し続ける言語とゴミ屑同然に忘れ去られる言語、何が違うんだろうなぁ
165デフォルトの名無しさん
2017/04/29(土) 19:09:01.68ID:0nTkChzC 言語の良さを理解して使い続けられる人と、ゴミ屑同然の脳みそですぐに忘れ去ってしまう人、何が違うんだろうなぁ
166デフォルトの名無しさん
2017/04/30(日) 00:13:09.75ID:feM/rwNV167デフォルトの名無しさん
2017/04/30(日) 01:03:20.38ID:E30HxT2S >>164
いろんなプログラム言語を開発しておいて、その上で『良いとこ取り』で新言語を開発する。
いろんなプログラム言語を開発しておいて、その上で『良いとこ取り』で新言語を開発する。
168デフォルトの名無しさん
2017/04/30(日) 01:49:39.39ID:9UtCfcRf >>164 バックでしょ
Goはグーグル発じゃなかったら「今どき継承もない言語作ったのかよ?w」で即死
Goはグーグル発じゃなかったら「今どき継承もない言語作ったのかよ?w」で即死
169デフォルトの名無しさん
2017/04/30(日) 01:50:36.87ID:2awuHSHC >>167
なおScala
なおScala
170デフォルトの名無しさん
2017/04/30(日) 09:42:21.85ID:QitJ8eBZ171デフォルトの名無しさん
2017/04/30(日) 10:18:39.25ID:H2bTIgd1 どんだけバックが大きくてゴリ押ししても
死ぬときは死ぬ
Dartとか
死ぬときは死ぬ
Dartとか
172デフォルトの名無しさん
2017/04/30(日) 12:02:29.80ID:kLDfBj4F >>168 >>170
Goは文法が簡単で高性能という特徴がある。
おかげで文法は簡単だが低性能な言語から移行しやすい。
だから難しい言語が選ばれない所で活躍している。
Gopherの道を歩む – Node.jsからGo言語への移行
http://postd.cc/the-way-of-the-gopher/
Go言語の低レイテンシGC実現のための取り組み
http://postd.cc/gos-march-to-low-latency-gc/
Goは文法が簡単で高性能という特徴がある。
おかげで文法は簡単だが低性能な言語から移行しやすい。
だから難しい言語が選ばれない所で活躍している。
Gopherの道を歩む – Node.jsからGo言語への移行
http://postd.cc/the-way-of-the-gopher/
Go言語の低レイテンシGC実現のための取り組み
http://postd.cc/gos-march-to-low-latency-gc/
173デフォルトの名無しさん
2017/04/30(日) 15:36:43.63ID:4Q8qZxsi Goって手続き型だろ?
Mainに集中して必要な機能呼び出すだけでいいんだから設計書なしで良さそう
Mainに集中して必要な機能呼び出すだけでいいんだから設計書なしで良さそう
174デフォルトの名無しさん
2017/05/02(火) 06:00:14.79ID:IDWdkJdY Mathematica 11.1 | 2017年4月(日本語版) 詳細 ≫
バージョン11.1では,機械学習,ニューラルネットワーク, 音声処理,ロバストな記述統計等の分野における
MathematicaおよびWolfram言語の最先端機能が拡張されています.
広範な応用分野に加わった,130を超える新関数
ニューラルネットワークの新しい20種類の層の追加,および再帰型ネットワークと可変長シーケンスのシームレスなサポート
NetModelにより,増加し続ける完全なニューラルネットワーク(訓練されたものとされていないものを含む)のリポジトリにアクセス
データ,画像,テキスト等の空間を機械学習ベースで可視化するFeatureSpacePlot
SequencePredict,ActiveClassification,ActivePredictionを含む,新しい機械学習関数
AudioCaptureを使って音声を直接ノートブック内で録音することによって,すぐに処理・解析することが可能に
2Dおよび3D画像に対する,*,-等を使った計算が可能に
計算写真学と計算顕微鏡学に対するサポートの拡張
ImageGraphicsを使って,ビットマップのベクトルグラフィックスによる近似を求める
HilbertCurveやSierpinskiMesh等の空間充填およびフラクタル領域コンストラクタ
WinsorizedMean, SpatialMedianを含む,新しいロバスト統計と空間統計
新しいGeoBubbleChartと,Callout,ScalingFunctions等のサポートの拡張
記号次数を持つ導関数のサポート
解像度が高くなった標高データ
シームレスに統合されたWeb検索,Web画像検索,テキスト翻訳のための外部サービス
セッション間の値をローカル,あるいはクラウド等に保存するための,幅広いPersistentValueシステム
クラウド内で個別に編集できるノートブックをシームレスに配布するためのAutoCopy
ノートブックベースのスクリプトエディタを使ったWolframScriptの.wlsファイルの生成
Wolfram言語スクリプトの自動実行がWindowsでも可能に
ドキュメントセンターおよびオンラインの例題すべてが新しくレスポンシブデザインに
https://www.wolfram.com/mathematica/quick-revision-history.ja.html?footer=lang
バージョン11.1では,機械学習,ニューラルネットワーク, 音声処理,ロバストな記述統計等の分野における
MathematicaおよびWolfram言語の最先端機能が拡張されています.
広範な応用分野に加わった,130を超える新関数
ニューラルネットワークの新しい20種類の層の追加,および再帰型ネットワークと可変長シーケンスのシームレスなサポート
NetModelにより,増加し続ける完全なニューラルネットワーク(訓練されたものとされていないものを含む)のリポジトリにアクセス
データ,画像,テキスト等の空間を機械学習ベースで可視化するFeatureSpacePlot
SequencePredict,ActiveClassification,ActivePredictionを含む,新しい機械学習関数
AudioCaptureを使って音声を直接ノートブック内で録音することによって,すぐに処理・解析することが可能に
2Dおよび3D画像に対する,*,-等を使った計算が可能に
計算写真学と計算顕微鏡学に対するサポートの拡張
ImageGraphicsを使って,ビットマップのベクトルグラフィックスによる近似を求める
HilbertCurveやSierpinskiMesh等の空間充填およびフラクタル領域コンストラクタ
WinsorizedMean, SpatialMedianを含む,新しいロバスト統計と空間統計
新しいGeoBubbleChartと,Callout,ScalingFunctions等のサポートの拡張
記号次数を持つ導関数のサポート
解像度が高くなった標高データ
シームレスに統合されたWeb検索,Web画像検索,テキスト翻訳のための外部サービス
セッション間の値をローカル,あるいはクラウド等に保存するための,幅広いPersistentValueシステム
クラウド内で個別に編集できるノートブックをシームレスに配布するためのAutoCopy
ノートブックベースのスクリプトエディタを使ったWolframScriptの.wlsファイルの生成
Wolfram言語スクリプトの自動実行がWindowsでも可能に
ドキュメントセンターおよびオンラインの例題すべてが新しくレスポンシブデザインに
https://www.wolfram.com/mathematica/quick-revision-history.ja.html?footer=lang
175デフォルトの名無しさん
2017/05/02(火) 06:54:00.89ID:hkg4cpdn 回転放物面の方程式と東大の問題
http://mathtrain.jp/kaitenhobutsu
「放物線 y = 3/4 - x^2」
を
「y軸の回りに回転させる」
・・・例えば、こういう操作ができる3次元CADって開発されてないんですか?
統計的機械翻訳では自然言語処理は無理という話も聞いているけれど、高校数学でやることは内容が限られており、
一般的な機械翻訳よりは難易度は低いと思われます。
http://mathtrain.jp/kaitenhobutsu
「放物線 y = 3/4 - x^2」
を
「y軸の回りに回転させる」
・・・例えば、こういう操作ができる3次元CADって開発されてないんですか?
統計的機械翻訳では自然言語処理は無理という話も聞いているけれど、高校数学でやることは内容が限られており、
一般的な機械翻訳よりは難易度は低いと思われます。
176デフォルトの名無しさん
2017/05/02(火) 07:13:28.68ID:iysKcMgd 3次元CADを名乗っていて回転体を作れないもののほうが珍しいと思うが、
その問題を解けるCADは多くないだろうな。
近似的な数値解が求まることと、解を方程式で表して数式処理できることは全くの別物。
その問題を解けるCADは多くないだろうな。
近似的な数値解が求まることと、解を方程式で表して数式処理できることは全くの別物。
177デフォルトの名無しさん
2017/05/02(火) 07:39:13.20ID:IDWdkJdY178あ
2017/05/02(火) 11:18:08.85ID:Ua7wVMyf >>175
ごく当たり前の機能として存在する。
面で切り取る事もできる(面に対する押し出しで、相手方を削り取る感じ)
体積も求められるよ。
拘束条件は厳密だし、カーブを式で入れることもできるから。
ただ、それのために1License300万出す?
ごく当たり前の機能として存在する。
面で切り取る事もできる(面に対する押し出しで、相手方を削り取る感じ)
体積も求められるよ。
拘束条件は厳密だし、カーブを式で入れることもできるから。
ただ、それのために1License300万出す?
179デフォルトの名無しさん
2017/05/02(火) 14:54:44.43ID:iysKcMgd ああ、高精度な数値解を導出することと、任意の拘束条件から方程式を導出することの区別がつかない人がいるようだ。
180デフォルトの名無しさん
2017/05/02(火) 14:57:14.02ID:Q2w+FZwb 解析解が必要な場面なのか?これは
181あ
2017/05/02(火) 17:06:18.52ID:Ua7wVMyf >>179
うちでつかってるのは数値解じゃなくて方程式まで自由じゃないけど変数の式でも出たはず。あれ内製だったかな。
AutoCADのMASSPROPとかくらいだと、悲しいかな数値解しか出ないけど、カーネルに手を出せる会社ならだいたいその辺持ってると思うよ。
うちでつかってるのは数値解じゃなくて方程式まで自由じゃないけど変数の式でも出たはず。あれ内製だったかな。
AutoCADのMASSPROPとかくらいだと、悲しいかな数値解しか出ないけど、カーネルに手を出せる会社ならだいたいその辺持ってると思うよ。
182あ
2017/05/02(火) 17:07:00.26ID:Ua7wVMyf もし内製だったら、当たり前の機能として、とは言えんな。
それはすまん。
それはすまん。
183デフォルトの名無しさん
2017/05/02(火) 17:33:48.15ID:iysKcMgd 任意の方程式を扱えないと、>>175 の問題は解けないよね?
184あ
2017/05/02(火) 22:27:44.92ID:Ua7wVMyf >>183
押出する元の図形をプロシージャルではなくて、曲線定義で描く。
曲線への拘束条件で何を取るか次第だけど、問題文通り入れればそれで良いと思うよ。
ゴールデンウイークは試せないのがもどかしいな。
押出する元の図形をプロシージャルではなくて、曲線定義で描く。
曲線への拘束条件で何を取るか次第だけど、問題文通り入れればそれで良いと思うよ。
ゴールデンウイークは試せないのがもどかしいな。
185デフォルトの名無しさん
2017/05/03(水) 16:11:10.64ID:dCKp/m7W Smalltalkって名前だけ変えて次世代言語って紹介されたら
殆どの人は信じてしまうくらい先進的だよね
進歩しすぎてて理解されない不幸な言語
殆どの人は信じてしまうくらい先進的だよね
進歩しすぎてて理解されない不幸な言語
186デフォルトの名無しさん
2017/05/03(水) 16:33:31.70ID:RICjVVNj 比較的新しい言語ってvar t : Type形式が多い気がするけどType t形式を利用しなくなった理由ってあるのかね
187デフォルトの名無しさん
2017/05/03(水) 16:46:20.28ID:MC+KZ03m >>186
型推論の問題じゃない?多分
型推論の問題じゃない?多分
188デフォルトの名無しさん
2017/05/03(水) 16:53:47.90ID:jNZhewdQ 型を書いたり書かなかったりする場合に記述を大きく変える必要がなくて都合がいいんだろう。
型推論を使う言語とか、動的型言語に型ヒントを追加する場合とか。
型推論を使う言語とか、動的型言語に型ヒントを追加する場合とか。
189デフォルトの名無しさん
2017/05/03(水) 17:10:47.34ID:UME+lawj たとえばC#だと基本はType tで後から型推論var t(: typeはない)を追加した
だったら最初から統一的な記法で良くね?ってなる
だったら最初から統一的な記法で良くね?ってなる
190デフォルトの名無しさん
2017/05/03(水) 19:11:09.93ID:RICjVVNj なるほど
型推論が流行ってる(のかはわからないが)から型推論の書き方+αで書けるようにしたってことか
型推論が流行ってる(のかはわからないが)から型推論の書き方+αで書けるようにしたってことか
191デフォルトの名無しさん
2017/05/03(水) 20:37:23.26ID:21J3ISub デニス・リッチーも型前置にしたことを後悔していたんじゃなかったっけ?
たぶん型後置の方が合理的という点には大方の一致があって、あとは合理性を取るか、Cの語順に近づけることを取るかっていう感じなんじゃないかな?
たぶん型後置の方が合理的という点には大方の一致があって、あとは合理性を取るか、Cの語順に近づけることを取るかっていう感じなんじゃないかな?
192デフォルトの名無しさん
2017/05/03(水) 22:01:20.86ID:mJ/QVcTI193デフォルトの名無しさん
2017/05/03(水) 23:27:43.76ID:AGrCBSz0 >>192
Pascalの構文は再帰的パーサを簡単に書けるLL(1)文法なんじゃなかったかな
LL(1)ならトップダウンで構文解析できるからパーサは書きやすいしパーサの効率も多分だけど高い
Cの場合は、例えば
atype;
という宣言があった場合、"atype"という識別子が
1.typedefで型の名前として既に定義済であれば「変数が指定されてない構文エラー」となるし
2.そうでない場合、"atype"という名前のint型の変数の宣言として扱われ
2―1."atype"という変数が既に宣言済であれば2重宣言のエラー、
2―2.そうでなければ正しい変数宣言
となるので、構文解析の際にsymbol tableを参照する必要がある(つまり本質的なレベルで文脈依存文法)ケースが存在するので
当然ながらコンパイラの効率が下がるだろうね
Pascalの構文は再帰的パーサを簡単に書けるLL(1)文法なんじゃなかったかな
LL(1)ならトップダウンで構文解析できるからパーサは書きやすいしパーサの効率も多分だけど高い
Cの場合は、例えば
atype;
という宣言があった場合、"atype"という識別子が
1.typedefで型の名前として既に定義済であれば「変数が指定されてない構文エラー」となるし
2.そうでない場合、"atype"という名前のint型の変数の宣言として扱われ
2―1."atype"という変数が既に宣言済であれば2重宣言のエラー、
2―2.そうでなければ正しい変数宣言
となるので、構文解析の際にsymbol tableを参照する必要がある(つまり本質的なレベルで文脈依存文法)ケースが存在するので
当然ながらコンパイラの効率が下がるだろうね
194デフォルトの名無しさん
2017/05/04(木) 00:37:37.35ID:lJ9s6a1R 昔のpascalは1パスコンパイラだった。コンパイルの速さはそれもあったかもね。
今のobject pascalはジェネリクスもあるしどうだろう?
今のobject pascalはジェネリクスもあるしどうだろう?
195デフォルトの名無しさん
2017/05/04(木) 05:29:59.66ID:TpHQvZsj >>186
v: Type形式なら変数の型だけでなく、式に型をつける構文としてもそのまま使えるから。
v: Type形式なら変数の型だけでなく、式に型をつける構文としてもそのまま使えるから。
196デフォルトの名無しさん
2017/05/04(木) 09:04:54.52ID:IvFxbTrW 値の演算だけでなく型の演算として同じ記号を使うのがCのポインタや配列
これは評判が悪かった
悪いのはポインタだけだというのがJava
全部悪いから全部変えるのが次世代
これは評判が悪かった
悪いのはポインタだけだというのがJava
全部悪いから全部変えるのが次世代
197デフォルトの名無しさん
2017/05/04(木) 09:34:14.90ID:L3vkrSi7 まあポインタの宣言と参照のための記号に同じ * 使ってんのは今でもなんでなんとは思う。
198デフォルトの名無しさん
2017/05/04(木) 09:51:37.05ID:l8/ufUYV 関数の戻り値型の指定はPython,TypeScriptが=>、Swiftだと->が混ざって
いまいち統一感がないんだよな。:のままだと構文的にうまくない部分があるんだろうか。
いまいち統一感がないんだよな。:のままだと構文的にうまくない部分があるんだろうか。
199デフォルトの名無しさん
2017/05/04(木) 10:09:01.14ID:g5LPBSe2200デフォルトの名無しさん
2017/05/04(木) 10:44:22.27ID:IvFxbTrW そもそも静的型が悪いと思えば単純明快だな
静的型は悪くない、だがジェネリクスは不要、ただし Array<T> 等はこっそり入れておく
こんな状態で統一感(笑)を期待する方がおかしい
静的型は悪くない、だがジェネリクスは不要、ただし Array<T> 等はこっそり入れておく
こんな状態で統一感(笑)を期待する方がおかしい
201あ
2017/05/04(木) 11:53:43.54ID:iOTKQL/7 >>200
思いっきりGoだな。
まぁ、Goに統一感なんか無いし、期待してはいかんw
あれは誰でもかける便利な言語だよ。
一切の原理原則以外を排除する崇高な思想で作られた芸術品ではなくて、
「その辺にある便利そうなものを誤謬矛盾なく突っ込めるようにそれなりにルール作りました。
とりあえずこのルール破ると突っ込めなくなるからやめてね。コンパイルさせないよ。」
という、実用のためのルールが細かいのがGoだよ。
電動ドリルのチャックとビットの規格みたいなもん。
「対称性がなくなるからこのメソッドを実装する」という発想ではない。
思いっきりGoだな。
まぁ、Goに統一感なんか無いし、期待してはいかんw
あれは誰でもかける便利な言語だよ。
一切の原理原則以外を排除する崇高な思想で作られた芸術品ではなくて、
「その辺にある便利そうなものを誤謬矛盾なく突っ込めるようにそれなりにルール作りました。
とりあえずこのルール破ると突っ込めなくなるからやめてね。コンパイルさせないよ。」
という、実用のためのルールが細かいのがGoだよ。
電動ドリルのチャックとビットの規格みたいなもん。
「対称性がなくなるからこのメソッドを実装する」という発想ではない。
202デフォルトの名無しさん
2017/05/04(木) 12:29:38.64ID:IvFxbTrW 原理原則というのは崇高な思想じゃなくて無駄な仕様変更の防止という実用の技術だ
203デフォルトの名無しさん
2017/05/04(木) 12:53:07.54ID:g5LPBSe2 なんだ PHP だったのか
204あ
2017/05/04(木) 13:45:55.83ID:iOTKQL/7 >>202
口実やね。
専用品と汎用品なら、圧倒的に前者の方か仕様変更の回数は少ない。
無理に延命したり使いましたりしたいからこそ、よくわからん仕様変更するハメになる。
無駄な仕様変更なら、最初からしなけりゃいいんだよ。
無駄なんでしょ。
使い捨てを使い捨てと認識する事こそがスタート地点。
歯が折れたら取り替えたいし、違う歯を使いたいからチャックがあるんだから。
歯の代わりにバフ付けることも出来るけど、それに対して仕様変更なんか要らないでしょ。バフを新規に作るだけじゃん。
置換原則出してきて証明する必要も無い。
>>203
そうだ、と言う認識だなぁ、俺は。
PHPも同じ理由で、いろんな意味でとても潔い言語だと思うよ。
口実やね。
専用品と汎用品なら、圧倒的に前者の方か仕様変更の回数は少ない。
無理に延命したり使いましたりしたいからこそ、よくわからん仕様変更するハメになる。
無駄な仕様変更なら、最初からしなけりゃいいんだよ。
無駄なんでしょ。
使い捨てを使い捨てと認識する事こそがスタート地点。
歯が折れたら取り替えたいし、違う歯を使いたいからチャックがあるんだから。
歯の代わりにバフ付けることも出来るけど、それに対して仕様変更なんか要らないでしょ。バフを新規に作るだけじゃん。
置換原則出してきて証明する必要も無い。
>>203
そうだ、と言う認識だなぁ、俺は。
PHPも同じ理由で、いろんな意味でとても潔い言語だと思うよ。
205デフォルトの名無しさん
2017/05/04(木) 15:09:17.79ID:TpHQvZsj 言語設計とドリルチャックを一緒くたとか…完全に呆れた
206あ
2017/05/04(木) 17:00:05.42ID:iOTKQL/7 呆れるなら簡単だからな。
どう違うかをきっちり教えて欲しいわ。
本当に勉強になったら素直に勉強になったと言うことにしてるし、実際何度もそうレスしてるよ。
言語なんて外から見たときに一意に呼び出し規約や入出力が決まってりゃそれでいいんだよ。
これでも素晴らしい言語とやらを5個10個と多数見てから言ってるんだけどな。
それ以上の、実用性以上の思想の旗を振りたいなら、何故その思想が必要か語ってほしい。
どう違うかをきっちり教えて欲しいわ。
本当に勉強になったら素直に勉強になったと言うことにしてるし、実際何度もそうレスしてるよ。
言語なんて外から見たときに一意に呼び出し規約や入出力が決まってりゃそれでいいんだよ。
これでも素晴らしい言語とやらを5個10個と多数見てから言ってるんだけどな。
それ以上の、実用性以上の思想の旗を振りたいなら、何故その思想が必要か語ってほしい。
207あ
2017/05/04(木) 17:07:42.27ID:iOTKQL/7 しかし、式に型をつける構文が後置だから出来るのは本当なのかな。
キャストの前置や後置と何か違うのかなぁ。
って考えたら「宣言文 名前 型」の方が遥かに簡単にパースできるなって思わんのかな。
式に型をつけるってのも、コンパイラに教える意味での型か、キャストの型か2つの意味あるけど、どっちの事かな。
疑問。
キャストの前置や後置と何か違うのかなぁ。
って考えたら「宣言文 名前 型」の方が遥かに簡単にパースできるなって思わんのかな。
式に型をつけるってのも、コンパイラに教える意味での型か、キャストの型か2つの意味あるけど、どっちの事かな。
疑問。
208デフォルトの名無しさん
2017/05/04(木) 21:21:01.22ID:IvFxbTrW209デフォルトの名無しさん
2017/05/04(木) 22:18:26.60ID:L3vkrSi7 むしろ変な原理原則に縛られてる方が糞仕様の増加を招くのだが。
haskell みたいにな。
haskell みたいにな。
210デフォルトの名無しさん
2017/05/04(木) 22:34:29.63ID:IvFxbTrW 確かに、関数型とかいう変な原理でHaskellを理解しようとしてるならやめた方がいい
静的型の原理だけで理解できるから
静的型の原理だけで理解できるから
211あ
2017/05/04(木) 22:35:23.26ID:iOTKQL/7 >>208
「交換できる、交換出来ない」と「使い捨てである、改良を加えて連用する」は同時にどの組み合わせも成り立つのでは?
これを捨てる代わりに、これと同じ機能プラスαの新ライブラリを作る、みたいな話で、
完全に前方後方互換の代替品であるかもしれないし、そうではないものかもしれない。
そういう意味では、無条件に捨てる事ができるってのは立派な見返りだよ。
「交換できる、交換出来ない」と「使い捨てである、改良を加えて連用する」は同時にどの組み合わせも成り立つのでは?
これを捨てる代わりに、これと同じ機能プラスαの新ライブラリを作る、みたいな話で、
完全に前方後方互換の代替品であるかもしれないし、そうではないものかもしれない。
そういう意味では、無条件に捨てる事ができるってのは立派な見返りだよ。
212デフォルトの名無しさん
2017/05/04(木) 22:36:44.00ID:hGwzsYkf 良いんだよ。
Haskellは美しさが売りなんだから。
むしろ美しさを保ったまま、どこまで実用的なの作れるかが楽しいんだよ。
そう言う意味じゃsmalltalkと同じ、純粋xx言語でxxの真髄理解するなら〜って言語であって、次世代言語じゃあない。
Haskellは美しさが売りなんだから。
むしろ美しさを保ったまま、どこまで実用的なの作れるかが楽しいんだよ。
そう言う意味じゃsmalltalkと同じ、純粋xx言語でxxの真髄理解するなら〜って言語であって、次世代言語じゃあない。
213あ
2017/05/04(木) 22:36:44.02ID:iOTKQL/7 >>210
ならPrologの方が賢いし、Scalaの方がまともだし、Lispの方が最低限の原理から出来てるから、Haskellは要らない子だな。
ならPrologの方が賢いし、Scalaの方がまともだし、Lispの方が最低限の原理から出来てるから、Haskellは要らない子だな。
215デフォルトの名無しさん
2017/05/05(金) 01:26:49.15ID:xfO5LNpr Haskellは代数的データ型が便利
何気にあのレベルに便利な型システム他に見ない
何気にあのレベルに便利な型システム他に見ない
216あ
2017/05/05(金) 03:41:35.36ID:05XvGSte217デフォルトの名無しさん
2017/05/05(金) 05:49:16.66ID:IB1/E975 SmalltalkとHaskellは使ってみるとゴミと分かる二大巨頭
信者が煩いとこもソックリ
信者が煩いとこもソックリ
218デフォルトの名無しさん
2017/05/05(金) 07:09:34.37ID:+77JIYq6 >>217
アンチがウザいのもそっくりだよね
アンチがウザいのもそっくりだよね
219デフォルトの名無しさん
2017/05/05(金) 07:18:58.13ID:IB1/E975 >>218
どっちの信者?
どっちの信者?
220デフォルトの名無しさん
2017/05/05(金) 07:39:38.28ID:dc5WkLcd >>217
アンチが無知なのもそっくりだよね
アンチが無知なのもそっくりだよね
221デフォルトの名無しさん
2017/05/05(金) 08:48:03.35ID:2f8pCQ29 IntelliJとかのマトモなIDEを使った後に
Smalltalkの時代遅れのIDEモドキ?を使ってみると、
終わった言語の進化に取り残されてる感がよく分かるし
こんな出来損ないを使うの強制されるSmalltalkerって哀れだなーって優しい気持ちになれるよ
Smalltalkの時代遅れのIDEモドキ?を使ってみると、
終わった言語の進化に取り残されてる感がよく分かるし
こんな出来損ないを使うの強制されるSmalltalkerって哀れだなーって優しい気持ちになれるよ
222デフォルトの名無しさん
2017/05/05(金) 09:20:19.67ID:7NmAzLlS >>221
言語としてはどこらへんがゴミなの?
言語としてはどこらへんがゴミなの?
223デフォルトの名無しさん
2017/05/05(金) 09:39:59.96ID:2f8pCQ29 >>222
動的型言語の中ではぶっちぎりで冗長なコードになるところ
動的型言語の中ではぶっちぎりで冗長なコードになるところ
224デフォルトの名無しさん
2017/05/05(金) 09:54:56.24ID:WrAdTxbV 文字列クラスを改変したら元に戻せないという話はSmalltalkにも当てはまるのかな
文字列クラスクラスがあれば壊れたクラスを使い捨てて新品のクラスに交換できるのに
文字列クラスクラスがあれば壊れたクラスを使い捨てて新品のクラスに交換できるのに
225デフォルトの名無しさん
2017/05/05(金) 10:13:52.40ID:b5hiFaeg >>224
クラスが壊れるという事自体が糞めんどくさい
クラスが壊れるという事自体が糞めんどくさい
226デフォルトの名無しさん
2017/05/05(金) 13:00:01.57ID:tVaTXT91 Smalltalkっていうか遅延結合の徹底ってスタイルは人類には早すぎたんだな
227デフォルトの名無しさん
2017/05/05(金) 16:27:38.21ID:lho11o7a RESTful API等でサービス間を遅延結合するのは流行ってるしメリットがあるけど
ひとつのプロセス内で遅延結合しても意味が無い
アホは適切な抽象化レベルってものが分からないから
やりすぎてナンセンスになっちゃうんだよね
Smalltalkはアホがナンセンスなデザインした結果死ぬべくして死んだ言語
ひとつのプロセス内で遅延結合しても意味が無い
アホは適切な抽象化レベルってものが分からないから
やりすぎてナンセンスになっちゃうんだよね
Smalltalkはアホがナンセンスなデザインした結果死ぬべくして死んだ言語
228デフォルトの名無しさん
2017/05/05(金) 17:23:18.30ID:9atsKcF/ Haskellは遅延評価が本当に苦痛すぎる
あの辛さはやってみるまで想像もつかなかった
あの辛さはやってみるまで想像もつかなかった
229デフォルトの名無しさん
2017/05/05(金) 17:51:23.35ID:tVaTXT91 Smalltalkにおいて「遅延結合の徹底」に期待されるのは通常の言語で想定されるそれとは違って
システム構築中に得られた新たな知見を、既に構築済みだったり運用中の部分へ適用できたり
オブジェクトとそのストアを長期にわたって運用し続けるために細胞の新陳代謝を模した試みだから
http://metatoys.org/oxymoron/oxymoron.html
'70年代からほんの数回の再起動で動き続けている同システムは狙いとしては成功しているんだよね
システム構築中に得られた新たな知見を、既に構築済みだったり運用中の部分へ適用できたり
オブジェクトとそのストアを長期にわたって運用し続けるために細胞の新陳代謝を模した試みだから
http://metatoys.org/oxymoron/oxymoron.html
'70年代からほんの数回の再起動で動き続けている同システムは狙いとしては成功しているんだよね
230デフォルトの名無しさん
2017/05/05(金) 17:51:28.56ID:RNJ7gaAH 無限リスト扱えるし便利でもあり、バグ取りで厄介でもあるね。
RWHにその辺の解決策載ってるから手元に置いとくと良い。
RWHにその辺の解決策載ってるから手元に置いとくと良い。
231デフォルトの名無しさん
2017/05/05(金) 17:51:33.32ID:xTb1W+Ca 馬鹿は抽象化することがなんでもえらいと思ってるからね。。
232あ
2017/05/05(金) 19:50:22.56ID:05XvGSte >>227
意味無いとは言わんがなぁ。
プロセス内でもプロトコル決めてやっとくと、あとでスケールするとか、
固まりへのインアウトが自ずと決まるから可換だと言いやすいとは思う。
やりすぎると自分の重さで死ぬだけで。
意味無いとは言わんがなぁ。
プロセス内でもプロトコル決めてやっとくと、あとでスケールするとか、
固まりへのインアウトが自ずと決まるから可換だと言いやすいとは思う。
やりすぎると自分の重さで死ぬだけで。
233デフォルトの名無しさん
2017/05/05(金) 20:29:10.87ID:RNJ7gaAH FacebookでHaskell採用されたね。
234デフォルトの名無しさん
2017/05/05(金) 20:49:47.45ID:JET5JsI8236デフォルトの名無しさん
2017/05/05(金) 21:21:35.63ID:JET5JsI8 >>235
そんなら勘違いしてるね
そんなら勘違いしてるね
237デフォルトの名無しさん
2017/05/05(金) 21:31:07.05ID:n4hNDFR+ 全然関係ないけど、字数が少ないコードって一目で取れる情報が多くて読みやすくて好きだわ
238デフォルトの名無しさん
2017/05/05(金) 21:42:23.21ID:RNJ7gaAH239デフォルトの名無しさん
2017/05/05(金) 22:47:31.33ID:PGBNZ8Aw いつの間にかHaskellがスレタイから抜けててワロた。
240デフォルトの名無しさん
2017/05/05(金) 23:29:21.86ID:RNJ7gaAH 取り敢えず拡張性比べるんならプログラム組むべ。
まずはファイル名とキーワードを受け取って、ファイルの中にキーワードがあったらTrue。無かったらFalseと表示するコマンド。
プログラミング自体から離れてだいぶ経ったので、錆びた頭だったがHaskellでどうにか書いてみた。
search部分を拡張してくから、各自searchは自前で書いてくれ。
import System.Environment
search _ [] = False
search s ns | take (length s) ns == s = True
search s (_:ns) = search s ns
main = do
arga <- getArgs
content <- readFile $ args!!0
print $ search (args!!1) content
まずはファイル名とキーワードを受け取って、ファイルの中にキーワードがあったらTrue。無かったらFalseと表示するコマンド。
プログラミング自体から離れてだいぶ経ったので、錆びた頭だったがHaskellでどうにか書いてみた。
search部分を拡張してくから、各自searchは自前で書いてくれ。
import System.Environment
search _ [] = False
search s ns | take (length s) ns == s = True
search s (_:ns) = search s ns
main = do
arga <- getArgs
content <- readFile $ args!!0
print $ search (args!!1) content
241デフォルトの名無しさん
2017/05/05(金) 23:31:16.17ID:tVaTXT91 前スレのドアのお題をPharo Smalltalkでも書いてみた
http://ws.stfx.eu/JD8JH4XF3I3U
Go版ももう少しマシな感じにしてみた
http://ideone.com/aFqKsd
http://ws.stfx.eu/JD8JH4XF3I3U
Go版ももう少しマシな感じにしてみた
http://ideone.com/aFqKsd
242デフォルトの名無しさん
2017/05/05(金) 23:36:43.64ID:RNJ7gaAH だから、使い所不明なクラス書いてどうしろと。
プログラム組みたいのであってクラス作りたいんじゃ無いんだぞ?
プログラム組みたいのであってクラス作りたいんじゃ無いんだぞ?
243デフォルトの名無しさん
2017/05/05(金) 23:59:41.96ID:tVaTXT91 >>242
いや別に>>240へのレスというわけではないのだが…
これでいいか?(Squeak Smalltalk、もしくはPharo)
| search |
search := [:fname :keywd |
FileStream oldFileNamed: fname do: [:file |
(file findString: keywd) > 0
]
].
search value: 'test.txt' value: 'something' "=> true "
http://ws.stfx.eu/1UQT4K8GSVHU
いや別に>>240へのレスというわけではないのだが…
これでいいか?(Squeak Smalltalk、もしくはPharo)
| search |
search := [:fname :keywd |
FileStream oldFileNamed: fname do: [:file |
(file findString: keywd) > 0
]
].
search value: 'test.txt' value: 'something' "=> true "
http://ws.stfx.eu/1UQT4K8GSVHU
244デフォルトの名無しさん
2017/05/06(土) 00:04:14.20ID:nikLe03p >>240
それだとコンパイル通らないよ
import System.Environment (getArgs)
import System.IO (readFile)
import Data.List (isInfixOf)
search :: String -> String -> Bool
search = isInfixOf
main :: IO ()
main = do
(word:file:_) <- getArgs
putStrLn . show =<< search word <$> readFile file
それだとコンパイル通らないよ
import System.Environment (getArgs)
import System.IO (readFile)
import Data.List (isInfixOf)
search :: String -> String -> Bool
search = isInfixOf
main :: IO ()
main = do
(word:file:_) <- getArgs
putStrLn . show =<< search word <$> readFile file
245デフォルトの名無しさん
2017/05/06(土) 00:23:53.40ID:9tv813Aq え。。。
通ったけど。。。
通ったけど。。。
246デフォルトの名無しさん
2017/05/06(土) 00:29:01.13ID:gXvlLccW うん、普通のデータ処理の比較は面白そうだ。
247デフォルトの名無しさん
2017/05/06(土) 00:29:23.53ID:9tv813Aq248デフォルトの名無しさん
2017/05/06(土) 00:33:03.34ID:nikLe03p249デフォルトの名無しさん
2017/05/06(土) 00:35:03.84ID:9tv813Aq あ、argsをargaってタイポしてた。。。
LinuxにHaskell入れたばかりなのでPCで実行確認してiPhoneで書き込んでるんで、コピペでコンパイル出来ない時はどこかタイポあると思う。
LinuxにHaskell入れたばかりなのでPCで実行確認してiPhoneで書き込んでるんで、コピペでコンパイル出来ない時はどこかタイポあると思う。
250デフォルトの名無しさん
2017/05/06(土) 00:50:29.93ID:9tv813Aq 次世代言語勢に参戦して貰わんとだから、第二形態は明日の夜発表って感じで良いかな。
一応、第三形態までの予定。
明後日から夜勤なんで、第三形態どうすっかな。
一応、第三形態までの予定。
明後日から夜勤なんで、第三形態どうすっかな。
252あ
2017/05/06(土) 02:11:17.59ID:BE072L/9 >>241
Go版、マシどころか疎にしておいたところ密にされてしまったな。
ノブのないドア、ノブはあるけどラッチのないドア
実現する術がなくなったね。
With Withなんて気色悪い無理に継承関係を作ったような型作るくらいならもう継承とか全部捨てたほうがマシ。
もうちょっと真面目にやって。
Go版、マシどころか疎にしておいたところ密にされてしまったな。
ノブのないドア、ノブはあるけどラッチのないドア
実現する術がなくなったね。
With Withなんて気色悪い無理に継承関係を作ったような型作るくらいならもう継承とか全部捨てたほうがマシ。
もうちょっと真面目にやって。
253デフォルトの名無しさん
2017/05/06(土) 03:50:07.06ID:oP2bFz9u Kotlinになれるためにアプリを作ってるんだけど、久しぶりにc++触るとセミコロンがうっとおしくなるね
参照、ポインタ、値を自由に扱えてかつ新しい言語の特徴を捉えてるような言語が出てほしい
参照、ポインタ、値を自由に扱えてかつ新しい言語の特徴を捉えてるような言語が出てほしい
254デフォルトの名無しさん
2017/05/06(土) 06:35:37.73ID:7HgaeBZn 勝手にHaskellをスレタイから省くな。
255デフォルトの名無しさん
2017/05/06(土) 07:19:08.10ID:gBi5/Vqg >>252
前スレの埋め込みを使った再帰型の試みとして、主要なメソッドを再定義しなければならない版より「マシ」と言ったまでで
君のチャンネル版よりマシという意味ではない
それは他言語版と同じ設計で比較しやすくしたって程度だから気にしないで
前スレの埋め込みを使った再帰型の試みとして、主要なメソッドを再定義しなければならない版より「マシ」と言ったまでで
君のチャンネル版よりマシという意味ではない
それは他言語版と同じ設計で比較しやすくしたって程度だから気にしないで
256デフォルトの名無しさん
2017/05/06(土) 07:23:37.59ID:gXvlLccW 各自、次世代言語に求めるものが違うのだろうけど、
気を悪くしないで欲しいがHaskell外してKotlinは個人的にはないかな。
敢えて外すなら次世代感満載のAgdaを入れて欲しい。
が、呼び水としての趣旨からしたらHaskellを敢えて外す理由が分からない、個人的な怨嗟?
気を悪くしないで欲しいがHaskell外してKotlinは個人的にはないかな。
敢えて外すなら次世代感満載のAgdaを入れて欲しい。
が、呼び水としての趣旨からしたらHaskellを敢えて外す理由が分からない、個人的な怨嗟?
257デフォルトの名無しさん
2017/05/06(土) 08:00:28.21ID:Yu22orOs 実用性が乏しすぎるので次世代にふさわしくないとの事
あと前スレでまともなコードを掲示しなかったので、そもそもHaskellerが居ない事が分かった
あと前スレでまともなコードを掲示しなかったので、そもそもHaskellerが居ない事が分かった
258デフォルトの名無しさん
2017/05/06(土) 08:15:37.40ID:JdaZnrFf259デフォルトの名無しさん
2017/05/06(土) 08:35:08.14ID:9tv813Aq Haskell推しだが、次世代取れるほどライブラリ充実してないし、速くもないからsmalltalk的な立ち位置だと思ってる。
次世代じゃ無いけど、学ぶべき価値ある言語。
次世代じゃ無いけど、学ぶべき価値ある言語。
260デフォルトの名無しさん
2017/05/06(土) 08:41:48.81ID:gBi5/Vqg >>255
参考まで、ほぼ同じ設計にした場合の
Ruby版 http://ideone.com/7VnOfe
Python版 http://ideone.com/UngSO8
Scala版 http://scastie.org/30851
Swift版 http://swift.sandbox.bluemix.net/#/repl/59032b64ebfba02b8d274320
参考まで、ほぼ同じ設計にした場合の
Ruby版 http://ideone.com/7VnOfe
Python版 http://ideone.com/UngSO8
Scala版 http://scastie.org/30851
Swift版 http://swift.sandbox.bluemix.net/#/repl/59032b64ebfba02b8d274320
261デフォルトの名無しさん
2017/05/06(土) 08:43:22.81ID:9tv813Aq262あ
2017/05/06(土) 08:50:48.08ID:BE072L/9263デフォルトの名無しさん
2017/05/06(土) 08:56:13.51ID:VviFbgmi 各言語、得意分野あるからな。
証明付きでプログラム書けとかなったら、Coqなどの証明支援系の独壇場で、
他言語の入り込む余地がないように思われるが如何?
証明付きでプログラム書けとかなったら、Coqなどの証明支援系の独壇場で、
他言語の入り込む余地がないように思われるが如何?
264デフォルトの名無しさん
2017/05/06(土) 08:58:57.84ID:ye19IDAy Bertrand MeyerがEiffelを大事そうに抱えながら>>263を睨んでいるぞ。
265デフォルトの名無しさん
2017/05/06(土) 09:31:45.79ID:nikLe03p 自分もRubyやGroovy使ってたせいかもしれないが
Kotlinは言語としては悪くないけど次世代感は感じない
golangぐらい簡素な仕様にしてくれればまた違ったとは思うけどJVM言語だしなあ
Kotlinは言語としては悪くないけど次世代感は感じない
golangぐらい簡素な仕様にしてくれればまた違ったとは思うけどJVM言語だしなあ
266デフォルトの名無しさん
2017/05/06(土) 10:21:48.72ID:BwUsBv8i 言語が次世代でありさえすればライブラリはJVMでもなんでもいいぞ
ライブラリ関係ないなら、ライブラリがない言語でも参加しやすい
ライブラリ関係ないなら、ライブラリがない言語でも参加しやすい
267デフォルトの名無しさん
2017/05/06(土) 10:22:29.07ID:ubF1nelW >>262
> smalltalkでもパッシングに徹すればひたすらコーディング量はあるけど割りと文句無いのできそう
具体的にはどこらへんにその「量」を感じた?
ドアの振る舞いを記述してるコード自体はGoで書くよりずっと簡潔でステップ数も少ないはずだけど
念のため補足すると件のSmalltalk版では、通常はGUIやIDE任せにするクラスやメソッドの定義
(ちなみにGNU Smalltalkなどを除き、IDE前提のSmalltalkにはクラスやメソッド定義の構文が無い)
をあえてクラスへのメッセージングでやっているのでそのぶん冗長にみえるかもしれないけど
> smalltalkでもパッシングに徹すればひたすらコーディング量はあるけど割りと文句無いのできそう
具体的にはどこらへんにその「量」を感じた?
ドアの振る舞いを記述してるコード自体はGoで書くよりずっと簡潔でステップ数も少ないはずだけど
念のため補足すると件のSmalltalk版では、通常はGUIやIDE任せにするクラスやメソッドの定義
(ちなみにGNU Smalltalkなどを除き、IDE前提のSmalltalkにはクラスやメソッド定義の構文が無い)
をあえてクラスへのメッセージングでやっているのでそのぶん冗長にみえるかもしれないけど
268デフォルトの名無しさん
2017/05/06(土) 12:29:53.45ID:64kzmcng 何でSmalltalkerさんは劣った設計で比較する事に拘ってんの?
Goが得意な技法はダメ、Smalltalkで書きやすい技法だけ使って書くっていう縛りでもあるの?
Goが得意な技法はダメ、Smalltalkで書きやすい技法だけ使って書くっていう縛りでもあるの?
269デフォルトの名無しさん
2017/05/06(土) 12:43:22.47ID:xfCUj8G0 >>259
同意
同意
270デフォルトの名無しさん
2017/05/06(土) 12:46:26.00ID:ye19IDAy271デフォルトの名無しさん
2017/05/06(土) 12:52:37.52ID:ubF1nelW >>268
いや別に拘ってないですよ
そもそも誤解があるようなので断わっておくとGoを貶めるつもりは全然なくて
Smalltalkに難癖を付けてるID:BE072L/9が前スレからGoが詳しそうなんで
その方がわかりやすかろうとGoを引き合いに出したまでです
Goの得意な技法を駆使した優れた設計ってどんなのですか?ぜひ教えてください
今のところ埋め込みスタイル以外で出ているのだとこういうのでしょうか?→http://ideone.com/yvttId
このお題自体では設計を工夫しにくいと言うことであれば、新たにGoに有利なお題をご提供いただければと
いや別に拘ってないですよ
そもそも誤解があるようなので断わっておくとGoを貶めるつもりは全然なくて
Smalltalkに難癖を付けてるID:BE072L/9が前スレからGoが詳しそうなんで
その方がわかりやすかろうとGoを引き合いに出したまでです
Goの得意な技法を駆使した優れた設計ってどんなのですか?ぜひ教えてください
今のところ埋め込みスタイル以外で出ているのだとこういうのでしょうか?→http://ideone.com/yvttId
このお題自体では設計を工夫しにくいと言うことであれば、新たにGoに有利なお題をご提供いただければと
272デフォルトの名無しさん
2017/05/06(土) 12:58:55.97ID:ubF1nelW273デフォルトの名無しさん
2017/05/06(土) 13:05:23.06ID:BwUsBv8i 愚問という便利な言葉がある
答える側には間違えるリスクがあるのに問う側を無リスクで無謬とするのは不公平
答える側には間違えるリスクがあるのに問う側を無リスクで無謬とするのは不公平
274デフォルトの名無しさん
2017/05/06(土) 13:51:25.64ID:dM6SBXFL その言語特有の機能で書いた方が優劣分かりやすくね?
275デフォルトの名無しさん
2017/05/06(土) 14:24:42.57ID:wNWjHlrM >Goの得意な技法を駆使した優れた設計
chan と select 使ったサーバープログラムなんでねーの。
ああいうふうにチャンネルに放り込んだものを適当に一列に並べてくれるのはかなり楽。
chan と select 使ったサーバープログラムなんでねーの。
ああいうふうにチャンネルに放り込んだものを適当に一列に並べてくれるのはかなり楽。
276デフォルトの名無しさん
2017/05/06(土) 15:30:08.75ID:TldMS9JZ ここまで次世代言語から>>240のコードが出てない件。
単純な力押し検索だから、難しいアルゴリズムでも無いんだが。。。
おいらも頭悪いんよ。
>>244の書き方でargs書き換えと、nsをcontentから取ってcsへ変更。sも折角だからwordから取ってwへ。
import System.Environment
search _ [] = False
search w cs | take (length w) cs == w = True
search w (_:cs) = search w cs
main = do
(file:word:_) <- getArgs
content <- readFile file
print $ search word content
単純な力押し検索だから、難しいアルゴリズムでも無いんだが。。。
おいらも頭悪いんよ。
>>244の書き方でargs書き換えと、nsをcontentから取ってcsへ変更。sも折角だからwordから取ってwへ。
import System.Environment
search _ [] = False
search w cs | take (length w) cs == w = True
search w (_:cs) = search w cs
main = do
(file:word:_) <- getArgs
content <- readFile file
print $ search word content
277デフォルトの名無しさん
2017/05/06(土) 15:43:50.78ID:TldMS9JZ 仕様変更への耐性だから、基準となる第一形態のコードの長さは問わない。
どんな変更があるか事前準備したクラスがあってもおk。
第三形態までの変更箇所の少なさが言語の優劣とする。
どんな変更があるか事前準備したクラスがあってもおk。
第三形態までの変更箇所の少なさが言語の優劣とする。
278あ
2017/05/06(土) 16:40:50.57ID:BE072L/9 意見≒難癖とは生きづらいな
279デフォルトの名無しさん
2017/05/06(土) 18:13:57.91ID:ye19IDAy 事実に基づかない悪評価は難癖だわな
280デフォルトの名無しさん
2017/05/06(土) 20:12:56.46ID:XqR1goBE エンジニアガイジのGo版ってあのなぜか最初から並列化を意識して書かれてたやつだっけ?
281あ
2017/05/06(土) 23:05:01.66ID:BE072L/9 >>279
主観としての悪評価と客観としての悪評価を混同すんなよ…。
採点してる訳じゃないんだから。そこまで傲慢でも無いよ。
俺Rubyボロクソに言ってるけど、主観としてだよ。
>>280
並列化を意識してるんじゃないよ。
コンポーネントとして存在し得るかを考えただけ。
ノブがノブだけで存在できないなんておかしいじゃん。何にも繋がってない地面に転がったノブさえ定義できないのに、突然ドアについてる突起をノブだと言うくらい不自然じゃないの?
オブジェクト指向ってなんなの?
地面に転がってるのも、ドアについててもノブであって、ノブとしての役割を果たしているか否かでしかないのでは?
確かにそのノブがノブとして成立するのはドアについたときだろうけど、それ以前からそいつ自身の存在が変わったわけじゃないじゃん。
主観としての悪評価と客観としての悪評価を混同すんなよ…。
採点してる訳じゃないんだから。そこまで傲慢でも無いよ。
俺Rubyボロクソに言ってるけど、主観としてだよ。
>>280
並列化を意識してるんじゃないよ。
コンポーネントとして存在し得るかを考えただけ。
ノブがノブだけで存在できないなんておかしいじゃん。何にも繋がってない地面に転がったノブさえ定義できないのに、突然ドアについてる突起をノブだと言うくらい不自然じゃないの?
オブジェクト指向ってなんなの?
地面に転がってるのも、ドアについててもノブであって、ノブとしての役割を果たしているか否かでしかないのでは?
確かにそのノブがノブとして成立するのはドアについたときだろうけど、それ以前からそいつ自身の存在が変わったわけじゃないじゃん。
282デフォルトの名無しさん
2017/05/06(土) 23:09:30.32ID:bKqO2+sL >>281
んー。クローザーついてないドアにもスレッド使ってなかったっけ?
んー。クローザーついてないドアにもスレッド使ってなかったっけ?
283あ
2017/05/06(土) 23:16:33.79ID:BE072L/9 >>282
スレッドと言うかまあマイクロスレッド使ってるけど。
キューイングしてる所で同期をGoにやってもらった形に近い。
イベントやらメッセージパッシングと変わらんつもりだけど、キュー抜いて中もgoroutineなのは確かに悪手は悪手か。
それは確かにそうだな。
スレッドと言うかまあマイクロスレッド使ってるけど。
キューイングしてる所で同期をGoにやってもらった形に近い。
イベントやらメッセージパッシングと変わらんつもりだけど、キュー抜いて中もgoroutineなのは確かに悪手は悪手か。
それは確かにそうだな。
284デフォルトの名無しさん
2017/05/07(日) 02:09:25.68ID:bNWzpChq まだHaskell信者が暴れてるのか
ラッチの開閉すら実装出来ないと前スレで判明してのによく再登場出来るな
ラッチの開閉すら実装出来ないと前スレで判明してのによく再登場出来るな
285デフォルトの名無しさん
2017/05/07(日) 02:38:17.71ID:zdh+Rbcj いやあの問題が糞だと思ったHaskellerが問題出してる流れじゃないの?
286デフォルトの名無しさん
2017/05/07(日) 02:59:03.65ID:JOXD31Or >>284
実装はできてたでしょ?
実装はできてたでしょ?
287デフォルトの名無しさん
2017/05/07(日) 04:54:40.21ID:ehHyxLGM 久しぶりに覗いてみたけど、お前らまだやってたの?
良く飽きないな
良く飽きないな
288デフォルトの名無しさん
2017/05/07(日) 08:02:58.35ID:M/7nygcc Smalltalkerはお題で使って良い言語機能に縛りを入れようとするからクソ
289デフォルトの名無しさん
2017/05/07(日) 08:26:48.70ID:HF1KyfYe まぁここであーだこーだ言ったところで、大手の採用が多くなった言語が次世代扱いになるだけだからな
主に決めるのは外人だ
主に決めるのは外人だ
290デフォルトの名無しさん
2017/05/07(日) 09:55:32.27ID:6O1o1Sih291デフォルトの名無しさん
2017/05/07(日) 10:05:54.32ID:4Tfm86M3 >>281
主観で悪評価しているなら、それこそ難癖以外の要素ゼロじゃないか。
主観で悪評価しているなら、それこそ難癖以外の要素ゼロじゃないか。
292デフォルトの名無しさん
2017/05/07(日) 10:48:31.07ID:6O1o1Sih 嘘ニュースを野放しにして個人の感想を問題視するのは本末転倒
293デフォルトの名無しさん
2017/05/07(日) 10:56:51.74ID:U5ljnRqU Haskell 難しすぎて叩きたくなるのもわかる。
294デフォルトの名無しさん
2017/05/07(日) 11:24:25.93ID:PZmLVVS1 ほんと難しいよ
物を作る道具としては失格だな
物を作る道具としては失格だな
295デフォルトの名無しさん
2017/05/07(日) 11:25:56.17ID:6O1o1Sih 静的型が難しすぎて失格なんだよ
叩きたいことと叩くべきことが一致してない
叩きたいことと叩くべきことが一致してない
296デフォルトの名無しさん
2017/05/07(日) 11:29:53.16ID:Kq+qtoGk microsoft word の動作が難しいって意味での難しさだわな。
無意味なむずかしさだわ。
無意味なむずかしさだわ。
297デフォルトの名無しさん
2017/05/07(日) 11:56:43.37ID:uANj4DVJ 性的型が難しいって。。。
自分で正しくプログラム組めてませんって言ってるようなもんじゃん。。。
自分で正しくプログラム組めてませんって言ってるようなもんじゃん。。。
298デフォルトの名無しさん
2017/05/07(日) 12:01:01.50ID:uANj4DVJ 溜まってんのかな。。。
x性的型が
o静的型が
x性的型が
o静的型が
299デフォルトの名無しさん
2017/05/07(日) 14:33:06.42ID:2RFcNsFZ お前らのゆう次世代言語って、キャットドア問題を解けるのか?
300デフォルトの名無しさん
2017/05/07(日) 14:53:43.84ID:38Z51qvh301デフォルトの名無しさん
2017/05/07(日) 14:58:24.43ID:EXP2lJkU >>240
>>276
ライブラリ使うのとかはありかな?
主旨から外れるかもしれないが、こんなのどうだろう
import System.Environment
import Data.Conduit
import qualified Data.Conduit.Text as CT
import qualified Data.Conduit.Binary as CB
import Control.Monad.Trans.Resource
import qualified Data.Text as T
import Control.Monad.IO.Class (MonadIO)
searchSink :: (Monad m, MonadIO m) => T.Text -> Sink T.Text m Bool
searchSink w = do
n <- await
return $ case n of
Nothing -> False
Just s -> T.isInfixOf w s
main :: IO ()
main = do
(file:word:_) <- getArgs
x <- runResourceT
$ CB.sourceFile file
$= CT.decode CT.utf8
$$ searchSink (T.pack word)
print x
>>276
ライブラリ使うのとかはありかな?
主旨から外れるかもしれないが、こんなのどうだろう
import System.Environment
import Data.Conduit
import qualified Data.Conduit.Text as CT
import qualified Data.Conduit.Binary as CB
import Control.Monad.Trans.Resource
import qualified Data.Text as T
import Control.Monad.IO.Class (MonadIO)
searchSink :: (Monad m, MonadIO m) => T.Text -> Sink T.Text m Bool
searchSink w = do
n <- await
return $ case n of
Nothing -> False
Just s -> T.isInfixOf w s
main :: IO ()
main = do
(file:word:_) <- getArgs
x <- runResourceT
$ CB.sourceFile file
$= CT.decode CT.utf8
$$ searchSink (T.pack word)
print x
302デフォルトの名無しさん
2017/05/07(日) 15:03:42.15ID:zdh+Rbcj キャットドアが解けて何かいいことがあるんですかね?
303デフォルトの名無しさん
2017/05/07(日) 16:13:25.59ID:m17h7+4k >>301
仕様変更への耐性を競うだけなので、まあライブラリ使ってもそれで仕様変更に強いなら構わないけど。。。
Haskellとsmalltalkしか回答寄せて貰えてない。。。
キャットドアのクラス作るだけの問題よりも、客からこんな機能付けてって要望に応える形で仕様変更されたのを如何にコード変えずに対応するかって問題は実践向きで良いと思ったんだが。。。
仕様変更への耐性を競うだけなので、まあライブラリ使ってもそれで仕様変更に強いなら構わないけど。。。
Haskellとsmalltalkしか回答寄せて貰えてない。。。
キャットドアのクラス作るだけの問題よりも、客からこんな機能付けてって要望に応える形で仕様変更されたのを如何にコード変えずに対応するかって問題は実践向きで良いと思ったんだが。。。
304デフォルトの名無しさん
2017/05/07(日) 16:18:52.35ID:m17h7+4k あと3時間もすれば会社行くからコードは明日。。。も出かける予定で無理か。。。
明後日には書くので、第二形態の問題だけ出しとく。
ファイル中に検索するキーワード見つかったら、見つかった数も表示するように機能追加。
見つからなかった時は表示しなくても良いし、表示を分けるの面倒臭かったら0個って表示で見つかった時と表示機能を共有しても良い。
明後日には書くので、第二形態の問題だけ出しとく。
ファイル中に検索するキーワード見つかったら、見つかった数も表示するように機能追加。
見つからなかった時は表示しなくても良いし、表示を分けるの面倒臭かったら0個って表示で見つかった時と表示機能を共有しても良い。
305デフォルトの名無しさん
2017/05/07(日) 16:26:36.91ID:EXP2lJkU306デフォルトの名無しさん
2017/05/07(日) 17:24:00.66ID:zdh+Rbcj307デフォルトの名無しさん
2017/05/07(日) 17:30:40.95ID:m17h7+4k308デフォルトの名無しさん
2017/05/07(日) 17:57:04.14ID:zdh+Rbcj >>307
意図が良く分からないんだけど、Pythonで言えば
from sys import argv
def search(path, word):
____with open(path) as f:
________for l in f:
____________if word in l:
________________return True
________else:
____________return False
if __name__ == '__main__':
____print(search(argv[1], argv[2]))
みたいなのでいいの? とりあえず書き捨ての簡単なプログラムから初めて拡張していく感じで
多分これ拡張しろって言われたらsearch関数まるっと書き直しちゃうけど
意図が良く分からないんだけど、Pythonで言えば
from sys import argv
def search(path, word):
____with open(path) as f:
________for l in f:
____________if word in l:
________________return True
________else:
____________return False
if __name__ == '__main__':
____print(search(argv[1], argv[2]))
みたいなのでいいの? とりあえず書き捨ての簡単なプログラムから初めて拡張していく感じで
多分これ拡張しろって言われたらsearch関数まるっと書き直しちゃうけど
309デフォルトの名無しさん
2017/05/07(日) 18:08:49.23ID:m17h7+4k310デフォルトの名無しさん
2017/05/07(日) 18:14:46.33ID:zdh+Rbcj おっと2問目もあったか
Pythonで言えば
def count(path, word):
____with open(path) as f:
________return sum(l.count(word) for l in f)
でも追加しておけばOKだな。うん。searchの内容一切使ってないけど変更は3行やね
つーかsearchももっと短くできたな
Pythonで言えば
def count(path, word):
____with open(path) as f:
________return sum(l.count(word) for l in f)
でも追加しておけばOKだな。うん。searchの内容一切使ってないけど変更は3行やね
つーかsearchももっと短くできたな
311デフォルトの名無しさん
2017/05/07(日) 18:18:38.81ID:zdh+Rbcj312デフォルトの名無しさん
2017/05/07(日) 18:23:23.71ID:/lTp1FVO >>304 Squeak/Pharo Smalltalk
| search |
search := [:fname :keywd |
FileStream oldFileNamed: fname do: [:file |
| count |
count := 0.
[file match: keywd] whileTrue: [
count := count + 1.
file atEnd ifFalse: [file skip: 1 - keywd size]].
count
]
].
search value: 'test.txt' value: 'something'
http://ws.stfx.eu/RU59LGEMKG9G
| search |
search := [:fname :keywd |
FileStream oldFileNamed: fname do: [:file |
| count |
count := 0.
[file match: keywd] whileTrue: [
count := count + 1.
file atEnd ifFalse: [file skip: 1 - keywd size]].
count
]
].
search value: 'test.txt' value: 'something'
http://ws.stfx.eu/RU59LGEMKG9G
313デフォルトの名無しさん
2017/05/07(日) 18:23:58.94ID:m17h7+4k そこをどうにか機能追加で
search test.txt hoge
Ture 4
みたいな感じに表示項目増えるように第一形態のコードを育てる様にして欲しいんだが。。。
関数名以外は中身が丸っと変わっても良いけどさ。
search test.txt hoge
Ture 4
みたいな感じに表示項目増えるように第一形態のコードを育てる様にして欲しいんだが。。。
関数名以外は中身が丸っと変わっても良いけどさ。
314デフォルトの名無しさん
2017/05/07(日) 18:27:46.84ID:zdh+Rbcj え、関数名変えたらいかんの?
それはおかしいやろ
一回作った関数の振る舞いを変更するのはおかしい。別の関数を作るべき
それはおかしいやろ
一回作った関数の振る舞いを変更するのはおかしい。別の関数を作るべき
315デフォルトの名無しさん
2017/05/07(日) 18:28:27.76ID:m17h7+4k Haskellではタプルをそのまま表示して
search test.txt hoge
(True,4)
ってする予定。
search test.txt hoge
(True,4)
ってする予定。
316デフォルトの名無しさん
2017/05/07(日) 18:29:37.82ID:m17h7+4k >>314
そう言う問題も第二弾として考えてる。
そう言う問題も第二弾として考えてる。
317デフォルトの名無しさん
2017/05/07(日) 18:32:35.47ID:zdh+Rbcj うーん。この程度の量で無理に機能追加で育てていくこと自体が設計ミスだと思うけどなあ
318デフォルトの名無しさん
2017/05/07(日) 18:42:25.99ID:m17h7+4k そこは承知の上で、まだ次世代言語入門したばかりでも参入しやすい様にってのと、過去のコードに影響あるよね?って事で第二弾に持って行きたい。
319デフォルトの名無しさん
2017/05/07(日) 18:47:14.19ID:zdh+Rbcj はいPythonまとめ
searchはもっと短い実装思いついたから短くした。
from sys import argv
def search(path, word): # 1st
____with open(path) as f: # 1st
________return any(word in l for l in f) # 1st
def count(path, word): # 2nd
____with open(path) as f: # 2nd
________return sum(l.count(word) for l in f) # 2nd
if __name__ == '__main__':
# print(search(argv[1], argv[2])) # 1st
print(count(argv[1], argv[2])) # 2nd
変更は2ndって書いてある4行。一切再利用とかしてないけど、このお題に関して分かりやすさ、変更の少なさ、安全さでこれ超えるのは無理でしょ
searchはもっと短い実装思いついたから短くした。
from sys import argv
def search(path, word): # 1st
____with open(path) as f: # 1st
________return any(word in l for l in f) # 1st
def count(path, word): # 2nd
____with open(path) as f: # 2nd
________return sum(l.count(word) for l in f) # 2nd
if __name__ == '__main__':
# print(search(argv[1], argv[2])) # 1st
print(count(argv[1], argv[2])) # 2nd
変更は2ndって書いてある4行。一切再利用とかしてないけど、このお題に関して分かりやすさ、変更の少なさ、安全さでこれ超えるのは無理でしょ
320デフォルトの名無しさん
2017/05/07(日) 18:51:13.41ID:zdh+Rbcj321デフォルトの名無しさん
2017/05/07(日) 19:24:12.22ID:m17h7+4k (しぶしぶ)了解。
322デフォルトの名無しさん
2017/05/07(日) 19:36:18.70ID:4ZC1qsBr 再利用しないほうが少ない変更でいけるものに再利用を強制して、その分量で言語の優劣を測るというのは理不尽な話だ
323デフォルトの名無しさん
2017/05/07(日) 20:18:32.73ID:zdh+Rbcj Pythonのコードで再利用せずに済んでるのはバッテリー付き言語であるのが大きいな。もし次世代言語でmatchとかcountすらないようなのがあるとしたらその言語にとってはそこそこいい課題になるかもな
324デフォルトの名無しさん
2017/05/07(日) 20:59:47.13ID:/lTp1FVO >>304
ファイルの行ごとの内容はメモリに収まる程度なのか、とか
例えば 'xxxoooxxx' という文字列内に 'oo' は1個なのか2個なのか、とかは
回答側の都合がいいように自由に決めていい?
ファイルの行ごとの内容はメモリに収まる程度なのか、とか
例えば 'xxxoooxxx' という文字列内に 'oo' は1個なのか2個なのか、とかは
回答側の都合がいいように自由に決めていい?
325デフォルトの名無しさん
2017/05/07(日) 21:31:50.41ID:6O1o1Sih 仕様変更というから仕様バグをデバッグするのかと思ったら
バグのない完成品に機能追加して多機能化すれば優秀さを示せるって発想か
嫌な予感がする
バグのない完成品に機能追加して多機能化すれば優秀さを示せるって発想か
嫌な予感がする
327デフォルトの名無しさん
2017/05/07(日) 23:11:40.56ID:4ZC1qsBr >>326
どういう意味?
どういう意味?
328デフォルトの名無しさん
2017/05/08(月) 01:06:43.83ID:F16X/4LX Ocamlって型クラスないのか
329あ
2017/05/08(月) 06:18:15.11ID:FkyLZnez >>327
再利用せずに入れ替えたいから、その部品が使われるときのインターフェイスを定義して、関係ないものをカプセル化するんじゃん?
再利用して無理に機能追加してると、割りと早めにインターフェイスは形骸化するよ。
引き戸である、とか、このドアは回転扉で開けると反対が閉まる、とか、エアロックみたく、どちらかしか開かない制限をかけたいとか、そういう要件で安易に
扉だったものを魔改造するハメになる。
そうすると、インターフェイスってものや、カプセル化ってものが、完全に無意味になる。
魔改造されてて、本来の意味を失ったインターフェイスの「ドアを押す」メソッドとか怖すぎるじゃん。
再利用せずに入れ替えたいから、その部品が使われるときのインターフェイスを定義して、関係ないものをカプセル化するんじゃん?
再利用して無理に機能追加してると、割りと早めにインターフェイスは形骸化するよ。
引き戸である、とか、このドアは回転扉で開けると反対が閉まる、とか、エアロックみたく、どちらかしか開かない制限をかけたいとか、そういう要件で安易に
扉だったものを魔改造するハメになる。
そうすると、インターフェイスってものや、カプセル化ってものが、完全に無意味になる。
魔改造されてて、本来の意味を失ったインターフェイスの「ドアを押す」メソッドとか怖すぎるじゃん。
330デフォルトの名無しさん
2017/05/08(月) 06:39:47.64ID:pk8djPQr331あ
2017/05/08(月) 06:45:50.09ID:FkyLZnez >>330
インターフェイス、型、あとはクラス構造自体の意義、もうちょっと広くとっても良いかなって思って。
Cでもアセンブラでも可換な作り方って出来るから、あまりに具体例にするのも話が矮小化しそうだなぁって思ったんよ。
申し訳ない。
「も、含めて」とかちょっと言い方考えるわ。
インターフェイス、型、あとはクラス構造自体の意義、もうちょっと広くとっても良いかなって思って。
Cでもアセンブラでも可換な作り方って出来るから、あまりに具体例にするのも話が矮小化しそうだなぁって思ったんよ。
申し訳ない。
「も、含めて」とかちょっと言い方考えるわ。
332デフォルトの名無しさん
2017/05/08(月) 06:53:05.16ID:pk8djPQr333デフォルトの名無しさん
2017/05/08(月) 06:57:25.03ID:Ya4nTupG アルゴリズムなんてどれで書いても同じなんだから
もっとUI作りやすい言語くれよ。
もっとUI作りやすい言語くれよ。
334あ
2017/05/08(月) 07:22:21.17ID:FkyLZnez335デフォルトの名無しさん
2017/05/08(月) 18:51:10.68ID:nU60kBJx >>324
行は基本メモリに収まる程度だよ。
小説とか、常識的なテキストで問題無ければおk。
行に一個二個を回答側の都合ってのは普通駄目だろう。。。
でも、あんまりにも回答者いないんでもう良いよ。。。
行は基本メモリに収まる程度だよ。
小説とか、常識的なテキストで問題無ければおk。
行に一個二個を回答側の都合ってのは普通駄目だろう。。。
でも、あんまりにも回答者いないんでもう良いよ。。。
336デフォルトの名無しさん
2017/05/08(月) 18:54:25.80ID:nU60kBJx >>329
あー。。。
あんま考えずに提案してたわ。。。
うーん。。。
インターフェースは変えずにって条件付ける?
実際に引数増やさないと駄目な時は補助関数作って、実際の処理はそっちに丸投げみたいな形で。
一応第二弾ではそう言うのも考慮して、既存の関数に手を加えないで機能拡張ってテーマで行く予定だけど。
あー。。。
あんま考えずに提案してたわ。。。
うーん。。。
インターフェースは変えずにって条件付ける?
実際に引数増やさないと駄目な時は補助関数作って、実際の処理はそっちに丸投げみたいな形で。
一応第二弾ではそう言うのも考慮して、既存の関数に手を加えないで機能拡張ってテーマで行く予定だけど。
337デフォルトの名無しさん
2017/05/08(月) 21:10:34.76ID:nbca9qQS >>335
> 行に一個二個を回答側の都合ってのは普通駄目だろう。。。
であれば、正規表現に丸投げするのでもなければ処理内容にも影響するので
例えば 'xxxoooxxx' 内に 'oo' は1個と数えるか2個と数えるかとかは出題側で事前にきちんと決めてください
> 行に一個二個を回答側の都合ってのは普通駄目だろう。。。
であれば、正規表現に丸投げするのでもなければ処理内容にも影響するので
例えば 'xxxoooxxx' 内に 'oo' は1個と数えるか2個と数えるかとかは出題側で事前にきちんと決めてください
338デフォルトの名無しさん
2017/05/09(火) 00:31:37.08ID:fIUN0UPL ああ!
勘違いしてた。
そう言うことね。
ラッキー7(777)検索してて7777ってなってたら1個と数えるか2個と数えるかって事か。
私の方法だと2個に数えてるので2個にしましょう。
勘違いしてた。
そう言うことね。
ラッキー7(777)検索してて7777ってなってたら1個と数えるか2個と数えるかって事か。
私の方法だと2個に数えてるので2個にしましょう。
339あ
2017/05/09(火) 02:14:34.77ID:w3DidVUp メモリをジャブジャブ使えて1個で考えて良いなら殆どの言語で一行なんだけどなぁ。
jsで言うと(content+'').split(delimiter).length-1だから。
jsで言うと(content+'').split(delimiter).length-1だから。
340デフォルトの名無しさん
2017/05/09(火) 07:18:26.65ID:83wQykSi >>335
「小説とか」ということは、日本語の可能性もあるの?その場合に想定してるエンコードは?
とにかくideone.comとかで参加者が気軽に動作を確認でき、かつ仕様を満たした回答例を先に出しといてください
実戦向きとか言うわりに細かな仕様がまったくわからんし、動くコードでもなければエスパーするにも限界があるよ
「小説とか」ということは、日本語の可能性もあるの?その場合に想定してるエンコードは?
とにかくideone.comとかで参加者が気軽に動作を確認でき、かつ仕様を満たした回答例を先に出しといてください
実戦向きとか言うわりに細かな仕様がまったくわからんし、動くコードでもなければエスパーするにも限界があるよ
341デフォルトの名無しさん
2017/05/09(火) 08:36:02.65ID:YN7Krfta 言語が次世代になっても要件定義(笑)などが旧世代だと
どうにもならんね
どうにもならんね
342デフォルトの名無しさん
2017/05/09(火) 09:22:59.82ID:7e9h09Aa >>339
+'' ってなんかのおまじない?
+'' ってなんかのおまじない?
344あ
2017/05/09(火) 11:59:38.90ID:b+ihuqXk 言葉足らずだったな。文字列と見せかけて数値にどっかで化けさせた奴対策だったり、そもそも引数来なかったとかそういうやつ。
345デフォルトの名無しさん
2017/05/09(火) 13:13:43.62ID:7e9h09Aa347デフォルトの名無しさん
2017/05/09(火) 16:14:33.37ID:PEK3Ov/R >>339
そうなんだ。。。
じゃあ、両方のを書くのでどっちもおkにします。
>>340
長さは?とか聞かれて小説とかって書いたけど、今回は適当なソース読ませる程度しか想定してないし、参入障壁にしたくないからアスキー文字だけしか想定してない。
本当、思い付きで申し訳ない。
そんな訳で下のコードをコピペして検索にかけると
>search search.hs search
(True,16)
ってなるはず。
んで、777を検索して7777を1個と数える版はsearch2として書いてみた。
最早Pythonよりも修正箇所多そうだけど気にしない。
do形式よりモナド形式が好きなのでdo形式コメントアウトしてるのは気にしないで欲しい。
(ちょうど良かったんで7777を確認用にdoの後ろに追加してる)
そうなんだ。。。
じゃあ、両方のを書くのでどっちもおkにします。
>>340
長さは?とか聞かれて小説とかって書いたけど、今回は適当なソース読ませる程度しか想定してないし、参入障壁にしたくないからアスキー文字だけしか想定してない。
本当、思い付きで申し訳ない。
そんな訳で下のコードをコピペして検索にかけると
>search search.hs search
(True,16)
ってなるはず。
んで、777を検索して7777を1個と数える版はsearch2として書いてみた。
最早Pythonよりも修正箇所多そうだけど気にしない。
do形式よりモナド形式が好きなのでdo形式コメントアウトしてるのは気にしないで欲しい。
(ちょうど良かったんで7777を確認用にdoの後ろに追加してる)
348デフォルトの名無しさん
2017/05/09(火) 16:15:07.28ID:PEK3Ov/R import System.Environment
search w cts = search' (False,0) w cts
where
search' (b,n) _ [] = (b,n)
search' (_,n) w (c:cs) | take (length w) (c:cs) == w = search' (True,n + 1) w cs
search' t w (_,cs) = search' t w cs
search2 w cts = search' (False,0) w cts
where
search' (b,n) _ [] = (b,n)
search' (_,n) w cts | take (length w) cts == w = search' (True,n + 1) w $ drop (length w) cts
search' t w (_:cs) = search' t w cs
-- main = do 7777
-- (file:word:_) <- getArgs
-- content <- readFile file
-- print $ search word content
main = getArgs >>= \(file:word) -> readFile file >>= print.search word
search w cts = search' (False,0) w cts
where
search' (b,n) _ [] = (b,n)
search' (_,n) w (c:cs) | take (length w) (c:cs) == w = search' (True,n + 1) w cs
search' t w (_,cs) = search' t w cs
search2 w cts = search' (False,0) w cts
where
search' (b,n) _ [] = (b,n)
search' (_,n) w cts | take (length w) cts == w = search' (True,n + 1) w $ drop (length w) cts
search' t w (_:cs) = search' t w cs
-- main = do 7777
-- (file:word:_) <- getArgs
-- content <- readFile file
-- print $ search word content
main = getArgs >>= \(file:word) -> readFile file >>= print.search word
349デフォルトの名無しさん
2017/05/09(火) 16:29:20.54ID:7e9h09Aa >>346
contentがundefinedでdelimiterが'e'とかだったら?
contentがundefinedでdelimiterが'e'とかだったら?
351デフォルトの名無しさん
2017/05/11(木) 14:33:48.35ID:xTl8MRgt 第三形態とやらはどうなった?
352デフォルトの名無しさん
2017/05/11(木) 14:41:22.16ID:+i4P6kRh 第一第二形態で次世代言語の回答もないのに出して良いものか。。。
353デフォルトの名無しさん
2017/05/11(木) 14:47:49.71ID:+i4P6kRh まとめとこう。
>>309で一旦まとめて
インターフェース(引数)固定縛り。
(補助関数可)
英数字のみのファイル前提。
行やファイル全体もメモリに収まる程度を想定。
777で検索した際、7777は検索結果1個とカウントしても2個とカウントしてもおk。
>>309で一旦まとめて
インターフェース(引数)固定縛り。
(補助関数可)
英数字のみのファイル前提。
行やファイル全体もメモリに収まる程度を想定。
777で検索した際、7777は検索結果1個とカウントしても2個とカウントしてもおk。
354デフォルトの名無しさん
2017/05/11(木) 17:06:04.00ID:xTl8MRgt そういうのいらないから第三形態と回答例はよ
355デフォルトの名無しさん
2017/05/11(木) 17:14:36.14ID:+i4P6kRh はいはい・・・。
んじゃ、検索で見つけた位置も追加で表示するように拡張。
import System.Environment
search w = search' (False,0,[],(1,0)) w
where
search' (b,n,ps,_) _ [] = (b,n,reverse ps)
search' (b,n,ps,(y,_)) w (c:cs) | c == '\n' = search' (b,n,ps,(y + 1,0)) w cs
search' (_,n,ps,(y,x)) w (c:cs) | take (length w) (c:cs) == w = search' (True,n + 1,(y,x + 1):ps,(y,x + 1)) w cs
search' (b,n,ps,(y,x)) w (_:cs) = search' (b,n,ps,(y, x + 1)) w cs
search2 w = search' (False,0,[],(1,0)) w
where
search' (b,n,ps,_) _ [] = (b,n,reverse ps)
search' (b,n,ps,(y,_)) w (c:cs) | c == '\n' = search' (b,n,ps,(y + 1,0)) w cs
search' (_,n,ps,(y, x)) w cts | take (length w) cts == w = search' (True,n + 1,(y, x + 1):ps,(y, x + 1)) w $ drop (length w) cts
search' (b,n,ps,(y,x)) w (_:cs) = search' (b,n,ps,(y, x + 1)) w cs
-- main = do 7777
-- (file:word:_) <- getArgs
-- content <- readFile file
-- print $ search word content
main = getArgs >>= \(file:word:_) -> readFile file >>= print.search2 word
んじゃ、検索で見つけた位置も追加で表示するように拡張。
import System.Environment
search w = search' (False,0,[],(1,0)) w
where
search' (b,n,ps,_) _ [] = (b,n,reverse ps)
search' (b,n,ps,(y,_)) w (c:cs) | c == '\n' = search' (b,n,ps,(y + 1,0)) w cs
search' (_,n,ps,(y,x)) w (c:cs) | take (length w) (c:cs) == w = search' (True,n + 1,(y,x + 1):ps,(y,x + 1)) w cs
search' (b,n,ps,(y,x)) w (_:cs) = search' (b,n,ps,(y, x + 1)) w cs
search2 w = search' (False,0,[],(1,0)) w
where
search' (b,n,ps,_) _ [] = (b,n,reverse ps)
search' (b,n,ps,(y,_)) w (c:cs) | c == '\n' = search' (b,n,ps,(y + 1,0)) w cs
search' (_,n,ps,(y, x)) w cts | take (length w) cts == w = search' (True,n + 1,(y, x + 1):ps,(y, x + 1)) w $ drop (length w) cts
search' (b,n,ps,(y,x)) w (_:cs) = search' (b,n,ps,(y, x + 1)) w cs
-- main = do 7777
-- (file:word:_) <- getArgs
-- content <- readFile file
-- print $ search word content
main = getArgs >>= \(file:word:_) -> readFile file >>= print.search2 word
356デフォルトの名無しさん
2017/05/11(木) 17:32:30.86ID:+i4P6kRh >>348のコードをコピペしたテスト用テキストだとこう表示されるはず。
>search test.txt search
(True,16,[(3,1),(3,11),(5,1),(6,1),(6,51),(7,1),(7,17),(9,1),(9,12),(11,1),(12,1),(12,45),(13,1),(13,17),(18,12),(20,60)])
>search test.txt search
(True,16,[(3,1),(3,11),(5,1),(6,1),(6,51),(7,1),(7,17),(9,1),(9,12),(11,1),(12,1),(12,45),(13,1),(13,17),(18,12),(20,60)])
357デフォルトの名無しさん
2017/05/11(木) 17:35:54.43ID:/dUENRjT 結局俺たちの次世代言語はハスケルとスモールトークだったということか。
358デフォルトの名無しさん
2017/05/11(木) 17:41:01.83ID:+i4P6kRh んな訳ないと思うんだが。。。
第三形態まで出たんだから、次世代言語勢たのんますよ。
本当。
第三形態まで出たんだから、次世代言語勢たのんますよ。
本当。
359デフォルトの名無しさん
2017/05/11(木) 18:01:32.36ID:+i4P6kRh360デフォルトの名無しさん
2017/05/11(木) 18:04:33.44ID:+i4P6kRh あ、777検索してて7777は一個二個どっちで数えてもおk。
361あ
2017/05/11(木) 18:41:45.50ID:lLJXISKu >>359
ガバガバでは?
type LookupResult struct {
//略
}
func (lr LookupResult) foundAsBool Bool{
return lr.found
}
func Lookup(needle,haystack String) LookupResult{
//検索処理
return LookupResult{found:結果}
}
って第一形態書いとけば、LookupResultが超リッチになってくだけでインターフェイスもへったくれもない石器時代の発想で書けちゃうよ。
そして往々にして業務アプリ屋ならちょっと気がおかしいレベルで、こんな形で結果をラップする事を徹底してる。
大きな変更は無いけど、いい事も無い。
ガバガバでは?
type LookupResult struct {
//略
}
func (lr LookupResult) foundAsBool Bool{
return lr.found
}
func Lookup(needle,haystack String) LookupResult{
//検索処理
return LookupResult{found:結果}
}
って第一形態書いとけば、LookupResultが超リッチになってくだけでインターフェイスもへったくれもない石器時代の発想で書けちゃうよ。
そして往々にして業務アプリ屋ならちょっと気がおかしいレベルで、こんな形で結果をラップする事を徹底してる。
大きな変更は無いけど、いい事も無い。
363デフォルトの名無しさん
2017/05/11(木) 18:46:17.93ID:TwpHLB2C しもた。。。
7777を一個と数える版(search2)でバグあった。
見つけたらdrop (length w)してるんだから、リストに追加する発見位置はそのままだけど、現在位置は検索文字列の長さ分足さなきゃだった。
適当に修正お願いします。(おい)
7777を一個と数える版(search2)でバグあった。
見つけたらdrop (length w)してるんだから、リストに追加する発見位置はそのままだけど、現在位置は検索文字列の長さ分足さなきゃだった。
適当に修正お願いします。(おい)
364デフォルトの名無しさん
2017/05/11(木) 20:01:32.06ID:o2lqEhku 第三形態も1から書いたほうが早いな
そう、バッテリー付き言語ならね
そう、バッテリー付き言語ならね
365デフォルトの名無しさん
2017/05/11(木) 20:43:01.26ID:pualqazL ていうか何のスレ?
次世代言語議論してないよな
次世代言語議論してないよな
366デフォルトの名無しさん
2017/05/11(木) 21:12:13.28ID:w7aTa8S+ 次世代言語での>>359への回答待ち。
367デフォルトの名無しさん
2017/05/11(木) 21:28:25.35ID:w7aTa8S+ って事は実行結果の例も修正せなな。。。
>>348のコードをコピペしたテスト用テキストだとこう表示されるはず。
>search test.txt search
(True,16,[(3,1),(3,16),(5,1),(6,1),(6,56),(7,1),(7,22),(9,1),(9,17),(11,1),(12,1),(12,50),(13,1),(13,22),(18,12),(20,60)])
>>348のコードをコピペしたテスト用テキストだとこう表示されるはず。
>search test.txt search
(True,16,[(3,1),(3,16),(5,1),(6,1),(6,56),(7,1),(7,22),(9,1),(9,17),(11,1),(12,1),(12,50),(13,1),(13,22),(18,12),(20,60)])
368デフォルトの名無しさん
2017/05/11(木) 22:14:35.58ID:pualqazL 久しぶりにコードみたけどHaskellちゃんキモイな〜
10年前から主要言語TOP10は変わってないという事実をお忘れなきように
10年前から主要言語TOP10は変わってないという事実をお忘れなきように
369デフォルトの名無しさん
2017/05/11(木) 23:32:16.09ID:5z6DmCSe 10年間スマホを世界中で売りまくっても何も変わらなかったのは意外だな
370デフォルトの名無しさん
2017/05/12(金) 00:30:03.06ID:3oRK7AIr それは今後も主要言語は変わらないから次世代言語について考えることは無意味ってことかな
372デフォルトの名無しさん
2017/05/12(金) 06:43:44.99ID:4vGyFDSj 実装基準がよくわからない。
import System.Environment(getArgs)
import Data.List(isInfixOf,isPrefixOf,tails,findIndices)
search1 = isInfixOf
search2 word = length . filter (isPrefixOf word) . tails
search3 word content = (ps /= [], length ps, ps)
where ps = concat . zipWith indices [0..] $ lines content
indices l = zip (repeat l) . findIndices (isPrefixOf word) . tails
main = do
(file:word:_) <- getArgs
print =<< search1 word <$> readFile file
print =<< search2 word <$> readFile file
print =<< search3 word <$> readFile file
import System.Environment(getArgs)
import Data.List(isInfixOf,isPrefixOf,tails,findIndices)
search1 = isInfixOf
search2 word = length . filter (isPrefixOf word) . tails
search3 word content = (ps /= [], length ps, ps)
where ps = concat . zipWith indices [0..] $ lines content
indices l = zip (repeat l) . findIndices (isPrefixOf word) . tails
main = do
(file:word:_) <- getArgs
print =<< search1 word <$> readFile file
print =<< search2 word <$> readFile file
print =<< search3 word <$> readFile file
373デフォルトの名無しさん
2017/05/12(金) 08:36:47.18ID:u9nYGLh2 そもそもこのスレからHaskellはスレ違いになったんだが
374あ
2017/05/12(金) 08:40:43.26ID:6RnAOpKz >>364
第二形態書いた時点で第一形態は、第二形態を中で呼ぶ様に書き換えないと悲劇だし、第三形態も同じ。
レビューで辛辣な第一形態を安易に書いたdisりを受けたあと、直交性が失われるために、それより前の形態をAPIとしてobsoluteにしてライブラリ関数とかマクロに降格するレベルだよね。
第二形態書いた時点で第一形態は、第二形態を中で呼ぶ様に書き換えないと悲劇だし、第三形態も同じ。
レビューで辛辣な第一形態を安易に書いたdisりを受けたあと、直交性が失われるために、それより前の形態をAPIとしてobsoluteにしてライブラリ関数とかマクロに降格するレベルだよね。
375デフォルトの名無しさん
2017/05/12(金) 10:34:41.20ID:nQbZenvu >>372
Data.Listの関数はisInfixOfとisPrefixOf、tailsを本で読んだだけで使った事ないな。。。
それ以外は見た事すらない。
ちゃんと使うと、ここまで書けるのね。
そう言う意味じゃ、おいらのは入門書前半の知識だけでも書けるって感じやね。
おいらがHaskell好きなのは美しさもだけど、ひたすらミニマムな知識だけでも何とかなっちゃうのが良い。
数学と同じで便利な関数知ってれば、強力な武器だし周りからは難しそうに見えるけど、基本はとても簡単で、少ない武器でもどうにかこうにか自力でも解ける。
これこそ初心者向け言語だって思ってるんだけどねぇ。。。
Data.Listの関数はisInfixOfとisPrefixOf、tailsを本で読んだだけで使った事ないな。。。
それ以外は見た事すらない。
ちゃんと使うと、ここまで書けるのね。
そう言う意味じゃ、おいらのは入門書前半の知識だけでも書けるって感じやね。
おいらがHaskell好きなのは美しさもだけど、ひたすらミニマムな知識だけでも何とかなっちゃうのが良い。
数学と同じで便利な関数知ってれば、強力な武器だし周りからは難しそうに見えるけど、基本はとても簡単で、少ない武器でもどうにかこうにか自力でも解ける。
これこそ初心者向け言語だって思ってるんだけどねぇ。。。
376デフォルトの名無しさん
2017/05/12(金) 10:35:36.50ID:nQbZenvu >>373
Haskell追い出せるだけの次世代言語の立派な回答求む。
Haskell追い出せるだけの次世代言語の立派な回答求む。
377デフォルトの名無しさん
2017/05/12(金) 13:24:07.84ID:H6Uk5vuw "Pharo Smalltalk"
search1st := [:str :kw | str includesSubstring: kw].
search2nd := [:str :kw | (str splitOn: kw) size - 1 ].
search3rd := [:str :kw |
Array streamContents: [:ss |
(str lines collect: #readStream) doWithIndex: [:strm :idx |
[strm match: kw] whileTrue: [ss nextPut: idx -> (strm position - kw size + 1)].
]
]
].
http://ws.stfx.eu/DQART2BS6GYF
search1st := [:str :kw | str includesSubstring: kw].
search2nd := [:str :kw | (str splitOn: kw) size - 1 ].
search3rd := [:str :kw |
Array streamContents: [:ss |
(str lines collect: #readStream) doWithIndex: [:strm :idx |
[strm match: kw] whileTrue: [ss nextPut: idx -> (strm position - kw size + 1)].
]
]
].
http://ws.stfx.eu/DQART2BS6GYF
378デフォルトの名無しさん
2017/05/12(金) 17:26:32.26ID:k//9Mr+f379デフォルトの名無しさん
2017/05/12(金) 20:20:28.20ID:H6Uk5vuw >>377 の search3rd はもっとシンプルに書けたので差し替え
search3rd := [:str :kw |
(str lines collectWithIndex: [:line :idx |
(line allRangesOfSubstring: kw) collect: [:range | idx -> range first]
]) concatenation
].
http://ws.stfx.eu/A3HB6MT66GI5
search3rd := [:str :kw |
(str lines collectWithIndex: [:line :idx |
(line allRangesOfSubstring: kw) collect: [:range | idx -> range first]
]) concatenation
].
http://ws.stfx.eu/A3HB6MT66GI5
380デフォルトの名無しさん
2017/05/12(金) 22:43:42.90ID:y9SJMwIK 第4世代、4番目、英語で言えば、Forth
381片山博文MZ ◆T6xkBnTXz7B0
2017/05/12(金) 22:45:07.26ID:r6F8dCD7 残念、fourth でした。
382デフォルトの名無しさん
2017/05/13(土) 00:01:55.41ID:hYOIVOdy そんなの良いから。
実際問題キャットドアより簡単だから。
次世代言語以外が回答してるのがおかしいから。
実際問題キャットドアより簡単だから。
次世代言語以外が回答してるのがおかしいから。
383デフォルトの名無しさん
2017/05/13(土) 01:15:28.36ID:VbJPsYiJ 終わった言語が必死にコード載せてアッピールしようとしててウケるw
384デフォルトの名無しさん
2017/05/13(土) 01:52:43.37ID:7Z9U0QOC pascalとかForceとかね。次世代言語だよ?
Fortunは77じゃないよね
Fortunは77じゃないよね
385デフォルトの名無しさん
2017/05/13(土) 04:50:33.84ID:j31cCXIw 数行のコードも書けぬ低脳に担がれ哀れな次世代()言語
386デフォルトの名無しさん
2017/05/13(土) 08:16:21.72ID:2mf4fJqx ぶっちゃけ新しい言語とか覚えるの面倒だから次世代とかいらねーって思ってるんだろ?
387デフォルトの名無しさん
2017/05/13(土) 08:20:03.99ID:zCDOTfft 次世代言語を考えるなら古典に立ち戻ることが重要だな。
スレタイに挙げられた言語は局所最適の枝葉末節だらけで参考にならない。
スレタイに挙げられた言語は局所最適の枝葉末節だらけで参考にならない。
388デフォルトの名無しさん
2017/05/13(土) 08:26:47.84ID:pUHHN6Pq じゃあ原点に立ち返って、Smalltalkのどこがゴミで死んだのか確認しようぜ
389デフォルトの名無しさん
2017/05/13(土) 09:04:37.48ID:1FO9O0uX さすがにそれはスレ違いだろう
390デフォルトの名無しさん
2017/05/13(土) 09:12:34.64ID:4agJqfcC いくらお題がアレとはいっても、
ここまで来てなんで一つもKotlinとかGoで書くやつがいないのか。
簡単だし時間かからないだろ?
Smalltalk馬鹿にしてる奴も意味不明。
ここまで来てなんで一つもKotlinとかGoで書くやつがいないのか。
簡単だし時間かからないだろ?
Smalltalk馬鹿にしてる奴も意味不明。
391デフォルトの名無しさん
2017/05/13(土) 10:51:00.22ID:Cn0XNRH7 お題が簡単すぎて面白くないからだろ
392デフォルトの名無しさん
2017/05/13(土) 10:59:13.12ID:n2tLG6k9 ほんまそれ。Pythonの例で問題の糞さが示されたと思ったが
393デフォルトの名無しさん
2017/05/13(土) 11:11:25.11ID:XdPYiSal python がいかに読みやすいかが示されただけだな。
394デフォルトの名無しさん
2017/05/13(土) 11:14:51.78ID:GlvX42FB Pythonの第三形態マダー?
395デフォルトの名無しさん
2017/05/13(土) 11:51:00.37ID:rBo1iP3S Pythonから次世代言語に乗り換える意味が見当たらない
397デフォルトの名無しさん
2017/05/13(土) 14:48:56.11ID:7U8nUyJb398デフォルトの名無しさん
2017/05/13(土) 16:19:26.54ID:XdPYiSal プログラミングエアプ勢の一発逆転の可能性
それが次世代言語の意義なんだよ。
それが次世代言語の意義なんだよ。
399デフォルトの名無しさん
2017/05/13(土) 18:54:00.95ID:zCDOTfft 問題が悪いとふんぞり返っていれば次世代言語がどこからか降って湧いてくるのか。
便利なスレだな。
便利なスレだな。
400あ
2017/05/13(土) 21:16:28.56ID:l2RlSRsK また、「エアプ」か。どこで流行ってんだその言葉。。
問題が悪いからと言って次世代言語が降ってこないのは当たり前と言うか、
自動車が発明される前に人々にニーズ調査したら「すごく早くて馬が疲れにくい、壊れにくい馬車がほしい」って答えただろうってフォードのおっさんの名言に尽きるだろ。
問題が悪いからと言って次世代言語が降ってこないのは当たり前と言うか、
自動車が発明される前に人々にニーズ調査したら「すごく早くて馬が疲れにくい、壊れにくい馬車がほしい」って答えただろうってフォードのおっさんの名言に尽きるだろ。
401デフォルトの名無しさん
2017/05/13(土) 21:56:48.51ID:QiNZfANm >>384
英文は無理でも言語名の綴りぐらいはちゃんと書こうね
ForceじゃなくてForth
FortrunじゃなくてFortran
pascalはPascal
(固有名詞だから頭文字は大文字、なお全部を大文字で書く・・・PASCAL・・・か否かは趣味の問題だが
全部を大文字で書くのは小文字がディスプレイやプリンタで表示・印字できなかった古い時代の名前というニュアンスが加わる)
英文は無理でも言語名の綴りぐらいはちゃんと書こうね
ForceじゃなくてForth
FortrunじゃなくてFortran
pascalはPascal
(固有名詞だから頭文字は大文字、なお全部を大文字で書く・・・PASCAL・・・か否かは趣味の問題だが
全部を大文字で書くのは小文字がディスプレイやプリンタで表示・印字できなかった古い時代の名前というニュアンスが加わる)
402デフォルトの名無しさん
2017/05/14(日) 06:47:23.26ID:FpH7uWr+ >>397
すぐ手前の流れも読まないPython使いってなんかマヌケだね
すぐ手前の流れも読まないPython使いってなんかマヌケだね
403デフォルトの名無しさん
2017/05/14(日) 11:16:19.57ID:g1XH9FW+ マジな話、いまだにショボいお題にご執心のハスケラの方がマヌケだけどね
404デフォルトの名無しさん
2017/05/14(日) 12:32:07.52ID:1QHY+inp ドア云々とかよりは実践向きだと思うけどな
405デフォルトの名無しさん
2017/05/14(日) 12:40:55.67ID:ZZLeiCLl まあドアよりはな
406デフォルトの名無しさん
2017/05/14(日) 13:56:58.74ID:KHWozqTm407デフォルトの名無しさん
2017/05/14(日) 14:23:56.19ID:tMuNfTLo408405
2017/05/14(日) 16:59:45.21ID:ZZLeiCLl409デフォルトの名無しさん
2017/05/14(日) 18:38:38.10ID:tMuNfTLo410デフォルトの名無しさん
2017/05/14(日) 19:19:30.14ID:oT3eSlat キャットドア問題も解けないくせに
411デフォルトの名無しさん
2017/05/14(日) 19:34:09.72ID:hXmCvLEt >>408
Images のデータ構造また変えやがった。いい加減にしてくれ。
Images のデータ構造また変えやがった。いい加減にしてくれ。
412デフォルトの名無しさん
2017/05/14(日) 19:53:34.96ID:tMuNfTLo413デフォルトの名無しさん
2017/05/14(日) 22:19:02.85ID:USv6MFnh414デフォルトの名無しさん
2017/05/15(月) 00:34:41.47ID:vRkjYJPr 次世代言語でも手続き型言語の呪縛からは解き放たれないのか。。。
既存言語の着せ替えでしか無いなら、プログラムの組み易さも大差無かろう。
既存言語の着せ替えでしか無いなら、プログラムの組み易さも大差無かろう。
415デフォルトの名無しさん
2017/05/15(月) 00:54:38.55ID:vRkjYJPr >>410
Haskellスレのおいらの過去の書き込みより。
341 名前:デフォルトの名無しさん [sage] :2017/04/29(土) 15:22:04.96 ID:nyANDfpK
デザパタみたいなの?
パターンって程実践で使われてないだろ。
んー。。。
使ってた感触だと、割と行き当たりばったりからの仕様変更でも何とかなるのが関数型言語の強み?と思わなくも無い。
ちょっとの変更にも関数経由するから、自然と既存の関数使い回せないか考えるし、関数型言語もそう言う風に進化して行ってるように感じる。
某スレで話題になったキャットドアクラスも、変な縛りがなければ究極的には機能の組み合わせでドアが開くかどうかの問題なのだから、タプルにBoolを並べれば良い。
ただ、同じBool値ばかりだと違う機能を付いてる(付いてない)と表現しやすいので、適当な型を作ってコンパイラが順番間違えたらエラー出すようにする。
cd = (False,型Aの値)
値が欲しかったら
getA t = snd t
または引数の時点で直接欲しい値にアクセス。
getA (_,x) = x
仕様の拡張に関してはタプルを入れ子にする事とする。
継承というよりは委譲に近い。
理屈では(以前の機能,拡張機能)の形でいくらでも入れ子に出来る。
cdEx = (cd,型Cの値,型Dの値)
cdFX = (cdEx,型Eの値)
基本機能だけなら基本のタプル取り出して使う。
getA $ fst cdEx
拡張機能だけまたは、拡張機能と基本機能の組み合わせは引数の時点で(以下略)
getC (_,x,_) = x
getAD ((_,x),_,y) = x + y
ただ、関数型言語は元々多くの状態を管理するのに向かない。
例の通り、構造が複雑になると扱い難い。
HTMLなりXMLなりXAMLなりに状態管理は任せた方がいい。
んじゃ、おいら夜勤明けなんで寝るわ。
お休みzzz...
Haskellスレのおいらの過去の書き込みより。
341 名前:デフォルトの名無しさん [sage] :2017/04/29(土) 15:22:04.96 ID:nyANDfpK
デザパタみたいなの?
パターンって程実践で使われてないだろ。
んー。。。
使ってた感触だと、割と行き当たりばったりからの仕様変更でも何とかなるのが関数型言語の強み?と思わなくも無い。
ちょっとの変更にも関数経由するから、自然と既存の関数使い回せないか考えるし、関数型言語もそう言う風に進化して行ってるように感じる。
某スレで話題になったキャットドアクラスも、変な縛りがなければ究極的には機能の組み合わせでドアが開くかどうかの問題なのだから、タプルにBoolを並べれば良い。
ただ、同じBool値ばかりだと違う機能を付いてる(付いてない)と表現しやすいので、適当な型を作ってコンパイラが順番間違えたらエラー出すようにする。
cd = (False,型Aの値)
値が欲しかったら
getA t = snd t
または引数の時点で直接欲しい値にアクセス。
getA (_,x) = x
仕様の拡張に関してはタプルを入れ子にする事とする。
継承というよりは委譲に近い。
理屈では(以前の機能,拡張機能)の形でいくらでも入れ子に出来る。
cdEx = (cd,型Cの値,型Dの値)
cdFX = (cdEx,型Eの値)
基本機能だけなら基本のタプル取り出して使う。
getA $ fst cdEx
拡張機能だけまたは、拡張機能と基本機能の組み合わせは引数の時点で(以下略)
getC (_,x,_) = x
getAD ((_,x),_,y) = x + y
ただ、関数型言語は元々多くの状態を管理するのに向かない。
例の通り、構造が複雑になると扱い難い。
HTMLなりXMLなりXAMLなりに状態管理は任せた方がいい。
んじゃ、おいら夜勤明けなんで寝るわ。
お休みzzz...
416デフォルトの名無しさん
2017/05/15(月) 01:06:58.66ID:8Y8+/ZxP 結局関数型の雄はなんなの?
417デフォルトの名無しさん
2017/05/15(月) 01:32:26.10ID:hQsWbFnv 既存の言語でやれってことだろ。
オブジェクト指向をむりやり c でやったように。
結局それが正解。
オブジェクト指向をむりやり c でやったように。
結局それが正解。
418デフォルトの名無しさん
2017/05/15(月) 01:34:34.82ID:vRkjYJPr 何が関数型言語の雄になろうと次世代言語にはならないかなぁ。。。
私はただHaskellに惚れてるだけで、ここが良いって紹介もするけど、それって結局Lisperと同じ道を歩んでると思う。
私はただHaskellに惚れてるだけで、ここが良いって紹介もするけど、それって結局Lisperと同じ道を歩んでると思う。
419デフォルトの名無しさん
2017/05/15(月) 01:36:41.34ID:vRkjYJPr しまった。。。
一人称が真面目モードに。
x私
oおいら
一人称が真面目モードに。
x私
oおいら
420デフォルトの名無しさん
2017/05/15(月) 06:38:31.61ID:k5wZeeQn アテクシはScalaが最強だと思いましてよ、ホホ
421デフォルトの名無しさん
2017/05/15(月) 09:32:58.17ID:G/N4Afa9 量子コンピュータ向けの言語じゃね?
言語なのかどうか知らんけど。
言語なのかどうか知らんけど。
422デフォルトの名無しさん
2017/05/15(月) 10:34:46.05ID:OVQU3b0Y 次世代と称される流れには2つの傾向があって
ひとつはScalaやSwiftのように従来のOOPLをベースにして(つまり機能は特に削らずに)
これまで関数型言語の独擅場だった型推論やオプショナル型といった型システムのサポートを手厚くしたもの
もうひとつは、さらに一歩進めていろいろな不都合の元凶であったクラス(もっというと継承)を外して言語機能を大胆にシンプルにしたもの
GoやRustがこれにあたる…ってところか
あと個人的には並行・並列処理のサポートを手厚くした言語、Clojureや前と重複するけどGoとかも
この調子でコアが増え続ければ重宝されると思う
Rubyは両方を狙っているけどたぶん失敗する
ひとつはScalaやSwiftのように従来のOOPLをベースにして(つまり機能は特に削らずに)
これまで関数型言語の独擅場だった型推論やオプショナル型といった型システムのサポートを手厚くしたもの
もうひとつは、さらに一歩進めていろいろな不都合の元凶であったクラス(もっというと継承)を外して言語機能を大胆にシンプルにしたもの
GoやRustがこれにあたる…ってところか
あと個人的には並行・並列処理のサポートを手厚くした言語、Clojureや前と重複するけどGoとかも
この調子でコアが増え続ければ重宝されると思う
Rubyは両方を狙っているけどたぶん失敗する
423あ
2017/05/15(月) 12:50:33.96ID:HDk+iNO5 Rust、今更もう一度触ってみたけど、割とまとまってきてるな。
風呂敷広げ過ぎた悲壮感減ってきてる。
ただ、それでもすごく安全なCとして使うほうが便利な気がするわ。
風呂敷広げ過ぎた悲壮感減ってきてる。
ただ、それでもすごく安全なCとして使うほうが便利な気がするわ。
424デフォルトの名無しさん
2017/05/15(月) 13:17:14.26ID:CnSqTz4B Rustなんて木構造もまともに書けない言語が次世代とか飯食ってるときにわらかすなwwwwwww
425デフォルトの名無しさん
2017/05/15(月) 14:36:26.20ID:JAUTsopg わらかす
426デフォルトの名無しさん
2017/05/15(月) 14:45:26.78ID:CnSqTz4B 「笑かす」な。
427デフォルトの名無しさん
2017/05/15(月) 15:08:17.40ID:hQsWbFnv 木構造もすべて配列で用意させる硬派な言語
428デフォルトの名無しさん
2017/05/15(月) 15:50:28.38ID:CnSqTz4B Rustって言わばCより低機能な言語だからな。
そりゃ何も出来なきゃ安全だよな。
そりゃ何も出来なきゃ安全だよな。
430デフォルトの名無しさん
2017/05/15(月) 17:20:05.97ID:ciuqqN4z >>416
sml/nj
sml/nj
431デフォルトの名無しさん
2017/05/15(月) 17:33:40.67ID:CnSqTz4B432あ
2017/05/15(月) 18:36:33.51ID:HDk+iNO5 >>431
この人が行き詰まってるのは、オブジェクト指向そのまま当てたからでは?
structのImplでもなく、traitの関数でもなく、
traitのImplで書けば何とかなりそうだけど。
あと、サイズを取得したいだけなら、lifetimeを明示してCopyちゃんとすれば良いのでは?
この人が行き詰まってるのは、オブジェクト指向そのまま当てたからでは?
structのImplでもなく、traitの関数でもなく、
traitのImplで書けば何とかなりそうだけど。
あと、サイズを取得したいだけなら、lifetimeを明示してCopyちゃんとすれば良いのでは?
433デフォルトの名無しさん
2017/05/15(月) 19:00:47.68ID:RWNXh8sg 書けると主張するなら書けばいいのに
434デフォルトの名無しさん
2017/05/15(月) 19:24:57.87ID:jxMhaoqU 笑かす
435デフォルトの名無しさん
2017/05/15(月) 20:17:30.50ID:hQsWbFnv 実際書くと大変なことを無意識に理解してんでしょ。
そういう種類のごまかしをするやつはよくいる。
そういう種類のごまかしをするやつはよくいる。
436あ
2017/05/15(月) 20:54:20.75ID:HDk+iNO5 書いたら面倒だって事は否定してないじゃん。
この人が行き詰まってるのは、借用とは割と関係ないオブジェクト指向脳ではって話してるんだけどなぁ。
CでもMISRA-C通そうと思うと木構造相当辛いし。
産業向けのC書いてる奴なら耐えられるレベルの話だと思うけどなぁ。
手軽さ的には俺はGoを押し続けるが、否定するもんでもないと思うようになったな。
この人が行き詰まってるのは、借用とは割と関係ないオブジェクト指向脳ではって話してるんだけどなぁ。
CでもMISRA-C通そうと思うと木構造相当辛いし。
産業向けのC書いてる奴なら耐えられるレベルの話だと思うけどなぁ。
手軽さ的には俺はGoを押し続けるが、否定するもんでもないと思うようになったな。
437デフォルトの名無しさん
2017/05/15(月) 21:00:18.80ID:zTfCWGM6 チューリング完全だからなw
438デフォルトの名無しさん
2017/05/16(火) 00:41:59.04ID:HLEZgw56 なぜか C 書く人はみんな MISRA-Cを守ってるという話になってんな。。
439デフォルトの名無しさん
2017/05/16(火) 01:26:25.84ID:YrF/ZMci まあ当のMozillaがRustでDOM木の処理書くのに難儀してるとは聞くから簡単ではないんだろうな。
物が作れない最高の言語より、物がつくれる嫌われ言語の方が結局世の中に貢献するんだよな。この点ではPHPでさえRustより世の中に役に立ってる言語と言える。
物が作れない最高の言語より、物がつくれる嫌われ言語の方が結局世の中に貢献するんだよな。この点ではPHPでさえRustより世の中に役に立ってる言語と言える。
440デフォルトの名無しさん
2017/05/16(火) 01:30:45.27ID:/yslofcu ようするに?
441デフォルトの名無しさん
2017/05/16(火) 01:46:35.68ID:O9oAiYi/ firefoxの書き換えが成功したなら実用性では文句無しになるの?
442デフォルトの名無しさん
2017/05/16(火) 02:00:35.86ID:PbASgT1d というかまだ書き換えられてないのか…
443デフォルトの名無しさん
2017/05/16(火) 11:18:02.03ID:PSQsih3e >>441
成功するなんて妄想してるからChromeにシェア完全に奪われたんじゃねーの?
成功するなんて妄想してるからChromeにシェア完全に奪われたんじゃねーの?
444あ
2017/05/16(火) 13:09:50.84ID:RIytWhRI445デフォルトの名無しさん
2017/05/16(火) 13:14:04.12ID:dZpCRHDk また発狂してる……
446デフォルトの名無しさん
2017/05/16(火) 13:18:30.66ID:D7FkMXFe 次世代スマートポインタだけでよさそうな気がするけどそれをやったらC++の独壇場だな
Goやらなんやらの出る幕がなくなってしまう
Goやらなんやらの出る幕がなくなってしまう
447デフォルトの名無しさん
2017/05/16(火) 13:43:07.20ID:PSQsih3e Goの何がすごいって、言語の批評家にこんだけタコ殴りにされても、もの作る速さが圧倒的の一点でここまででかい言語になったことだよな。
RustはCを安全に倒しすぎた結果なにも作れなくなった言語って意味では対照的。
Servoは失敗するだろうが、そこで得られた知見でRust2.0(1.xと互換性なし)が出てからが本番と見てる。
RustはCを安全に倒しすぎた結果なにも作れなくなった言語って意味では対照的。
Servoは失敗するだろうが、そこで得られた知見でRust2.0(1.xと互換性なし)が出てからが本番と見てる。
448デフォルトの名無しさん
2017/05/16(火) 14:33:32.43ID:rFzXLZrQ GUI付きのOSまで作られてるのに何も作れないとは
449デフォルトの名無しさん
2017/05/16(火) 14:47:31.26ID:D7FkMXFe 歯ブラシではなく弱者で同じことができれば尊敬されるだろうな
弱者を批判する批評家から弱者を守ってみろ
弱者を批判する批評家から弱者を守ってみろ
450デフォルトの名無しさん
2017/05/16(火) 14:57:19.22ID:bxFACSIv TiDBつーかTiKVに続報がないのがな。
対抗馬のゴキちゃんは1.0リリースしたのに。
対抗馬のゴキちゃんは1.0リリースしたのに。
452デフォルトの名無しさん
2017/05/16(火) 20:55:48.40ID:zxK8tMMg phpはガチでないわ
php持て囃してるやつらって、php書いたことないやつらだろ
プロトタイピングならまだしも、phpをプロダクトに使うたら頭おかすなるで
php持て囃してるやつらって、php書いたことないやつらだろ
プロトタイピングならまだしも、phpをプロダクトに使うたら頭おかすなるで
453デフォルトの名無しさん
2017/05/16(火) 20:57:15.12ID:gJA+c77n 関数各々link時に再帰の有無て判別できるんだろうか?
454あ
2017/05/16(火) 22:59:06.93ID:RIytWhRI455デフォルトの名無しさん
2017/05/16(火) 23:37:19.01ID:q2BEchMh456デフォルトの名無しさん
2017/05/17(水) 00:01:12.17ID:3IJ9wgg6 ペチパーへの強い憎しみを感じる……
457デフォルトの名無しさん
2017/05/17(水) 04:28:27.85ID:2wQy2LFh Nimってどうなん?
次世代感は無い気もするけど
次世代感は無い気もするけど
458デフォルトの名無しさん
2017/05/17(水) 04:48:40.76ID:bqqNuZww459デフォルトの名無しさん
2017/05/17(水) 06:25:59.43ID:IyzcLayy >>457
開発者が足りなくてライバル言語との開発競争に負けている。
それにこの用途ならNimという用途がない。
https://github.com/rust-lang/rust/graphs/contributors
https://github.com/JuliaLang/julia/graphs/contributors
https://github.com/nim-lang/Nim/graphs/contributors
開発者が足りなくてライバル言語との開発競争に負けている。
それにこの用途ならNimという用途がない。
https://github.com/rust-lang/rust/graphs/contributors
https://github.com/JuliaLang/julia/graphs/contributors
https://github.com/nim-lang/Nim/graphs/contributors
460デフォルトの名無しさん
2017/05/17(水) 07:38:00.11ID:sxUcFyDL 性的オッパイソンみたい
461デフォルトの名無しさん
2017/05/17(水) 07:38:49.95ID:dkQOogT2 まともなプログラマならPHPなんて金積まれても書かないから、
PHPを書いたことがあるプログラマは全て無能のクズペチパーでFA
PHPを書いたことがあるプログラマは全て無能のクズペチパーでFA
462デフォルトの名無しさん
2017/05/17(水) 08:29:33.19ID:wJf0VzTx >>460
何それ?楽しそう。
何それ?楽しそう。
463デフォルトの名無しさん
2017/05/17(水) 11:39:01.15ID:RUw3nkZO EC-CUBEとかphpじゃん?
求人多いじゃん?
でも言語としてはダメってこと?
求人多いじゃん?
でも言語としてはダメってこと?
464デフォルトの名無しさん
2017/05/17(水) 12:43:44.96ID:F+w5XH8T >>463
PHPは言語ではない。まずそこからだ。
PHPは言語ではない。まずそこからだ。
465デフォルトの名無しさん
2017/05/17(水) 13:07:19.59ID:rCny4GOf >>464
え?
まあ、EC-CUBEは開発当初流行ってたからPHPで作った
というだけで今一から同じもの作るとしたらPHPという
選択肢は無いんじゃないかなぁ。
PHPが流行ったのは歴史的な経緯が大きいと思うし。
え?
まあ、EC-CUBEは開発当初流行ってたからPHPで作った
というだけで今一から同じもの作るとしたらPHPという
選択肢は無いんじゃないかなぁ。
PHPが流行ったのは歴史的な経緯が大きいと思うし。
466デフォルトの名無しさん
2017/05/17(水) 13:16:25.89ID:l7mhfXJ7467あ
2017/05/17(水) 14:32:20.84ID:FjYdmJm+468デフォルトの名無しさん
2017/05/17(水) 17:32:30.07ID:0Ygr9k03 PHPはテンプレートエンジンであって、それを使って無理矢理プログラミングしてるのが異常事態っていうテンプレは置いといても、
誰がが言ってたが生産性が高いんじゃなくて生産性を前借りしてるっていうのは言い得て妙だと思った。Rubyに対しての話だがPHPにもしっかり当てはまるな。
Goは「前借り」感が少ない。少ないだけでまだあるがRubyやPHPよりはるかにマシ
誰がが言ってたが生産性が高いんじゃなくて生産性を前借りしてるっていうのは言い得て妙だと思った。Rubyに対しての話だがPHPにもしっかり当てはまるな。
Goは「前借り」感が少ない。少ないだけでまだあるがRubyやPHPよりはるかにマシ
469デフォルトの名無しさん
2017/05/17(水) 17:33:55.88ID:0Ygr9k03 借りて返さなくていいプロダクトなら確かに一つの選択肢になり得るってのは否定しようがないけどな
470デフォルトの名無しさん
2017/05/17(水) 23:33:27.42ID:NA6XP0ND 今出てきてる次世代言語はどれも外れ臭い
洗練されてない
くどい
従来の物のほうがなじみやすい
目立った成果をあげていない
洗練されてない
くどい
従来の物のほうがなじみやすい
目立った成果をあげていない
471デフォルトの名無しさん
2017/05/17(水) 23:56:52.27ID:MByoVwD6 >従来の物のほうがなじみやすい
これはさすがにアホだろ
これはさすがにアホだろ
472デフォルトの名無しさん
2017/05/18(木) 01:36:26.16ID:ahqmwSBr >目立った成果をあげていない
新興言語が既存言語の積み上げた資産ぶち抜く成果上げたらびびるわ。
コンテナオーケストレーション領域やNewSQL領域みたいなそもそも新しい分野ではGoが結構強い。
新興言語が既存言語の積み上げた資産ぶち抜く成果上げたらびびるわ。
コンテナオーケストレーション領域やNewSQL領域みたいなそもそも新しい分野ではGoが結構強い。
473デフォルトの名無しさん
2017/05/18(木) 03:34:10.58ID:DKg0Na73 AndroidでKotlinサポート!
474デフォルトの名無しさん
2017/05/18(木) 06:06:25.90ID:TSzqrQQ0 HaskellはClojureよりは実用的。。。らしい。
【Lisp】プログラミング言語 Clojure #4【JVM】 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1483498849/
>>37
>facebook傘下のwitaiが基盤実装をclojureからc++かhaskellに移行する予定だったらしく、haskellにしたとのこと。
>移行したら読みやすいみたいな話もちょっとだけ。
>
>clojureの場合、ライブラリは一度作るまでいろいろいじって、一回出来るとあまりいじらないイメージもあるけど、実装を多人数でよくいじるみたいなのだと、難しいのかな?
>IDE上手く使えばそういう開発もできるのだけど、最初からなんでも決まってるほうがいいってのはgo見るとわかる気もする。
>https://wit.ai/blog/2017/05/01/new-duckling
【Lisp】プログラミング言語 Clojure #4【JVM】 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1483498849/
>>37
>facebook傘下のwitaiが基盤実装をclojureからc++かhaskellに移行する予定だったらしく、haskellにしたとのこと。
>移行したら読みやすいみたいな話もちょっとだけ。
>
>clojureの場合、ライブラリは一度作るまでいろいろいじって、一回出来るとあまりいじらないイメージもあるけど、実装を多人数でよくいじるみたいなのだと、難しいのかな?
>IDE上手く使えばそういう開発もできるのだけど、最初からなんでも決まってるほうがいいってのはgo見るとわかる気もする。
>https://wit.ai/blog/2017/05/01/new-duckling
475あ
2017/05/18(木) 08:04:06.63ID:j3O3T+hJ476デフォルトの名無しさん
2017/05/18(木) 10:38:06.37ID:CUeY4+YJ477デフォルトの名無しさん
2017/05/18(木) 11:37:49.17ID:sfBdYfQZ 過去の資産を自然に利用できるってのは次世代言語にとってでかいってことかね。
そういう意味じゃ c++ は先見性のある言語だったんだろうな。
そういう意味じゃ c++ は先見性のある言語だったんだろうな。
478デフォルトの名無しさん
2017/05/18(木) 11:58:01.78ID:Ueu9cV6M Rustもbindgenとかで頑張ろうという姿勢はなくはないな。
肝心の言語がアレだが。
一方GoはGoogleの暴力で全部自前で資産を構築した。
肝心の言語がアレだが。
一方GoはGoogleの暴力で全部自前で資産を構築した。
479あ
2017/05/18(木) 12:37:01.30ID:j3O3T+hJ480デフォルトの名無しさん
2017/05/18(木) 13:10:22.49ID:Ueu9cV6M あ、暴力っていうのは恐怖政治って意味じゃなくて、圧倒的な自前リソースで叩き上げたって意味ね。数の暴力のニュアンスに近い
481デフォルトの名無しさん
2017/05/18(木) 13:17:24.91ID:XKDAC558 Kotlinは無事次世代から現世代に格上げされたようだな
さようなら次世代言語ことりん
さようなら次世代言語ことりん
482デフォルトの名無しさん
2017/05/18(木) 13:31:05.44ID:twTr7KgU >>459
まぁそれ言うとRoR出る前のRubyとか・・・って話に
なっちゃうしなぁ。
別に推したい訳じゃないけど、サラサラッと見た感じ
ツボは押さえてて悪くなさそうなので、今まで俺は全然
聞いたことなかったし何故かなーと思った次第。
まぁそれ言うとRoR出る前のRubyとか・・・って話に
なっちゃうしなぁ。
別に推したい訳じゃないけど、サラサラッと見た感じ
ツボは押さえてて悪くなさそうなので、今まで俺は全然
聞いたことなかったし何故かなーと思った次第。
483デフォルトの名無しさん
2017/05/18(木) 13:54:46.39ID:V9vRGfQu Google、KotlinをAndroidアプリ開発言語に選定―I/O会場から大喝采
http://jp.techcrunch.com/2017/05/18/20170517google-makes-kotlin-a-first-class-language-for-writing-android-apps/
http://jp.techcrunch.com/2017/05/18/20170517google-makes-kotlin-a-first-class-language-for-writing-android-apps/
484デフォルトの名無しさん
2017/05/18(木) 14:02:21.88ID:Ueu9cV6M Nimの競合はCrystalやJuliaって気がする。
この中ではJuliaがリードしてる。
この中ではJuliaがリードしてる。
485デフォルトの名無しさん
2017/05/18(木) 14:50:52.71ID:TSzqrQQ0486デフォルトの名無しさん
2017/05/18(木) 14:54:47.81ID:TSzqrQQ0 動かすとこんな感じ
>zipArgs hello world good by
[("hello","world"),("good","by")]
>zipArgs hello world good by
[("hello","world"),("good","by")]
487デフォルトの名無しさん
2017/05/18(木) 15:53:54.50ID:XatVFB8/ コテになってくれればNGにぶちこめるのになあ
488名前は開発中のものです。
2017/05/18(木) 16:14:27.77ID:ymL7Ro8a GoogleはJVM捨てたいと思ってたからKotlin採用したの意外だな
というかGoに自信ないの?
というかGoに自信ないの?
489デフォルトの名無しさん
2017/05/18(木) 17:11:11.24ID:ZGxkwhYz >>486
言語組み込みの1メソッドで対処できる程度のつまんないお題しか出せてないってそろそろ気付けよ
言語組み込みの1メソッドで対処できる程度のつまんないお題しか出せてないってそろそろ気付けよ
490デフォルトの名無しさん
2017/05/18(木) 18:22:51.27ID:5cH1kli9491デフォルトの名無しさん
2017/05/18(木) 18:27:00.09ID:f8y2NPBR いや単純にGoのバイナリがモノリシックでバカでかすぎるからじゃねえの?
JVMとKotlinランタイム積んだ方が総合的にスマホでは得なんだろ。
JVMとKotlinランタイム積んだ方が総合的にスマホでは得なんだろ。
492デフォルトの名無しさん
2017/05/18(木) 18:45:04.78ID:XAZP4kgQ493デフォルトの名無しさん
2017/05/18(木) 19:09:30.79ID:oGyoSyzb Haskell使いって変なのしかいないよな
なんでかしらんけど
インターフェースって書いたり文末に。つけたり
おじいちゃんなんだろうか?
なんでかしらんけど
インターフェースって書いたり文末に。つけたり
おじいちゃんなんだろうか?
494デフォルトの名無しさん
2017/05/18(木) 19:19:39.20ID:XAZP4kgQ 多いと言うか、おいらだけかと。
若くはない。
そう歳でもないつもりだったが、おっさん言われる歳になっちまった。
次世代言語にも興味あるのに、言葉ばかりでコードがあんまり出てこないから問題出せば見られるかと思ったんだが、上手くいかないね。
若くはない。
そう歳でもないつもりだったが、おっさん言われる歳になっちまった。
次世代言語にも興味あるのに、言葉ばかりでコードがあんまり出てこないから問題出せば見られるかと思ったんだが、上手くいかないね。
495デフォルトの名無しさん
2017/05/18(木) 19:22:15.02ID:oGyoSyzb sed ,grep
↓
awk
↓
perl
↓
ruby
↓
awk
↓
perl
↓
ruby
496デフォルトの名無しさん
2017/05/18(木) 19:58:51.19ID:twTr7KgU 句点打つとおじいちゃんて何か非常に新鮮だな。
これで俺もおじいちゃんの仲間入り。
これで俺もおじいちゃんの仲間入り。
497デフォルトの名無しさん
2017/05/18(木) 20:03:00.27ID:XAZP4kgQ まー何にせよ、お話ばかりで全然コード出ないのにウンザリなのよ。
簡単なので良いから次世代言語のコード見て見たいのよ。
簡単なので良いから次世代言語のコード見て見たいのよ。
498デフォルトの名無しさん
2017/05/18(木) 20:19:35.82ID:PWYbvK6z githubでも漁ってれば良いのでは
499デフォルトの名無しさん
2017/05/18(木) 20:45:13.68ID:lDLOBuVe インタフェース?
インタネット?
インタネット?
500デフォルトの名無しさん
2017/05/18(木) 21:19:37.89ID:CUeY4+YJ501デフォルトの名無しさん
2017/05/18(木) 21:22:49.46ID:oGyoSyzb 別人だろ
昨日から見始めたんだから
昨日から見始めたんだから
502デフォルトの名無しさん
2017/05/18(木) 22:13:42.45ID:CUeY4+YJ >>479
そうか次世代ではあったか
しかし動的で静的にも使えるGroovyのが書いてて楽しかった
普通のJavaコードをそのままコンパイルできたし敷居も低かった
KotlInは今使ってはいるが、優等生過ぎて自分には合わない感じがするな
そうか次世代ではあったか
しかし動的で静的にも使えるGroovyのが書いてて楽しかった
普通のJavaコードをそのままコンパイルできたし敷居も低かった
KotlInは今使ってはいるが、優等生過ぎて自分には合わない感じがするな
503デフォルトの名無しさん
2017/05/18(木) 22:17:31.87ID:CUeY4+YJ >>501
ほんとかよw
ほんとかよw
504デフォルトの名無しさん
2017/05/18(木) 22:32:46.48ID:L+z+Rh5o >>501
半年ROMってから書き込めよクソザコナメクジ
半年ROMってから書き込めよクソザコナメクジ
505デフォルトの名無しさん
2017/05/18(木) 23:37:06.81ID:oGyoSyzb506デフォルトの名無しさん
2017/05/19(金) 01:22:16.89ID:NMLOtQ5J 今回みたいにGoogleとかその他大企業が採用するかどうかが全てだな
ここでこれは次世代、そうじゃないとか言っててもチラシの裏だな
ともかく、GoogleはJVM捨てる方向に行くかと思ったけど、このタイミングで捨てなかったらずっと使われるだろうな
ここでこれは次世代、そうじゃないとか言っててもチラシの裏だな
ともかく、GoogleはJVM捨てる方向に行くかと思ったけど、このタイミングで捨てなかったらずっと使われるだろうな
507デフォルトの名無しさん
2017/05/19(金) 01:29:41.16ID:PoZXo8Ro 別にビジネスにするわけでもなし、酒の肴にあーでもない
こーでもない言って楽しむスレでしょ?
もっとマイナーな奴発掘してみても面白いんじゃないかな
こーでもない言って楽しむスレでしょ?
もっとマイナーな奴発掘してみても面白いんじゃないかな
508デフォルトの名無しさん
2017/05/19(金) 06:03:36.39ID:a+VoRKlA kotlinてネイティブでも動かす方向みたいだけど
やっぱjvm嫌なんかね
https://blog.jetbrains.com/kotlin/2017/05/kotlinnative-v0-2-is-out/
やっぱjvm嫌なんかね
https://blog.jetbrains.com/kotlin/2017/05/kotlinnative-v0-2-is-out/
509デフォルトの名無しさん
2017/05/19(金) 07:21:55.50ID:VJmnxTyM510あ
2017/05/19(金) 08:11:43.65ID:3tW0/dbk JackとJillがいまいちだった、ってので、なんとかしたかったんだろうな。
JVMはARTの時点でほぼ捨ててるのでは?LLVMベースのAOTに近い動きしてたと思う。
JVMはARTの時点でほぼ捨ててるのでは?LLVMベースのAOTに近い動きしてたと思う。
511デフォルトの名無しさん
2017/05/19(金) 09:33:01.74ID:Ig6oJN7I Google的にはとりあえずOracleに訴状は勝ったしな
そのうちJetBrain買収して全権掌握、kotlinもやりたい放題弄りだすんじゃね
androidがjavaもどきである必要性は世界的に皆無だしみんなハッピー
そのうちJetBrain買収して全権掌握、kotlinもやりたい放題弄りだすんじゃね
androidがjavaもどきである必要性は世界的に皆無だしみんなハッピー
512デフォルトの名無しさん
2017/05/19(金) 10:05:13.89ID:PoZXo8Ro 元々は上物の開発しやすいようにJavaなんだよね?
でもパフォーマンスとかに問題があったからなんやかんや
していた感じで。
一時期UIというか上位層にJavaって流行ってたしナァ。
でもパフォーマンスとかに問題があったからなんやかんや
していた感じで。
一時期UIというか上位層にJavaって流行ってたしナァ。
513デフォルトの名無しさん
2017/05/19(金) 10:15:34.60ID:VJmnxTyM Oracleは大企業の中で最弱・・・みたいな設定を後出しするやつは無能
最初から大企業の強さを疑問視していた方が正しい
最初から大企業の強さを疑問視していた方が正しい
514デフォルトの名無しさん
2017/05/19(金) 11:05:24.31ID:oL/PZTz9 webkitをblinkにフォークしたgoogleのことだ
そのうちコトリンもポロリンとかにフォークされる
そのうちコトリンもポロリンとかにフォークされる
515デフォルトの名無しさん
2017/05/19(金) 11:16:40.28ID:+diyR2T6 Kotlinとやらは今のScalaよりも良いものなのかね?
516デフォルトの名無しさん
2017/05/19(金) 11:42:51.86ID:DP36oPkJ kotlinのニュース聞いて調べてみたけど、なんだよOOP(笑)か。
ここで関数型の言語指名してればGoogleもまだやるなぁと感心したけれど。
ここで関数型の言語指名してればGoogleもまだやるなぁと感心したけれど。
517デフォルトの名無しさん
2017/05/19(金) 11:59:32.63ID:Jt2Le5fJ518あ
2017/05/19(金) 12:05:33.38ID:3tW0/dbk >>516
書いてみ。
クラス宣言は必ずしも要らんし、データの定義だけが出来たり
クラスみたいだけど、ブロック始まって即関数ではなく束縛とか宣言できたり処理できたり関数書いたりできて、それがメソッドやプロパティになったり、
割と無茶できる言語だよ。
書いてみ。
クラス宣言は必ずしも要らんし、データの定義だけが出来たり
クラスみたいだけど、ブロック始まって即関数ではなく束縛とか宣言できたり処理できたり関数書いたりできて、それがメソッドやプロパティになったり、
割と無茶できる言語だよ。
519デフォルトの名無しさん
2017/05/19(金) 13:23:54.29ID:2r0FKFiQ 今のScalaはランタイムの大きさとかコンパイル時間とかでモバイルに適合しないってのは理解できるんだが、
Googleともあろう企業がScalaのランタイム改良ではなく言語としては劣化ScalaのKotlin採用って方針にしてるのは違和感あるんだよな。
Googleともあろう企業がScalaのランタイム改良ではなく言語としては劣化ScalaのKotlin採用って方針にしてるのは違和感あるんだよな。
520デフォルトの名無しさん
2017/05/19(金) 14:09:46.57ID:A3h0WO1I わかりやすいってのは重要なポイントでしょ。
次世代ヲタからすれば、SwiftとかKotlinとかGoが憎くて憎くて仕方ないんだろうな。
次世代ヲタからすれば、SwiftとかKotlinとかGoが憎くて憎くて仕方ないんだろうな。
521デフォルトの名無しさん
2017/05/19(金) 14:15:46.20ID:rZS5Oczq わかりやすいのは大事だな
低機能言語が読みやすいとは思わんけど
低機能言語が読みやすいとは思わんけど
522デフォルトの名無しさん
2017/05/19(金) 14:20:00.44ID:kmqi8gbh 可読性の観点から言うと、Kotlinが読みにくいというよりはScalaのimplicit嫌ったか。
それなら納得できるわ。
それなら納得できるわ。
523デフォルトの名無しさん
2017/05/19(金) 14:26:16.91ID:6kOz+D1v あまり次世代っぽくはないけど、Goが並行処理を得意そうなのでこんなお題はどうでしょう?
お題
1) 1から1000までの整数からなる要素数1000の配列を作ってそれをランダムに並び替え
2) 当該配列の各要素nについて、sleep等でnミリ秒後にnを返す処理を別スレッドで起動し
3) 各スレッド終了順に配列等に結果を収めそれが昇順になっているかを真偽値で返すコードを書け。
4) 念のため (2)〜(3)にかかった時間を計測しこれも同時に提示せよ(1秒を大きく越えていないことを確認)
5) (3)が偽なら、(2)を「n*mミリ秒(mは2以上の整数)」に変えてmがいくつ以上なら真を返すかも示せ。
要はスリープソートですが…
お題
1) 1から1000までの整数からなる要素数1000の配列を作ってそれをランダムに並び替え
2) 当該配列の各要素nについて、sleep等でnミリ秒後にnを返す処理を別スレッドで起動し
3) 各スレッド終了順に配列等に結果を収めそれが昇順になっているかを真偽値で返すコードを書け。
4) 念のため (2)〜(3)にかかった時間を計測しこれも同時に提示せよ(1秒を大きく越えていないことを確認)
5) (3)が偽なら、(2)を「n*mミリ秒(mは2以上の整数)」に変えてmがいくつ以上なら真を返すかも示せ。
要はスリープソートですが…
524デフォルトの名無しさん
2017/05/19(金) 14:37:07.10ID:v/FcS/dJ おいらのPCがAtomなんだが。。。
Haskellで並列化は今一理解出来てないのか逆に遅くなる。。。
本の通りなら速くもなるんだろうが、使いこなせてない。
途中からシングルスレッド処理に切り替えるのが肝っぽい。
上手く行ったら参戦するけど、期待しないでね。
Haskellで並列化は今一理解出来てないのか逆に遅くなる。。。
本の通りなら速くもなるんだろうが、使いこなせてない。
途中からシングルスレッド処理に切り替えるのが肝っぽい。
上手く行ったら参戦するけど、期待しないでね。
525デフォルトの名無しさん
2017/05/19(金) 14:41:06.27ID:rZS5Oczq 俺もお題考えたぞ!!
ハートリーフォック方程式を解くコードを書け
基底はガウス基底。6-31G**でのベンゼンの計算結果を示すこと!!
分子積分は並列化して下さい!!
ハートリーフォック方程式を解くコードを書け
基底はガウス基底。6-31G**でのベンゼンの計算結果を示すこと!!
分子積分は並列化して下さい!!
526デフォルトの名無しさん
2017/05/19(金) 15:38:16.89ID:6kOz+D1v >>523
回答例を兼ねてRubyで書いたのを晒します
手元の環境ではスレッド数的に厳しかったので100にしてmは5でした
$ ruby sleepsort.rb
m = 1; time(sec) = 0.129255; sorted? = false
m = 2; time(sec) = 0.3634174; sorted? = false
m = 3; time(sec) = 0.7056763; sorted? = false
m = 4; time(sec) = 1.1430185; sorted? = false
m = 5; time(sec) = 1.6765738; sorted? = true
http://ideone.com/RhQXqq
※ideone.comには制限があるようなのでスレッド数は更に減らして10にしています
回答例を兼ねてRubyで書いたのを晒します
手元の環境ではスレッド数的に厳しかったので100にしてmは5でした
$ ruby sleepsort.rb
m = 1; time(sec) = 0.129255; sorted? = false
m = 2; time(sec) = 0.3634174; sorted? = false
m = 3; time(sec) = 0.7056763; sorted? = false
m = 4; time(sec) = 1.1430185; sorted? = false
m = 5; time(sec) = 1.6765738; sorted? = true
http://ideone.com/RhQXqq
※ideone.comには制限があるようなのでスレッド数は更に減らして10にしています
527デフォルトの名無しさん
2017/05/19(金) 15:43:19.44ID:v/FcS/dJ >>525
高卒のおいらには、そもそもその方程式が分からない。。。
高卒のおいらには、そもそもその方程式が分からない。。。
528デフォルトの名無しさん
2017/05/19(金) 18:37:46.78ID:co8auLJ+ 次世代言語は物理や数学が扱いやすいことが必須ってわけじゃないから
数学を必要とするのはほんの一部
次世代でも手続型言語が主流なのは変わらないだろう
数学を必要とするのはほんの一部
次世代でも手続型言語が主流なのは変わらないだろう
529デフォルトの名無しさん
2017/05/19(金) 18:42:47.68ID:co8auLJ+ 同じ処理をするにしても
より記述量が少なく
間違いが起こりにくく
学習時間が少ないものが今後も好まれるのではないか
より記述量が少なく
間違いが起こりにくく
学習時間が少ないものが今後も好まれるのではないか
530デフォルトの名無しさん
2017/05/19(金) 18:44:19.31ID:co8auLJ+ あとはwebとの親和性かな…
531デフォルトの名無しさん
2017/05/19(金) 18:47:42.86ID:EInD1neL 手続き型言語が主流なのは分かるけど、オブジェクト指向も宣言的なプログラミングを目指してるはずで、メソッドチェーンとかで済むように進化していくはずなんだ。
samlltalkやrubyはかなり宣言的に書ける場合がある。
pythonも>>485をリスト内包表記有るからHaskellみたいに宣言的に書けるはずだし。
次世代言語が過去の言語に宣言的プログラミングで劣ったら元も子もないよ。
samlltalkやrubyはかなり宣言的に書ける場合がある。
pythonも>>485をリスト内包表記有るからHaskellみたいに宣言的に書けるはずだし。
次世代言語が過去の言語に宣言的プログラミングで劣ったら元も子もないよ。
532デフォルトの名無しさん
2017/05/19(金) 18:53:11.32ID:co8auLJ+ 宣言的プログラミング"も" 書けるのであって
宣言的プログラミングに近づけば優秀というわけじゃないから
宣言的プログラミングに近づけば優秀というわけじゃないから
533デフォルトの名無しさん
2017/05/19(金) 18:57:49.08ID:EInD1neL "も"で良いよ。
でも、手続き型言語でどこまで宣言的になったか見てみたい。
ifもforもここまで使わないで済むって。
でも、手続き型言語でどこまで宣言的になったか見てみたい。
ifもforもここまで使わないで済むって。
534デフォルトの名無しさん
2017/05/19(金) 19:24:24.98ID:rQS0QApr535デフォルトの名無しさん
2017/05/19(金) 20:17:34.42ID:0YWm4zQf そこそこ高学歴の学生としては数学扱いやすい言語以外はそもそも学ぶ気にならないなあ
だからPythonとか大好きだし、もし自分が言語を決める立場になったら、Pythonで出来ることは全部慣れてるPythonでやると思う
だからPythonとか大好きだし、もし自分が言語を決める立場になったら、Pythonで出来ることは全部慣れてるPythonでやると思う
536デフォルトの名無しさん
2017/05/19(金) 20:57:32.26ID:EInD1neL >>485をHaskell(読みやすくしてみた)、Ruby、Pythonで書いてみた。
Haskell
import System.Environment
makeList cs f = take (length cs `div` 2) [cs!!x | x <- [0..], f x]
zipArgs args = zip evenList oddList
where
evenList = makeList args even
oddList = makeList args odd
main = getArgs >>= print.zipArgs
Ruby
evenarry,oddarry = [],[]
ARGV.each_with_index{|line, i|
evenarry.push line if i.even?
oddarry.push line if i.odd?
}
evenarry.zip(oddarry){|x,y| print [x,y] } if evenarry.size < oddarry.size
oddarry.zip(evenarry){|y,x| print [x,y] } if evenarry.size >= oddarry.size
puts
Python
import sys
evenList = [arg for i, arg in zip(range(len(sys.argv[1:])),sys.argv[1:]) if i % 2 == 0]
oddList = [arg for i, arg in zip(range(len(sys.argv[1:])),sys.argv[1:]) if i % 2 == 1]
for (x,y) in zip(evenList,oddList):
____print((x,y), end = '')
print()
Haskell
import System.Environment
makeList cs f = take (length cs `div` 2) [cs!!x | x <- [0..], f x]
zipArgs args = zip evenList oddList
where
evenList = makeList args even
oddList = makeList args odd
main = getArgs >>= print.zipArgs
Ruby
evenarry,oddarry = [],[]
ARGV.each_with_index{|line, i|
evenarry.push line if i.even?
oddarry.push line if i.odd?
}
evenarry.zip(oddarry){|x,y| print [x,y] } if evenarry.size < oddarry.size
oddarry.zip(evenarry){|y,x| print [x,y] } if evenarry.size >= oddarry.size
puts
Python
import sys
evenList = [arg for i, arg in zip(range(len(sys.argv[1:])),sys.argv[1:]) if i % 2 == 0]
oddList = [arg for i, arg in zip(range(len(sys.argv[1:])),sys.argv[1:]) if i % 2 == 1]
for (x,y) in zip(evenList,oddList):
____print((x,y), end = '')
print()
537デフォルトの名無しさん
2017/05/19(金) 22:15:21.36ID:20gWsnkC538デフォルトの名無しさん
2017/05/19(金) 22:22:13.75ID:E3Xd/U2i 今飲み屋なので明日確認するけど、おいらは(へっぽこ)Haskellerであって、RubyもPythonもそこまで得意じゃない。
あんたみたいな精通してる人のがずっと良いコード書けると思う。
ただ、オブジェクト指向も結局、宣言的プログラミングが理想の形なのは確か。
あんたみたいな精通してる人のがずっと良いコード書けると思う。
ただ、オブジェクト指向も結局、宣言的プログラミングが理想の形なのは確か。
539デフォルトの名無しさん
2017/05/19(金) 23:08:50.45ID:R52jpALp >>535
数学好きならJulia使ってみようぜ。今年1.0出る予定だそうだ。
数学好きならJulia使ってみようぜ。今年1.0出る予定だそうだ。
540デフォルトの名無しさん
2017/05/19(金) 23:26:54.55ID:EInD1neL541デフォルトの名無しさん
2017/05/19(金) 23:35:57.31ID:EInD1neL542デフォルトの名無しさん
2017/05/19(金) 23:45:26.92ID:0YWm4zQf543デフォルトの名無しさん
2017/05/19(金) 23:48:20.94ID:R52jpALp >>541
そりゃHaskellやLispと比べりゃどんな言語もごちゃごちゃしてるわ。
Juliaが狙撃対象にしてるのはRやPython(つーかNumpy)だから、Haskellはそもそも意識してないはず。
おまいさんに八つ当たりしてもしょうがないんだが、個人的にHaskellは二項演算子のググラビリティが死ぬほど低いのが困る。
そりゃHaskellやLispと比べりゃどんな言語もごちゃごちゃしてるわ。
Juliaが狙撃対象にしてるのはRやPython(つーかNumpy)だから、Haskellはそもそも意識してないはず。
おまいさんに八つ当たりしてもしょうがないんだが、個人的にHaskellは二項演算子のググラビリティが死ぬほど低いのが困る。
544デフォルトの名無しさん
2017/05/19(金) 23:54:27.07ID:co8auLJ+ pythonは言語的に優れてるとはおもわんけど簡素だよね全体的に
学習コストが低い
そこが高学歴wの人に好かれるとは思わなかったけど
学習コストが低い
そこが高学歴wの人に好かれるとは思わなかったけど
545デフォルトの名無しさん
2017/05/19(金) 23:59:47.82ID:0YWm4zQf >>544
俺がPython好きなのは簡素だからではないけど、たしかに物理や数学の勉強で忙しくって、あんまり難しい言語は流行らないなあ
俺がPython好きなのは簡素だからではないけど、たしかに物理や数学の勉強で忙しくって、あんまり難しい言語は流行らないなあ
546デフォルトの名無しさん
2017/05/20(土) 00:04:40.55ID:HfZ9LPLj Pythonは教科書に載ってる模擬言語にそっくりだ
昔はpascal風のが多かったけど
昔はpascal風のが多かったけど
547デフォルトの名無しさん
2017/05/20(土) 00:05:47.77ID:ntB1AqSN548デフォルトの名無しさん
2017/05/20(土) 00:14:11.99ID:Mj4DXfyk549デフォルトの名無しさん
2017/05/20(土) 00:25:17.41ID:Mj4DXfyk550デフォルトの名無しさん
2017/05/20(土) 01:38:29.31ID:l+OpXRNf 学歴たけーからこの言語は使えませんとかなんなんw
普通に言ってきたら馬鹿だとしか思えなくなるわw
普通に言ってきたら馬鹿だとしか思えなくなるわw
551デフォルトの名無しさん
2017/05/20(土) 08:02:40.56ID:1yTY6BxE 大学生と中学生って3年ちょっとの差しかないからな
552デフォルトの名無しさん
2017/05/20(土) 08:20:32.04ID:4ZGrm/1B553デフォルトの名無しさん
2017/05/20(土) 08:56:41.66ID:Ykf9CvnE >>543
すまん。
ググラビリティって何だ?
って調べたらググり易さ?
そんなに記号多かったっけ。。。
モナドとファンクタ以外は普通の言語にもある記号だろ?
本一冊持ってれば十分だし、Hoogle有るから。
それ言ったら2引数の関数全て二項演算子になるし、二項演算子も全て2引数の関数になる。
かえって(*)とかのセクション(2引数の関数)としてググれば見つかりやすいかもな。
すまん。
ググラビリティって何だ?
って調べたらググり易さ?
そんなに記号多かったっけ。。。
モナドとファンクタ以外は普通の言語にもある記号だろ?
本一冊持ってれば十分だし、Hoogle有るから。
それ言ったら2引数の関数全て二項演算子になるし、二項演算子も全て2引数の関数になる。
かえって(*)とかのセクション(2引数の関数)としてググれば見つかりやすいかもな。
554デフォルトの名無しさん
2017/05/20(土) 09:03:31.15ID:Ykf9CvnE >>544
プログラミングが本分じゃ無い人にとっては言語学習はコストだわな。
オブジェクト指向にどのくらい純粋かとか、そんなのどーでも良いんだろう。
おいらは言語オタだから純粋さにこだわって行き着いたのがHaskellだったが。
そのHaskellも実装が関数型言語ならこんな最適化が出来るって本に書いてたことをあんまり実現出来てない、理想から程遠い実装なんだが。
プログラミングが本分じゃ無い人にとっては言語学習はコストだわな。
オブジェクト指向にどのくらい純粋かとか、そんなのどーでも良いんだろう。
おいらは言語オタだから純粋さにこだわって行き着いたのがHaskellだったが。
そのHaskellも実装が関数型言語ならこんな最適化が出来るって本に書いてたことをあんまり実現出来てない、理想から程遠い実装なんだが。
555デフォルトの名無しさん
2017/05/20(土) 09:04:28.62ID:SQ1bJtqA >>550
そんなん言ってる奴おる?
そんなん言ってる奴おる?
556デフォルトの名無しさん
2017/05/20(土) 09:15:34.10ID:1yTY6BxE 言ってる奴はいるが、ちょろっと検索した程度では見つからないな
検索は万能じゃないというかむしろ無能である
検索は万能じゃないというかむしろ無能である
557デフォルトの名無しさん
2017/05/20(土) 10:10:53.27ID:/WJez+wG558デフォルトの名無しさん
2017/05/20(土) 10:34:26.74ID:oEL0pKOn Kotlinが晴れて現世代になったから
次スレからHaskellはスレタイに復帰ですね
永遠の次世代言語として
次スレからHaskellはスレタイに復帰ですね
永遠の次世代言語として
559デフォルトの名無しさん
2017/05/20(土) 10:36:59.62ID:Ykf9CvnE へ〜
Haskellは、サーバサイド・ソフトウェアを構築する際の“秘密兵器に最も相応しい”とCarl Baatz氏(Better社の共同設立者)は述べている。
https://www.infoq.com/jp/news/2016/08/haskell-production-retrospective
サーバーサイドで実行するソフトウェアの構築を行う場合は、Haskellは今日探し得る中で最も秘密兵器に近いと言っていいかもしれません。
http://postd.cc/haskell-in-a-startup/
Haskellは、サーバサイド・ソフトウェアを構築する際の“秘密兵器に最も相応しい”とCarl Baatz氏(Better社の共同設立者)は述べている。
https://www.infoq.com/jp/news/2016/08/haskell-production-retrospective
サーバーサイドで実行するソフトウェアの構築を行う場合は、Haskellは今日探し得る中で最も秘密兵器に近いと言っていいかもしれません。
http://postd.cc/haskell-in-a-startup/
560デフォルトの名無しさん
2017/05/20(土) 10:38:31.13ID:oEL0pKOn 永遠の秘密兵器
561デフォルトの名無しさん
2017/05/20(土) 10:47:37.49ID:K5B4Hn4Z twitterに捨てられ
採用したchatw○rksは運気が下がり
Kotlinにすら負けた
Scalaよ、どうしてこうなった?
採用したchatw○rksは運気が下がり
Kotlinにすら負けた
Scalaよ、どうしてこうなった?
562デフォルトの名無しさん
2017/05/20(土) 11:34:53.45ID:PlVXA0LD >>553
コードリーディングしてるとき、例えば<$>とか<*>とかが出てきて、さてこの二項演算子の意味はなんだ?って調べたいとする。
Googleの検索窓に突っ込む。記号しかないので検索結果がまともに出てこない。
Hoogleはしらんかったな。
コードリーディングしてるとき、例えば<$>とか<*>とかが出てきて、さてこの二項演算子の意味はなんだ?って調べたいとする。
Googleの検索窓に突っ込む。記号しかないので検索結果がまともに出てこない。
Hoogleはしらんかったな。
563デフォルトの名無しさん
2017/05/20(土) 11:40:19.93ID:Ykf9CvnE まずHaskell入門書なりサイトなり読めよ。
真っ先に紹介されるぞ->Hoogle
真っ先に紹介されるぞ->Hoogle
564デフォルトの名無しさん
2017/05/20(土) 11:58:59.27ID:1yTY6BxE 厳格なクラスベースOOPから撤退して手続き型に戻りたいだけじゃないか本音は
しかし撤退しただけというのを秘密にするための兵器が必要だった
しかし撤退しただけというのを秘密にするための兵器が必要だった
565デフォルトの名無しさん
2017/05/20(土) 12:00:53.27ID:Mj4DXfyk >>562
<$>とかはGoogleで検索できるよ
<$>とかはGoogleで検索できるよ
566デフォルトの名無しさん
2017/05/20(土) 12:07:06.01ID:Mj4DXfyk567デフォルトの名無しさん
2017/05/20(土) 12:15:26.38ID:Mj4DXfyk568デフォルトの名無しさん
2017/05/20(土) 12:50:31.59ID:jUCOTPFR569デフォルトの名無しさん
2017/05/20(土) 15:28:37.32ID:SgRoQNx5 >>543
そう言えば、おいらは数学が好きと言ってもHaskell切bチ掛けに好きにbネっただけだし=A数学で何か解瑞ヘしたいわけじb癘ウいんよ。
どっちかっつーと、数そのものの研究?みたいな事は趣味でしてる。
チャーチ数に符号付けてチャーチ数版整数作ったり、少数作ろうとしてチャーチ数って無限進数なんだと気付いて、まず10進数から作らなきゃとか。
そう言えば、おいらは数学が好きと言ってもHaskell切bチ掛けに好きにbネっただけだし=A数学で何か解瑞ヘしたいわけじb癘ウいんよ。
どっちかっつーと、数そのものの研究?みたいな事は趣味でしてる。
チャーチ数に符号付けてチャーチ数版整数作ったり、少数作ろうとしてチャーチ数って無限進数なんだと気付いて、まず10進数から作らなきゃとか。
570デフォルトの名無しさん
2017/05/20(土) 15:52:34.74ID:UvQrCH4D Haskell で扱えるなんて、ずいぶん狭い数学だな。
571デフォルトの名無しさん
2017/05/20(土) 16:50:49.32ID:l+OpXRNf haskell はモナドとか圏論あつかってる、すげードヤ
くらいの数学観だろどうせ。
くらいの数学観だろどうせ。
572デフォルトの名無しさん
2017/05/20(土) 17:11:03.97ID:SgRoQNx5 高卒の趣味グラマーに何求めてるか知らんが。。。
Haskellを切っ掛けに数学好きになったんだから、大した数学知識は無いよ。
Haskellを切っ掛けに数学好きになったんだから、大した数学知識は無いよ。
573デフォルトの名無しさん
2017/05/20(土) 20:58:11.85ID:RDFlCbPz Mathematica使わせたらしっこちびるんじゃねーの?
574デフォルトの名無しさん
2017/05/20(土) 21:04:31.14ID:SQ1bJtqA Mathematica 買えない雑魚に対するマウンティングが発生しました?
575デフォルトの名無しさん
2017/05/20(土) 21:06:38.85ID:dTi7LQL4576デフォルトの名無しさん
2017/05/20(土) 21:09:17.84ID:RDFlCbPz Mathematicaは研究室にあったけど貧乏研究室で2ライセンスしかなく
口頭で使ってるやつに早く終われとか言ってた…
口頭で使ってるやつに早く終われとか言ってた…
577デフォルトの名無しさん
2017/05/20(土) 21:27:42.49ID:l+OpXRNf RaspberryPi
になぜか入ってるという。たぶんこれが一番安い入手方法かと。
になぜか入ってるという。たぶんこれが一番安い入手方法かと。
578デフォルトの名無しさん
2017/05/20(土) 21:28:00.05ID:dfia18z7 Raspberry Pi買えば
579デフォルトの名無しさん
2017/05/20(土) 22:48:46.22ID:5jKPuKGf580デフォルトの名無しさん
2017/05/20(土) 22:53:38.13ID:jUCOTPFR581デフォルトの名無しさん
2017/05/21(日) 00:12:07.55ID:X++SkHvT Mathematicaなんて使って何するんだよ
時代遅れもいいとこ
時代遅れもいいとこ
582デフォルトの名無しさん
2017/05/21(日) 00:15:45.94ID:tsOaukBL 微分積分
583デフォルトの名無しさん
2017/05/21(日) 00:24:03.86ID:T2XhzD4X アルゴリズムとかの可視化においてMathematica より手軽なものを知らない
584デフォルトの名無しさん
2017/05/21(日) 04:22:10.79ID:YZtqITyu >>573-583
言語試したいだけでハード買えって。。。
興味はあるよ。
手続きも書けるのがちょっと引っかかるけど。
純粋じゃ無いんかいって思うけど。
本読んだ限りじゃ悪い印象はそんな無かった。
Haskellみたいな汎用性無いのと導入のハードル(値段だったりハード購入だったり)がね。。。
言語試したいだけでハード買えって。。。
興味はあるよ。
手続きも書けるのがちょっと引っかかるけど。
純粋じゃ無いんかいって思うけど。
本読んだ限りじゃ悪い印象はそんな無かった。
Haskellみたいな汎用性無いのと導入のハードル(値段だったりハード購入だったり)がね。。。
585デフォルトの名無しさん
2017/05/21(日) 09:17:42.41ID:Gn+6D2wr ラズパイも買えないとか
お前は次世代にふさわしくないね
お前は次世代にふさわしくないね
586デフォルトの名無しさん
2017/05/21(日) 09:30:18.20ID:bYtGqajI >>584
試したいならお試し版使えばいいだろ。
試したいならお試し版使えばいいだろ。
587デフォルトの名無しさん
2017/05/21(日) 09:30:54.35ID:fDsf7qWs いあ、買えるけどさぁ。。。
買ってまで触りたいものじゃなし。
ノートじゃ無いから場所固定されるじゃん。
手軽じゃないなぁと。
買ってまで触りたいものじゃなし。
ノートじゃ無いから場所固定されるじゃん。
手軽じゃないなぁと。
588デフォルトの名無しさん
2017/05/21(日) 09:33:24.18ID:fDsf7qWs589デフォルトの名無しさん
2017/05/21(日) 09:33:34.85ID:aAAAG14z 純粋関数型とかモナドとかのワードに惹かれただけの
ショボいコードしか書けないゴミhaskellerモドキはこんなもんだよ
ショボいコードしか書けないゴミhaskellerモドキはこんなもんだよ
590デフォルトの名無しさん
2017/05/21(日) 09:46:52.19ID:fDsf7qWs うん。
最初はそう言うワードに惹かれた。
でも今はシンプルな仕様と言うか仕組みが好き。
少ない知識で書いて行けるのが。
そう言う意味じゃCも好きだけどね。
そのショボいコードすら出てこない次世代言語は言語オタに支持されてるだけで、言語オタは実際に役立つコード書いてないんじゃ無い?
少なくとも、おいらのは最終的にはテキストで探したい文の大まかな文脈は表示出来る、文献を参照するのに便利なコマンドになる予定だよ。>>492
最初はそう言うワードに惹かれた。
でも今はシンプルな仕様と言うか仕組みが好き。
少ない知識で書いて行けるのが。
そう言う意味じゃCも好きだけどね。
そのショボいコードすら出てこない次世代言語は言語オタに支持されてるだけで、言語オタは実際に役立つコード書いてないんじゃ無い?
少なくとも、おいらのは最終的にはテキストで探したい文の大まかな文脈は表示出来る、文献を参照するのに便利なコマンドになる予定だよ。>>492
591あ
2017/05/21(日) 09:51:06.00ID:SzG2p8Pq そういやラズパイにmathematica入ったな、いつか。
俺ずっとMaximaで済ませてたからあれだが。
数学が好きなら、数学を処理する言語使ったほうがいいのは俺も同意する。
俺ずっとMaximaで済ませてたからあれだが。
数学が好きなら、数学を処理する言語使ったほうがいいのは俺も同意する。
592デフォルトの名無しさん
2017/05/21(日) 10:11:58.67ID:GQ3S98if ついにMathematicaまで貶し始めたな…
ちなみにRaspPi のはZeroでも使えるはず
流石にこれぐらいなら出せるだろ
ちなみにRaspPi のはZeroでも使えるはず
流石にこれぐらいなら出せるだろ
593デフォルトの名無しさん
2017/05/21(日) 10:28:30.98ID:fDsf7qWs え、貶してないよ?
次世代言語のここが良いあれがダメって言うだけでコード出さない言語オタは貶したけど。
まあ、おいらもHaskellに出会う前はRubyで"Hello World!!".length.displayとかやるだけで満足してたりする言語オタだったから、人の事言えないんだけどね。
何でもいいから一個の言語を使いこなせるようにまずならないと。
うん。お前が言うなだけど。
次世代言語のここが良いあれがダメって言うだけでコード出さない言語オタは貶したけど。
まあ、おいらもHaskellに出会う前はRubyで"Hello World!!".length.displayとかやるだけで満足してたりする言語オタだったから、人の事言えないんだけどね。
何でもいいから一個の言語を使いこなせるようにまずならないと。
うん。お前が言うなだけど。
594デフォルトの名無しさん
2017/05/21(日) 10:36:03.72ID:GQ3S98if595デフォルトの名無しさん
2017/05/21(日) 10:39:16.44ID:fDsf7qWs おおう。。。
すまぬ。
しばらくROMるわ。
すまぬ。
しばらくROMるわ。
596デフォルトの名無しさん
2017/05/21(日) 11:04:40.31ID:NrSnEm53 >>523
"Pharo Smalltalk"
| queue array ans msToRun sorted |
queue := SharedQueue new.
array := (1 to: 1e3) asArray shuffled.
ans := OrderedCollection new.
(1 to: 100) detect: [:m |
msToRun := [array do: [:n | [(n * m) milliSeconds asDelay wait. queue nextPut: n] fork].
sorted := (queue next: array size) isSorted] timeToRun asMilliSeconds.
(ans add: {#m->m. #msToRun->msToRun. #sorted->sorted}) last value.
] ifNone: [].
^ans asArray
"=> {
{#m->1. #msToRun->1003. #sorted->false}.
{#m->2. #msToRun->2004. #sorted->false}.
{#m->3. #msToRun->3004. #sorted->false}.
{#m->4. #msToRun->4016. #sorted->true}}
"
http://ws.stfx.eu/8W36PYP2PQ1G
"Pharo Smalltalk"
| queue array ans msToRun sorted |
queue := SharedQueue new.
array := (1 to: 1e3) asArray shuffled.
ans := OrderedCollection new.
(1 to: 100) detect: [:m |
msToRun := [array do: [:n | [(n * m) milliSeconds asDelay wait. queue nextPut: n] fork].
sorted := (queue next: array size) isSorted] timeToRun asMilliSeconds.
(ans add: {#m->m. #msToRun->msToRun. #sorted->sorted}) last value.
] ifNone: [].
^ans asArray
"=> {
{#m->1. #msToRun->1003. #sorted->false}.
{#m->2. #msToRun->2004. #sorted->false}.
{#m->3. #msToRun->3004. #sorted->false}.
{#m->4. #msToRun->4016. #sorted->true}}
"
http://ws.stfx.eu/8W36PYP2PQ1G
597デフォルトの名無しさん
2017/05/21(日) 11:07:22.37ID:bYtGqajI >>593
最低でもフィボナッチはやらないとな。
最低でもフィボナッチはやらないとな。
598デフォルトの名無しさん
2017/05/22(月) 19:21:13.10ID:MtDspqBa599デフォルトの名無しさん
2017/05/22(月) 21:49:08.94ID:uTnQjVde Javaドカタでも使える次世代言語は何?
600デフォルトの名無しさん
2017/05/22(月) 21:53:40.25ID:np8fDJ8H >>599
Java 9
Java 9
601デフォルトの名無しさん
2017/05/22(月) 21:54:21.22ID:sdGytzhA Kotlin
間違ってもScalaには手を出すなよ
間違ってもScalaには手を出すなよ
602デフォルトの名無しさん
2017/05/22(月) 21:55:44.97ID:t4wHpx3M コトィンだろ
603デフォルトの名無しさん
2017/05/22(月) 21:59:52.84ID:uTnQjVde ペチパーでも使える次世代言語はある?
604デフォルトの名無しさん
2017/05/22(月) 22:08:33.54ID:k8jtGWEX605デフォルトの名無しさん
2017/05/22(月) 22:28:10.80ID:o+YzRX7H 小岩井Kotlin
606デフォルトの名無しさん
2017/05/22(月) 22:31:28.97ID:t4wHpx3M607デフォルトの名無しさん
2017/05/22(月) 22:53:09.79ID:NUyV/iNa ペチパー馬鹿にすんな
トレイトあるんやぞ
Scalaの優れたヤツじゃなくSmalltalk式の劣った方だが
トレイトあるんやぞ
Scalaの優れたヤツじゃなくSmalltalk式の劣った方だが
608デフォルトの名無しさん
2017/05/22(月) 23:04:48.46ID:ydRKGq7n ペチパーってPHPerの事か
WEBならKotlinよりScalaじゃない?
WEBならKotlinよりScalaじゃない?
609デフォルトの名無しさん
2017/05/22(月) 23:13:47.67ID:npbAin+o 用途の違う言語並べてなにを比べるんだ、、、
610デフォルトの名無しさん
2017/05/22(月) 23:30:44.58ID:8HqyDksp611デフォルトの名無しさん
2017/05/23(火) 00:08:59.76ID:Cmetwh8S ちまちま金出し渋るんだったら
10万程度でpc組め
10万程度でpc組め
612デフォルトの名無しさん
2017/05/23(火) 00:44:31.76ID:PZYq3vzy ペチプァ〜のプァ〜は頭がくるくるプァ〜
よくあんな汚物吐瀉物糞尿下痢で踊り狂えるな
狂気の沙汰だわホンマ
スレが臭くなるから近寄るなよ疫病神
早く死ね
よくあんな汚物吐瀉物糞尿下痢で踊り狂えるな
狂気の沙汰だわホンマ
スレが臭くなるから近寄るなよ疫病神
早く死ね
613デフォルトの名無しさん
2017/05/23(火) 01:15:17.85ID:Ut2KtnOs 今更mapとかfilterとかをforで書く言語のどこが次世代だよ
614デフォルトの名無しさん
2017/05/23(火) 01:21:27.28ID:JnTuEITt なんなのその for 書いたら負けみたいな無意味な思想は
615デフォルトの名無しさん
2017/05/23(火) 01:24:34.96ID:Ut2KtnOs Goは開発がGoogleじゃなかったら絶対流行らなかった
趣味で言語作りました。試しに作っただけなので複雑な事は出来ません
こんな言語をシンプルだから分かりやすいよ!ってGoogleの知名度使ってゴリ押ししてるだけ
趣味で言語作りました。試しに作っただけなので複雑な事は出来ません
こんな言語をシンプルだから分かりやすいよ!ってGoogleの知名度使ってゴリ押ししてるだけ
616デフォルトの名無しさん
2017/05/23(火) 01:26:38.72ID:Ut2KtnOs617デフォルトの名無しさん
2017/05/23(火) 01:50:10.95ID:6XWqRRso >>615
複雑なことっつーか抽象度の高いことが出来ないな。汎用ライブラリ書こうとするとinterface地獄になって悪夢見る。
でも不思議なことに手なりで動くもん量産するのにはものすごく向いてる。
マクロがないかわりにgo generateとかいうクソキモい(誉め言葉)機能があることと、
あとはPHPみたいな言語未満の何かで物書いた時のような負債に陥る危険性が、言語としての幅が狭いお陰である程度緩和されてるってのが案外バランス取れてるのよな。
汎用ライブラリ書くのには全然向かないけどね。
複雑なことっつーか抽象度の高いことが出来ないな。汎用ライブラリ書こうとするとinterface地獄になって悪夢見る。
でも不思議なことに手なりで動くもん量産するのにはものすごく向いてる。
マクロがないかわりにgo generateとかいうクソキモい(誉め言葉)機能があることと、
あとはPHPみたいな言語未満の何かで物書いた時のような負債に陥る危険性が、言語としての幅が狭いお陰である程度緩和されてるってのが案外バランス取れてるのよな。
汎用ライブラリ書くのには全然向かないけどね。
618デフォルトの名無しさん
2017/05/23(火) 01:54:36.33ID:6XWqRRso Googleが作らなかったら流行らなかったってのは大いに同意するが、正確に言うと「Googleじゃないとこんないかれた言語を完成品と言い張れなかった」だと思うね。
周辺ツールの異常な拡充もごり押し戦略の一環だろうしな。
周辺ツールの異常な拡充もごり押し戦略の一環だろうしな。
619デフォルトの名無しさん
2017/05/23(火) 01:56:50.35ID:6XWqRRso 総合して、Goは次世代のドカタ言語っていうのが一番しっくりくるわな。
あくまでドカタ言語。
あくまでドカタ言語。
620デフォルトの名無しさん
2017/05/23(火) 07:27:48.45ID:JnTuEITt621デフォルトの名無しさん
2017/05/23(火) 07:50:29.19ID:PZYq3vzy622デフォルトの名無しさん
2017/05/23(火) 08:14:57.33ID:w55PtzH/ いや内包表記もしくはmap reduceがあるのは大事でしょ
関数として切り出す時にループの中で行うことだけ書けばいいのがmapないとループそのものを行うサブルーチンもかかなくちゃいけなくなるじゃん
map不要とか言う奴絶対Lispすら触ったことないハイパーエアプマンだろ
関数として切り出す時にループの中で行うことだけ書けばいいのがmapないとループそのものを行うサブルーチンもかかなくちゃいけなくなるじゃん
map不要とか言う奴絶対Lispすら触ったことないハイパーエアプマンだろ
623デフォルトの名無しさん
2017/05/23(火) 08:22:40.89ID:B87mZx5r 内包表記かmapに関数一つだけ渡すのが一番読みやすいな
624デフォルトの名無しさん
2017/05/23(火) 09:04:41.99ID:PZYq3vzy ペチプァ〜さん・・・w
625デフォルトの名無しさん
2017/05/23(火) 09:55:36.88ID:djHV+jRv626デフォルトの名無しさん
2017/05/23(火) 10:09:21.11ID:6XWqRRso >>625
ジェネリクスについてはさすがにいれようぜって議論はあるな。
今はそういうのをコピペなしに書くならinterface地獄で、自分もそこは嫌いなとこだ
ちなみにgoの汎用sorted setくらいならgithubに既にある上にめっちゃコード短いから、見てみるのも面白いかもしれんね。
ジェネリクスについてはさすがにいれようぜって議論はあるな。
今はそういうのをコピペなしに書くならinterface地獄で、自分もそこは嫌いなとこだ
ちなみにgoの汎用sorted setくらいならgithubに既にある上にめっちゃコード短いから、見てみるのも面白いかもしれんね。
627デフォルトの名無しさん
2017/05/23(火) 10:30:08.82ID:+Srr1GFp 内包表記!ワンライナー!読みにくい!って普段どんな糞コード書いてたらそういう発想に陥るんだろう
628デフォルトの名無しさん
2017/05/23(火) 11:30:14.87ID:3W0XlzKr まあ長過ぎるワンライナーが読み難いのは分からなくは無い。
でも書くし、読むけど。
昔何かのJavaの本でJavaでも宣言的に書くべきだ。みたいな事が書いてあって、メソッドチェーンされたインスタンスが二行でちょっとした処理してた。
最近C#6実践入門とか言うの買ったけど、それに載ってるコードもifは出るけどforがほとんど無い宣言的なコードだった。
C#6の新機能紹介はほとんどオマケで、タイトル詐欺だけど。
いあ。。。詐欺じゃ無いけど、紹介された新機能が全然頭に入って来ない位、(ドロドロの)実務的な内容。。。
でも書くし、読むけど。
昔何かのJavaの本でJavaでも宣言的に書くべきだ。みたいな事が書いてあって、メソッドチェーンされたインスタンスが二行でちょっとした処理してた。
最近C#6実践入門とか言うの買ったけど、それに載ってるコードもifは出るけどforがほとんど無い宣言的なコードだった。
C#6の新機能紹介はほとんどオマケで、タイトル詐欺だけど。
いあ。。。詐欺じゃ無いけど、紹介された新機能が全然頭に入って来ない位、(ドロドロの)実務的な内容。。。
629デフォルトの名無しさん
2017/05/23(火) 11:47:39.23ID:nY7S90+T Javaは8になって一気に流れ変わった。
なお日本のドカタ現場はJava6をつかっていればましな方なのは内緒な。
ドカタ現場から見ればObj-Cすら次世代言語ってな。
なお日本のドカタ現場はJava6をつかっていればましな方なのは内緒な。
ドカタ現場から見ればObj-Cすら次世代言語ってな。
630デフォルトの名無しさん
2017/05/23(火) 13:10:57.22ID:fxr47P4A Pythonは内包表記でもforって書くんだな
手続きが透けて見える
見えない奴はエアプ
手続きが透けて見える
見えない奴はエアプ
631デフォルトの名無しさん
2017/05/23(火) 13:14:25.27ID:hsNp2Xw3 その辺はhaskellのモナド内包表記も同じことよ
632デフォルトの名無しさん
2017/05/23(火) 13:58:34.02ID:LlhYvOQ7633デフォルトの名無しさん
2017/05/23(火) 17:59:05.36ID:JnTuEITt やべーな。。
内包表記、map, reduce 使えるとだいぶ偉いプログラマーになった気分なのかね。。
別にあれば使うけれど、それで読みやすさが格段にあがるなんてことはないわ。
まさに枝葉としか言いようがない。
てかなんでこんなに php 嫌われてるのか使ったことないからわからんのだが。
perl には相当神経やられたってのは個人的にはあるけれど、
php ってそんな嫌なもんなんかね。
内包表記、map, reduce 使えるとだいぶ偉いプログラマーになった気分なのかね。。
別にあれば使うけれど、それで読みやすさが格段にあがるなんてことはないわ。
まさに枝葉としか言いようがない。
てかなんでこんなに php 嫌われてるのか使ったことないからわからんのだが。
perl には相当神経やられたってのは個人的にはあるけれど、
php ってそんな嫌なもんなんかね。
634デフォルトの名無しさん
2017/05/23(火) 18:08:35.09ID:PJIONmxy Haskell的には状態を持たないから、将来並列動作しても良い。
内部動作が実際はどうなってるか気にしなくて良い。
記述上は単純に一行になる。
書きかたによるけど、関数より意味が通じやすいかも。
リストの長さ求める関数length
再帰
length [] = 0
length (_:xs) = 1 + length xs
再帰はスタック消費するので末尾再帰
length cs = length' 0 cs
......................where
..……...................length' n [] = n
..……...................length' n (_:xs) = length (n + 1) xs
末尾再帰を一般化したfoldlで置き換え
length = foldl 0
リスト内包表記
length xs = sum [1 | _ <- xs]
過程を知ってればfoldlも意味分かるけど、リスト内包表記はHaskeller以外にも分かりやすいかも。
内部動作が実際はどうなってるか気にしなくて良い。
記述上は単純に一行になる。
書きかたによるけど、関数より意味が通じやすいかも。
リストの長さ求める関数length
再帰
length [] = 0
length (_:xs) = 1 + length xs
再帰はスタック消費するので末尾再帰
length cs = length' 0 cs
......................where
..……...................length' n [] = n
..……...................length' n (_:xs) = length (n + 1) xs
末尾再帰を一般化したfoldlで置き換え
length = foldl 0
リスト内包表記
length xs = sum [1 | _ <- xs]
過程を知ってればfoldlも意味分かるけど、リスト内包表記はHaskeller以外にも分かりやすいかも。
635デフォルトの名無しさん
2017/05/23(火) 18:18:05.38ID:PJIONmxy x length = foldl 0
端折り過ぎた。
length = foldl (/x _ -> x +1) 0
端折り過ぎた。
length = foldl (/x _ -> x +1) 0
636デフォルトの名無しさん
2017/05/23(火) 18:32:56.72ID:FtK5T5KY >>633
単純にカテゴライズして蔑視したいだけだと思う。
そういうのを除いてPHPが嫌われるのは言語仕様が綺麗とか
汚いとかそういうのではなく、互換性とか環境問題で
無駄なエネルギー使うからだと思ってる。
同じような理由で俺はrubyとかはもう手を出したくないと
思うし。俺が好んで使ってたのは256倍本とか出てた頃で
パッケージやら何やらで随分と改善されてるのは
知ってるけどトラウマなんだよな。
単純にカテゴライズして蔑視したいだけだと思う。
そういうのを除いてPHPが嫌われるのは言語仕様が綺麗とか
汚いとかそういうのではなく、互換性とか環境問題で
無駄なエネルギー使うからだと思ってる。
同じような理由で俺はrubyとかはもう手を出したくないと
思うし。俺が好んで使ってたのは256倍本とか出てた頃で
パッケージやら何やらで随分と改善されてるのは
知ってるけどトラウマなんだよな。
637デフォルトの名無しさん
2017/05/23(火) 18:40:57.13ID:IFQGAtt4 >内包表記、map, reduce 使えるとだいぶ偉いプログラマーになった気分なのかね。。
このレス痛々しくて面白いな
このレス痛々しくて面白いな
638あ
2017/05/23(火) 19:15:59.04ID:9OGdTOvp 少なくとも嫌い好きではないわな、仕事なら。
パソコンの大先生なら孤高の言語でオナニーしてくれりゃいいけど。
次世代ってのは、未来の現世代なんだから。
夢ばっか見ても意味ない。
パソコンの大先生なら孤高の言語でオナニーしてくれりゃいいけど。
次世代ってのは、未来の現世代なんだから。
夢ばっか見ても意味ない。
640デフォルトの名無しさん
2017/05/23(火) 19:51:46.81ID:ns4joxA3 結構な大企業でもLispとかHaskell 使ってるあたり自分で書ける能力あるなら採用言語なんか趣味だろ
641デフォルトの名無しさん
2017/05/23(火) 21:37:46.03ID:qYVXIZT5 >>640
という楽観を華麗にぶち壊すRustとかいうクソ言語
という楽観を華麗にぶち壊すRustとかいうクソ言語
642デフォルトの名無しさん
2017/05/23(火) 23:00:33.25ID:ns4joxA3 >>641
どゆこと?
どゆこと?
643デフォルトの名無しさん
2017/05/24(水) 00:07:47.20ID:8Z1z+g0P >>642
どんな優秀な人材でもまともに物がつくれない破綻した言語ってこと。
どんな優秀な人材でもまともに物がつくれない破綻した言語ってこと。
644デフォルトの名無しさん
2017/05/24(水) 07:21:12.88ID:5yXboscj646デフォルトの名無しさん
2017/05/24(水) 08:08:46.24ID:MYIIDec9 >>645
知らんがな。人材に逃げられないようにせいぜい厚遇するんだな
知らんがな。人材に逃げられないようにせいぜい厚遇するんだな
647あ
2017/05/24(水) 08:23:16.84ID:IPP9nXuk >>646
どういう事?
逃げる訳じゃなくて辞めるんだよ。定年とか、寿あるじゃん。それは仕方ないよ。
教育コストとその言語から得られるメリットのバランス次第じゃないのかな。
新しい人入れるときの問題で、その時に誰でも知ってる言語で地頭があって、そこに自社の資産とか話すのは簡単だし、教育に出しやすいじゃん。自社でもやるし。
書けるから雇うことも無ければ、雇ったからそいつの思うように書かせるわけでも無いんじゃないの?
どういう事?
逃げる訳じゃなくて辞めるんだよ。定年とか、寿あるじゃん。それは仕方ないよ。
教育コストとその言語から得られるメリットのバランス次第じゃないのかな。
新しい人入れるときの問題で、その時に誰でも知ってる言語で地頭があって、そこに自社の資産とか話すのは簡単だし、教育に出しやすいじゃん。自社でもやるし。
書けるから雇うことも無ければ、雇ったからそいつの思うように書かせるわけでも無いんじゃないの?
648デフォルトの名無しさん
2017/05/24(水) 09:11:12.33ID:5yXboscj 知らない言語だからってコードメンテできなくなるようなら
Javaで書いたってろくにメンテできないだろうよ。
Javaで書いたってろくにメンテできないだろうよ。
649デフォルトの名無しさん
2017/05/24(水) 09:24:15.88ID:ttKQmf2U >>647
C、C++、C#、Java、Ruby、Python、Scala、Haskellくらいかけろって話だけどね
C、C++、C#、Java、Ruby、Python、Scala、Haskellくらいかけろって話だけどね
650デフォルトの名無しさん
2017/05/24(水) 09:26:11.81ID:tRDqGMNF 言語文法だけじゃなく実行環境の構築が面倒な言語も保守性悪いよな
651デフォルトの名無しさん
2017/05/24(水) 09:34:21.93ID:MYIIDec9 新人研修の事でもいいたいのか?
チームに組み込まれた新人はそのチームで先輩が使ってる言語と技術はどっちみち勉強するだろ
それすらできん屑新人しかこない企業に勤めてるんなら学校で教えてる言語しか使えなくなるなwww
チームに組み込まれた新人はそのチームで先輩が使ってる言語と技術はどっちみち勉強するだろ
それすらできん屑新人しかこない企業に勤めてるんなら学校で教えてる言語しか使えなくなるなwww
652デフォルトの名無しさん
2017/05/24(水) 09:37:50.21ID:ztUMEvdN >>643
ということにしたいだけにしか見えないんだけど
ということにしたいだけにしか見えないんだけど
653あ
2017/05/24(水) 09:44:40.73ID:IPP9nXuk654デフォルトの名無しさん
2017/05/24(水) 10:08:00.08ID:YA6HRJ8D >649
問題は「自分がその言語で書けるか」ではなく
「他人がその言語で書いたコードを保守できるか」なのでは?
自分が新規コードを書く分には自分が知っている範囲で書けば済むが、
他人のコードを保守するには文法とライブラリを網羅的に知っている必要がある。
C、C#、Java、Ruby、Pythonぐらいは保守できるべき、ぐらいならわかる。
でもC++、Scala、Haskellは文法とライブラリの知識を相当要求する。
C++は普及しているからいいけどScalaとHaskellは保守できる人を雇えるか分からない。
好き好んでScalaやHaskellを選ぶ人は初心者には読めないコードを書くだろうしね。
問題は「自分がその言語で書けるか」ではなく
「他人がその言語で書いたコードを保守できるか」なのでは?
自分が新規コードを書く分には自分が知っている範囲で書けば済むが、
他人のコードを保守するには文法とライブラリを網羅的に知っている必要がある。
C、C#、Java、Ruby、Pythonぐらいは保守できるべき、ぐらいならわかる。
でもC++、Scala、Haskellは文法とライブラリの知識を相当要求する。
C++は普及しているからいいけどScalaとHaskellは保守できる人を雇えるか分からない。
好き好んでScalaやHaskellを選ぶ人は初心者には読めないコードを書くだろうしね。
655デフォルトの名無しさん
2017/05/24(水) 10:25:42.08ID:ZtHNZ56P 空気も読まずにコード投下。
>>537のエラー出ない版をたまたまRuby初心者スレッドで教えてもらえた。
ARGV.each_slice(2).take_while{|e| e.size == 2}.each{|a| print a}
puts
んで、これを元にHaskellでも書いてみた。
import System.Environment
slice2 [] = []
slice2 [_] = []
slice2 (x:y:zs) = (x,y):slice2 zs
main = getArgs >>= print.slice2
>>654
保守するやつが初心者?
得意じゃないとしても、Haskellは入門書とHoogleあれば十分だよ。
>>537のエラー出ない版をたまたまRuby初心者スレッドで教えてもらえた。
ARGV.each_slice(2).take_while{|e| e.size == 2}.each{|a| print a}
puts
んで、これを元にHaskellでも書いてみた。
import System.Environment
slice2 [] = []
slice2 [_] = []
slice2 (x:y:zs) = (x,y):slice2 zs
main = getArgs >>= print.slice2
>>654
保守するやつが初心者?
得意じゃないとしても、Haskellは入門書とHoogleあれば十分だよ。
656デフォルトの名無しさん
2017/05/24(水) 10:25:51.23ID:MYIIDec9657デフォルトの名無しさん
2017/05/24(水) 10:32:58.90ID:IgnTlSHt C++大先生レベルになったら未知の言語でも読めるだろ
未知だから学習コスト0だがなぜか読める
未知だから学習コスト0だがなぜか読める
658デフォルトの名無しさん
2017/05/24(水) 10:37:00.08ID:MMUszNj4 >>649
それらを全部書けても何も作れない腐った言語がRustなんやで
それらを全部書けても何も作れない腐った言語がRustなんやで
659デフォルトの名無しさん
2017/05/24(水) 10:43:10.23ID:+1dTaw0E >>656
社内開発用言語縛って生産性維持しながら会社全体で技術叩き上げてるGoogleさんのdisおっつおっつ
社内開発用言語縛って生産性維持しながら会社全体で技術叩き上げてるGoogleさんのdisおっつおっつ
660デフォルトの名無しさん
2017/05/24(水) 10:47:04.91ID:MYIIDec9661デフォルトの名無しさん
2017/05/24(水) 10:50:54.70ID:IgnTlSHt 縛りというか、C++禁止されてないのが重要だと思うが
662デフォルトの名無しさん
2017/05/24(水) 10:57:13.01ID:AMRdndrm >>660
プロトタイプのコードはメンテしないだろ。そりゃ好きな言語で書けばいいさ。
メンテするプロダクトコードはあのGoogleですら言語ガチガチに縛ってそのなかで技術上げてるのに(最近だとGrumpyとかな)、
出来る人材ならどんな言語でもすぐ習得して既存コードメンテ出来るようになるっていうのは幻想。
ある程度ならいけるが限度はある。
プロトタイプのコードはメンテしないだろ。そりゃ好きな言語で書けばいいさ。
メンテするプロダクトコードはあのGoogleですら言語ガチガチに縛ってそのなかで技術上げてるのに(最近だとGrumpyとかな)、
出来る人材ならどんな言語でもすぐ習得して既存コードメンテ出来るようになるっていうのは幻想。
ある程度ならいけるが限度はある。
663デフォルトの名無しさん
2017/05/24(水) 10:58:51.03ID:AMRdndrm >>661
C++が許されてRustが許されてない辺り、GoogleはRustが使い物にならんとわかっていらっしゃる
C++が許されてRustが許されてない辺り、GoogleはRustが使い物にならんとわかっていらっしゃる
664デフォルトの名無しさん
2017/05/24(水) 11:14:18.14ID:MYIIDec9 なんか主張がとっちらかってきたけど、実際割と好きな言語使えるリーディングカンパニーがあるんだから、それはダメとか俺に言われても知らんがな
665デフォルトの名無しさん
2017/05/24(水) 12:19:17.63ID:5yXboscj 他人が書いたコードを思想も含めて正しくメンテできるのに
「だってこれボクが好きな言語じゃないもん」
とか言って仕事投げ出すのか。
ゆとった会社だな。
「だってこれボクが好きな言語じゃないもん」
とか言って仕事投げ出すのか。
ゆとった会社だな。
666あ
2017/05/24(水) 12:20:52.22ID:IPP9nXuk >>656
個人で伸ばせばそりゃ素晴らしい事だよ。
勝手な技術使うな、は当たり前では?
簡単なことで、単に社内に布教するだけだよ。
それだけで勝手な技術じゃなくなるんだから。
金貰って作ってる以上、指定されたと言うより要件定義から離れる事は良い方向でも悪い方向でも等しく害悪。
それを使うよう、要件定義を見直しゃいいじゃん?
個人で伸ばせばそりゃ素晴らしい事だよ。
勝手な技術使うな、は当たり前では?
簡単なことで、単に社内に布教するだけだよ。
それだけで勝手な技術じゃなくなるんだから。
金貰って作ってる以上、指定されたと言うより要件定義から離れる事は良い方向でも悪い方向でも等しく害悪。
それを使うよう、要件定義を見直しゃいいじゃん?
667デフォルトの名無しさん
2017/05/24(水) 12:23:07.52ID:MnuqeZiD668あ
2017/05/24(水) 12:35:44.71ID:IPP9nXuk 勝手に使う、と、好きな言語を使う、は別だって事に尽きる。
好きな言語が使いたきゃ、ホント通せば良いだけじゃん。
好きな言語が使いたきゃ、ホント通せば良いだけじゃん。
669デフォルトの名無しさん
2017/05/24(水) 13:00:14.99ID:MYIIDec9 >>666
各段落最後に同意。そこが重要
各段落最後に同意。そこが重要
670デフォルトの名無しさん
2017/05/24(水) 13:09:07.02ID:MYIIDec9 つーか前半部分は当然のことすぎてそんなこと議論しようとしてるとは思わんかった
671デフォルトの名無しさん
2017/05/24(水) 13:16:56.43ID:MYIIDec9 ああ、>>668もいい事言ってるな
その通りだよ。通すんだよ当然だろ
その通りだよ。通すんだよ当然だろ
672デフォルトの名無しさん
2017/05/24(水) 14:12:27.03ID:5yXboscj 広めるにしたって、仕事を通して広めるのが当然だろ。
そこを門前払いして「浸透してない言語はダメー」とか、ゆとりすぎ。
そこを門前払いして「浸透してない言語はダメー」とか、ゆとりすぎ。
673デフォルトの名無しさん
2017/05/24(水) 14:13:44.48ID:5yXboscj 上のほうが「マネージャ目線で考えろ、コストを減らせ、技術を革新しろ」と掛け声ばかりな会社でありがちそうな風景だな。
674デフォルトの名無しさん
2017/05/24(水) 15:21:08.36ID:pQqRznHf >>667
上層部の中ににMSのはなんだろうが採用させないのがいる(・いた?)だけのような気がする
上層部の中ににMSのはなんだろうが採用させないのがいる(・いた?)だけのような気がする
675デフォルトの名無しさん
2017/05/24(水) 15:36:29.01ID:/ySUjkwg >>674
それだけならkotlin, scala, ruby, php, perlあたりはとっくに承認されてるだろ
「それお前の好みの問題だよね?」と言われないような理由を示す必要があるんだと思うよ
それだけならkotlin, scala, ruby, php, perlあたりはとっくに承認されてるだろ
「それお前の好みの問題だよね?」と言われないような理由を示す必要があるんだと思うよ
676デフォルトの名無しさん
2017/05/24(水) 15:44:55.21ID:AMRdndrm さすがにperl PHPが通るとは思えんなwwwwwww
というのはともかくなんだかんだ追加承認のフローが整備されてるのは日本企業では考えられんよな。
というのはともかくなんだかんだ追加承認のフローが整備されてるのは日本企業では考えられんよな。
677あ
2017/05/24(水) 18:36:08.72ID:IPP9nXuk678デフォルトの名無しさん
2017/05/24(水) 18:45:51.44ID:MYIIDec9 いや流石にわかるしそのことを言ってるんだろう
679デフォルトの名無しさん
2017/05/24(水) 18:58:25.42ID:fS2T0Ehb 先輩が言語にこだわってるうちは伸びないって言ってたな。
所詮道具なんだから、作るものに合わせて相応しい言語選ぶだろ。
所詮道具なんだから、作るものに合わせて相応しい言語選ぶだろ。
680デフォルトの名無しさん
2017/05/24(水) 19:09:48.27ID:5yXboscj バカバカしい。
既に職場で広く浸透した言語に限定するのなら、全く「次世代」の話じゃないな。
スレ違い。
既に職場で広く浸透した言語に限定するのなら、全く「次世代」の話じゃないな。
スレ違い。
681デフォルトの名無しさん
2017/05/24(水) 19:14:40.02ID:MYIIDec9 全く誰だよこのスレで「ある程度は浸透してくれたものでないと困る。」とか言い出した奴は
682デフォルトの名無しさん
2017/05/24(水) 19:20:52.00ID:X74kQKF8 登場して20年たっても普及しないなら、その程度の言語
683デフォルトの名無しさん
2017/05/24(水) 19:26:06.91ID:AMRdndrm 「つぎは」
684あ
2017/05/24(水) 19:27:50.59ID:vKYHCzYh685デフォルトの名無しさん
2017/05/24(水) 19:29:22.75ID:AMRdndrm 「次流行る言語はなんだろうなー」って駄弁るのと、
「わが社で次に採用するべき言語はなんだ?」って会議するのとの違いじゃね?
自分は前者のつもりで駄弁ってたけど、後者のつもりのやつがスレに紛れ込んでるだけな気がするわ
「わが社で次に採用するべき言語はなんだ?」って会議するのとの違いじゃね?
自分は前者のつもりで駄弁ってたけど、後者のつもりのやつがスレに紛れ込んでるだけな気がするわ
686あ
2017/05/24(水) 19:32:35.06ID:vKYHCzYh687デフォルトの名無しさん
2017/05/24(水) 19:34:16.79ID:AMRdndrm688デフォルトの名無しさん
2017/05/24(水) 19:36:36.90ID:MYIIDec9 相変わらず自分の文がわかりにくいのを人のせいにする……
689デフォルトの名無しさん
2017/05/24(水) 19:47:07.86ID:AMRdndrm >>685
前者と後者が変わらんのはベンチャーもしくは顔本林檎みたいな超最先端企業くらいだぞ。
今使ってる言語を変えたい経営者なんていない。たとえそれがサポート切れたJavaでもVB6でもCOBOLでも。
前者と後者が変わらんのはベンチャーもしくは顔本林檎みたいな超最先端企業くらいだぞ。
今使ってる言語を変えたい経営者なんていない。たとえそれがサポート切れたJavaでもVB6でもCOBOLでも。
690デフォルトの名無しさん
2017/05/24(水) 19:50:28.81ID:DLDz9laB Java8使ってもラムダ使用禁止の現場とかあるらしいな
全員が分からないからとか何とか
全員が分からないからとか何とか
691デフォルトの名無しさん
2017/05/24(水) 20:02:02.58ID:MYIIDec9 そんなドカタ現場の人が来るべきスレじゃないだろ……
繰り返すけどさ、採用言語は趣味だよ
変なのに噛みつかれないように厳密に書くと、社内で布教して一定の承認を得るのは当然の手続きであり、そこまで努力しなくてもそれが可能な企業orアカデミックは普通に存在する
そしてそもそもそれが出来ないような可能性を考慮しないといけないような奴が来るべきスレではない
繰り返すけどさ、採用言語は趣味だよ
変なのに噛みつかれないように厳密に書くと、社内で布教して一定の承認を得るのは当然の手続きであり、そこまで努力しなくてもそれが可能な企業orアカデミックは普通に存在する
そしてそもそもそれが出来ないような可能性を考慮しないといけないような奴が来るべきスレではない
692デフォルトの名無しさん
2017/05/24(水) 20:03:45.39ID:AMRdndrm >>691
つまり
つまり
693デフォルトの名無しさん
2017/05/24(水) 20:04:11.00ID:MYIIDec9 あ、ドカタ現場の奴でもプロトタイピング用の言語を議論しに来てる奴は例外な
694あ
2017/05/24(水) 20:04:40.24ID:vKYHCzYh695デフォルトの名無しさん
2017/05/24(水) 20:05:22.82ID:AMRdndrm696デフォルトの名無しさん
2017/05/24(水) 20:13:22.76ID:MYIIDec9697デフォルトの名無しさん
2017/05/24(水) 20:16:24.80ID:MYIIDec9 あとID:5yXboscjも最初の俺と同じ解釈をしてそうだな
698デフォルトの名無しさん
2017/05/24(水) 20:26:49.54ID:new7aopo なんやこれ…
とりあえずエンジニアガイジは自分の主張を三行にまとめてみたら?
俺もよく分からんし
とりあえずエンジニアガイジは自分の主張を三行にまとめてみたら?
俺もよく分からんし
699デフォルトの名無しさん
2017/05/24(水) 20:32:20.07ID:MYIIDec9 >>695
いや存在がスレチとまでは言わんけど……
でも自分が絶対使えない言語の議論してなんか意味あるかなーとは思うぞ
プロトタイピングの話ししてるんなら使えるから有効だと思うから、プロトタイピングの話ししにきてるんならスレチじゃないと思う
いや存在がスレチとまでは言わんけど……
でも自分が絶対使えない言語の議論してなんか意味あるかなーとは思うぞ
プロトタイピングの話ししてるんなら使えるから有効だと思うから、プロトタイピングの話ししにきてるんならスレチじゃないと思う
700デフォルトの名無しさん
2017/05/24(水) 21:13:58.52ID:tWWOwCUP なんつーか、リアルでは関わりたくないタイプではあるなぁ
701あ
2017/05/24(水) 21:25:40.50ID:vKYHCzYh702デフォルトの名無しさん
2017/05/24(水) 21:27:44.10ID:oJe0HEfY 大企業じゃなくて中小がやるようなWebシステムとかなら以外と新しいもの使ったりするけどね
703デフォルトの名無しさん
2017/05/24(水) 21:29:05.11ID:76en5qLo 本人だけ自覚が無いから
本人だけはいつまでも他人が悪いと思ってる
これが、放置され続けて来た子の末路です
本人だけはいつまでも他人が悪いと思ってる
これが、放置され続けて来た子の末路です
704デフォルトの名無しさん
2017/05/24(水) 21:45:09.29ID:+DimD/vP では、大企業基準を採用して、
COBOL, VB6, Java 1.4の中からどれが次世代言語にふさわしいか議論しましょう
COBOL, VB6, Java 1.4の中からどれが次世代言語にふさわしいか議論しましょう
705デフォルトの名無しさん
2017/05/24(水) 21:45:33.98ID:new7aopo >>701
んー。本当に言いたいことだけを抽出できてない気がする
それと自分の立場を明示できていないせいで誤解されてるのかも
最初に自分の立場を明確にした上で、レスごとに大事な部分を強調するようにしてみたら?
んー。本当に言いたいことだけを抽出できてない気がする
それと自分の立場を明示できていないせいで誤解されてるのかも
最初に自分の立場を明確にした上で、レスごとに大事な部分を強調するようにしてみたら?
706デフォルトの名無しさん
2017/05/24(水) 21:52:13.03ID:oJe0HEfY >>704
それ具体的にどこの会社?
それ具体的にどこの会社?
707デフォルトの名無しさん
2017/05/24(水) 21:52:59.68ID:n/Jt/WNZ IBMじゃね
708デフォルトの名無しさん
2017/05/24(水) 21:59:39.95ID:pM6+zSYg >>704
1.4ってジェネリクスないよな?
1.4ってジェネリクスないよな?
709デフォルトの名無しさん
2017/05/24(水) 23:25:21.20ID:QZAYfmj0710デフォルトの名無しさん
2017/05/24(水) 23:43:15.95ID:DLDz9laB 3年程前まで居た現場はJava 1.4だったよ、客は一部上場企業ね
まぁ抜ける時に丁度バージョンアップどうするって話はしてたな
7は新しすぎるから6で、みたいだった記憶
まぁ抜ける時に丁度バージョンアップどうするって話はしてたな
7は新しすぎるから6で、みたいだった記憶
711デフォルトの名無しさん
2017/05/25(木) 01:15:47.85ID:S4aSECR+ >>709
Rustをわかってないな。あれはなんたらチェッカーが強すぎてHelloWorld以上のことをしようとするとコンパイルが通らずにそもそもプログラムにならんのさ。
PHPはとりあえずゴミやカスを生産はできる。でもRustからは何も生まれない。ゴミやカスが生まれないって意味ではよい言語かもな。製品も生まれんが。
Rustをわかってないな。あれはなんたらチェッカーが強すぎてHelloWorld以上のことをしようとするとコンパイルが通らずにそもそもプログラムにならんのさ。
PHPはとりあえずゴミやカスを生産はできる。でもRustからは何も生まれない。ゴミやカスが生まれないって意味ではよい言語かもな。製品も生まれんが。
712デフォルトの名無しさん
2017/05/25(木) 04:11:36.99ID:ezJU1k3U elixirは禁忌なの?
713あ
2017/05/25(木) 08:28:51.58ID:9n8bzUby >>705
なるほど。マジでありがとう。
いろんな話に首突っ込んでるし余計にか。
会社では、とか、個人的には、とか枕つけるのと、うざいって言われるかもしらんが少々冗長でもパラグラフ末に結論書くとか、工夫するわ。
なるほど。マジでありがとう。
いろんな話に首突っ込んでるし余計にか。
会社では、とか、個人的には、とか枕つけるのと、うざいって言われるかもしらんが少々冗長でもパラグラフ末に結論書くとか、工夫するわ。
714あ
2017/05/25(木) 08:31:56.06ID:9n8bzUby715デフォルトの名無しさん
2017/05/25(木) 09:03:26.85ID:tgvA03tX Rust普通に使ってるけど、そんなに悪いかな?
社内用のgccのtemplate系のエラー解析ライブラリをRustで書いてみんなで使ってる
社内用のgccのtemplate系のエラー解析ライブラリをRustで書いてみんなで使ってる
716デフォルトの名無しさん
2017/05/25(木) 09:05:50.92ID:Je843dUj 悪いのはいつも使ってるやつの頭
717デフォルトの名無しさん
2017/05/25(木) 09:06:29.33ID:A2RaX9kE お前ら今話題のピー言語は?
718デフォルトの名無しさん
2017/05/25(木) 10:48:29.16ID:jD8c7u6v そう言えばみんなは自分の好きな次世代言語のどんなコードが気に入って好きになったんだろう?
こう言う処理をこう書けるのがクール!!とか有ったんだよね?
こう言う処理をこう書けるのがクール!!とか有ったんだよね?
719デフォルトの名無しさん
2017/05/25(木) 11:27:33.72ID:/eJUHzjl ことリン→なまえがかわいい
720デフォルトの名無しさん
2017/05/25(木) 11:34:58.13ID:9Efltc2N721デフォルトの名無しさん
2017/05/25(木) 14:13:57.90ID:LLIRcd0g エリクサー→名前が厨二
722デフォルトの名無しさん
2017/05/25(木) 15:16:22.81ID:VyhgnQr+ >>721
RAMメーカーのCFDに喧嘩売ってる?
RAMメーカーのCFDに喧嘩売ってる?
723デフォルトの名無しさん
2017/05/25(木) 16:07:04.62ID:s+W1gv2M >>721
ギターの弦のことかと思った
ギターの弦のことかと思った
724デフォルトの名無しさん
2017/05/25(木) 16:29:39.75ID:peiZ2RBQ725デフォルトの名無しさん
2017/05/25(木) 16:54:51.44ID:SU7CE5fr >>711が仕様理解出来なくてイライラしてるの草
726デフォルトの名無しさん
2017/05/25(木) 18:33:25.61ID:Gj42CiwS727あ
2017/05/25(木) 19:26:06.45ID:9n8bzUby728あ
2017/05/25(木) 19:30:40.36ID:9n8bzUby >>726
チェッカー内で作れる物作ってるだけ、ってなんだそりゃw
作ってはいけないものが作れなくなってるだけで、もともとそう言うコードは書くべきでないし、
そんな事言うと誰もがチェッカー内で作れるもの作ってるだけなんじゃねえの?
元からあったしね。推奨ですらハネてビルドかけてもらえないプロジェクトとか。
単に技術か経験どちらか、または両方足りないだけでは?
チェッカー内で作れる物作ってるだけ、ってなんだそりゃw
作ってはいけないものが作れなくなってるだけで、もともとそう言うコードは書くべきでないし、
そんな事言うと誰もがチェッカー内で作れるもの作ってるだけなんじゃねえの?
元からあったしね。推奨ですらハネてビルドかけてもらえないプロジェクトとか。
単に技術か経験どちらか、または両方足りないだけでは?
729デフォルトの名無しさん
2017/05/25(木) 19:44:48.33ID:qvTBr+rP 具体的に他の言語では問題なくてRustの制限には引っ掛かる用法ってどんなの?
730デフォルトの名無しさん
2017/05/25(木) 20:06:43.93ID:GLCbsyY4 次世代言語だから浸透させるんだとかいう一方で
浸透してないようなものは次世代言語じゃないとか言い出すような
一貫性の欠片もない人が紛れ込んでいるとスレの流れが速くなるなw
浸透してないようなものは次世代言語じゃないとか言い出すような
一貫性の欠片もない人が紛れ込んでいるとスレの流れが速くなるなw
731デフォルトの名無しさん
2017/05/25(木) 20:11:02.34ID:qvTBr+rP 次世代言語って開発効率は旧世代より高くあるべきだと思うし開発効率が低下するような言語は次世代言語とは言えないんじゃない?
732デフォルトの名無しさん
2017/05/25(木) 20:12:52.69ID:YLfurTYJ >>730
あの主張読んだらやっぱり普通はそう解釈するよな
あの主張読んだらやっぱり普通はそう解釈するよな
733デフォルトの名無しさん
2017/05/25(木) 21:19:02.52ID:Gj42CiwS >>729
有名どころだとグラフ構造。あと木構造も結構辛い。
書けなくはないがチェッカー通そうと思ったらbox rc rcref祭とか色々あったり、イテレータの肩だけで一行の長さぶっちぎったり、無名関数引き回すとぶっ壊れたり、
とにかく存在が破綻してんの。
有名どころだとグラフ構造。あと木構造も結構辛い。
書けなくはないがチェッカー通そうと思ったらbox rc rcref祭とか色々あったり、イテレータの肩だけで一行の長さぶっちぎったり、無名関数引き回すとぶっ壊れたり、
とにかく存在が破綻してんの。
734デフォルトの名無しさん
2017/05/25(木) 21:22:58.60ID:Gj42CiwS735デフォルトの名無しさん
2017/05/25(木) 21:24:57.72ID:Gj42CiwS C++である程度の規模のプログラム書いてValgrind通したものをRustに移植してみれば俺の言ったことが分かるはずだ
736デフォルトの名無しさん
2017/05/25(木) 21:26:56.04ID:SU7CE5fr パラダイムの違う言語に移植する事自体間違っている
737デフォルトの名無しさん
2017/05/25(木) 21:32:27.62ID:3whttm4L まあまあID:Gj42CiwSを叩いている人は実際にコードで証明して黙らせ殺してあげなよ
738デフォルトの名無しさん
2017/05/25(木) 21:33:54.31ID:qbQ1iVdd >>731
開発効率なんて定義不能じゃ
開発効率なんて定義不能じゃ
739デフォルトの名無しさん
2017/05/25(木) 21:38:33.34ID:ItmeFS2W 感覚だよ感覚
740デフォルトの名無しさん
2017/05/25(木) 21:59:52.05ID:Akq7oqz3741デフォルトの名無しさん
2017/05/25(木) 22:10:56.86ID:JKNaFgi4 でたーw
極論だして論破した気になってる奴wwww
極論だして論破した気になってる奴wwww
742デフォルトの名無しさん
2017/05/25(木) 22:13:17.59ID:cq69lVs9 開発効率定義不能ってホントに極論だよな
743デフォルトの名無しさん
2017/05/25(木) 22:23:36.26ID:Fjpm+mem 開発が有限時間で終わるか否かの1bitを予言するだけでも難しい
745あ
2017/05/25(木) 22:45:54.43ID:hnBoF8Hs746デフォルトの名無しさん
2017/05/25(木) 23:16:36.34ID:Fjpm+mem 要するに実行時にチェックするプログラムは簡単に作れるのに対して
コンパイル時だと全てのチェックを通り抜ける解が存在するのかという疑問がある
コンパイル時だと全てのチェックを通り抜ける解が存在するのかという疑問がある
747デフォルトの名無しさん
2017/05/26(金) 00:03:00.80ID:wwO+KkLH HaskellでqueueをO(1)で実装しろって程度の話>Rustでグラフ/木を作る
純粋関数型なHaskellで2リストキューを使った素朴な方法だとしんどいし、所有権とメモリ管理が厳格なRustだとADTで書き下すグラフや木はめんどい
どっちもライブラリは既にあるんで、破綻してると声高に連呼するなんて馬鹿じゃないとできないよ
純粋関数型なHaskellで2リストキューを使った素朴な方法だとしんどいし、所有権とメモリ管理が厳格なRustだとADTで書き下すグラフや木はめんどい
どっちもライブラリは既にあるんで、破綻してると声高に連呼するなんて馬鹿じゃないとできないよ
748デフォルトの名無しさん
2017/05/26(金) 00:17:50.32ID:5gPc0nT0749デフォルトの名無しさん
2017/05/26(金) 00:24:47.24ID:W8U5vxkJ 終了直前まで一切メモリ解放しなくていいならできるのは自明
既に解かれた問題だけを選べば破綻しないのも自明
既に解かれた問題だけを選べば破綻しないのも自明
750デフォルトの名無しさん
2017/05/26(金) 03:09:57.04ID:NvS9muX6 グラフでも木でもキューでも何でもいいから、次世代言語のコードで語れよ。
751デフォルトの名無しさん
2017/05/26(金) 06:26:55.41ID:Xdie43+z752デフォルトの名無しさん
2017/05/26(金) 10:07:55.16ID:B9iHieSk >>744
大多数がそう思うような文を書いてしまったという事実をしっかり受け入れて反省するんやで
大多数がそう思うような文を書いてしまったという事実をしっかり受け入れて反省するんやで
753あ
2017/05/26(金) 10:45:05.62ID:uOeVRBLK >>752
反省はするが、こういう、特に意見がない限り発言しない、自分がノイジーマイノリティなのかどうかわからん場で、大多数は使うべきじゃないよ。
反省はするが、こういう、特に意見がない限り発言しない、自分がノイジーマイノリティなのかどうかわからん場で、大多数は使うべきじゃないよ。
754デフォルトの名無しさん
2017/05/26(金) 12:12:59.19ID:qQ/oDW04 一言言い返さないと気が済まないの草
755デフォルトの名無しさん
2017/05/26(金) 12:41:27.23ID:VfWi0ZR2 ぶっちゃけ書籍が豊富かどうかも結構重要じゃない?
756デフォルトの名無しさん
2017/05/26(金) 15:59:13.78ID:El26kNsy そりゃ最初にソース書いたやつは楽だっただろうけどさ
1/1Mの確率で発生する実行時バグの再現とかうんざりなんだけどw
rustってそういう方向で発展した感じはする
1/1Mの確率で発生する実行時バグの再現とかうんざりなんだけどw
rustってそういう方向で発展した感じはする
757デフォルトの名無しさん
2017/05/26(金) 16:13:44.05ID:/9nVrKkw 数千万人が使うFirefoxの開発のために作られた言語を
一般のソフトウェア開発に適用しようというのが間違いあり
一般のソフトウェア開発に適用しようというのが間違いあり
759デフォルトの名無しさん
2017/05/26(金) 17:09:15.54ID:DWpJNS2w ついに外野の煽りまで言い返しに見えるようになったか……
760デフォルトの名無しさん
2017/05/27(土) 08:10:39.25ID:pn0LTxzc pythonとgoを足して2で割ったような言語がほしい
761デフォルトの名無しさん
2017/05/27(土) 08:28:53.30ID:/y/DrrO+ >>760
grumpy
grumpy
762デフォルトの名無しさん
2017/05/27(土) 08:54:52.85ID:L7+QfvMM やっぱscalaってkotlinに駆逐されるのかな
プログラミング言語でさえ悪貨は良貨を駆逐する状態だからな
例えばPHP
それがkotlinくらいまともな言語で、ググールがバックで突き上げてくるとなると・・・・・・・
プログラミング言語でさえ悪貨は良貨を駆逐する状態だからな
例えばPHP
それがkotlinくらいまともな言語で、ググールがバックで突き上げてくるとなると・・・・・・・
764デフォルトの名無しさん
2017/05/27(土) 10:57:46.16ID:reRwAhMh C#/TypeScript/Kotlinあたりは今やプログラミング言語の一つの大きな派閥をなしてるよな
あとはネイティブにも同様の思想の言語の決定版ができれば完成なんだが
あとはネイティブにも同様の思想の言語の決定版ができれば完成なんだが
765デフォルトの名無しさん
2017/05/27(土) 11:00:36.94ID:Eqsuq0s8 >>764
Rust使うほどの速度は求めてないけど、Goはリスト操作関数とかジェネリクスとかなくて辛いって時に使える丁度良いネイティブ言語欲しいよね
Rust使うほどの速度は求めてないけど、Goはリスト操作関数とかジェネリクスとかなくて辛いって時に使える丁度良いネイティブ言語欲しいよね
766デフォルトの名無しさん
2017/05/27(土) 11:04:36.51ID:qsMDYrRv ネイティブで、リスト操作そこそこできて、結構速い言語、D
767デフォルトの名無しさん
2017/05/27(土) 12:12:38.62ID:HGPZIoS2 リストくらいてきとうにつくれよ。。
768デフォルトの名無しさん
2017/05/27(土) 13:20:29.95ID:XQaVXkEd 安全で性能が高いリストを言語の専門家の側で作ってくれてたら貴重な研究時間をリストのコーディングなんかに割かなくてよくなるからな
新しい言語を触るたびにまず自分専用のリストをコーディングするところから始まるなら既に資産のあるCかFortranでいいわw
新しい言語を触るたびにまず自分専用のリストをコーディングするところから始まるなら既に資産のあるCかFortranでいいわw
769デフォルトの名無しさん
2017/05/27(土) 13:29:17.98ID:Eqsuq0s8 >>767
ジェネリクスがないから自作出来ない
ジェネリクスがないから自作出来ない
770デフォルトの名無しさん
2017/05/27(土) 17:05:37.03ID:ov4Em3Hs できることと速度を求めるなら、C++/CLI。つこうたことはないが
771デフォルトの名無しさん
2017/05/27(土) 18:41:54.29ID:iIPWFR2r772デフォルトの名無しさん
2017/05/28(日) 00:06:36.06ID:ICysod8P >>771
ネイティブとマネージドでマネージドのほうが早いわけねーやろ
ネイティブとマネージドでマネージドのほうが早いわけねーやろ
773デフォルトの名無しさん
2017/05/28(日) 00:11:35.08ID:Sy0/3upe 偶にJavaでネイティブより早い場合があった記憶だけど、どんな理由でそうなるんだろう
774デフォルトの名無しさん
2017/05/28(日) 00:23:47.84ID:ICysod8P >>773
理屈で考えてそんなことあるわけねーだろ…
何もかかってないたこ焼きと、すでにソースとマヨがかかってるたこ焼きに何かを足して
どっちが美味しくなるポテンシャルありますかみたいなことだぞ
なんもかかってないほうがポテンシャルあるに決まってんだろ
理屈で考えてそんなことあるわけねーだろ…
何もかかってないたこ焼きと、すでにソースとマヨがかかってるたこ焼きに何かを足して
どっちが美味しくなるポテンシャルありますかみたいなことだぞ
なんもかかってないほうがポテンシャルあるに決まってんだろ
775デフォルトの名無しさん
2017/05/28(日) 00:46:17.13ID:0WfaW7Gk 青のりを足したんだろ
ソースとマヨがかかってるたこ焼きが圧倒的差で勝つ
ソースとマヨがかかってるたこ焼きが圧倒的差で勝つ
776デフォルトの名無しさん
2017/05/28(日) 00:54:48.38ID:U0KxOEQh ネイティブとマネージドだと徹底的に最適化した場合は当然ネイティブが速いけど、
C(++)とかよりマルチスレッドを楽に実装出来るC#とかならC++だと面倒でスレッド使う気無くすような所でも使えるから同じ労力なら速くなる(かもしれない)
C(++)とかよりマルチスレッドを楽に実装出来るC#とかならC++だと面倒でスレッド使う気無くすような所でも使えるから同じ労力なら速くなる(かもしれない)
777デフォルトの名無しさん
2017/05/28(日) 01:15:59.27ID:4Fx58v3m JITでコンパイルしたネイティブコードだけじゃなく計算した結果も後で使いまわすんじゃねーの
うまくヒットすれば凄く速くなるけど下手すると効率悪い、メモリ喰う、処理も増えるの三重苦
うまくヒットすれば凄く速くなるけど下手すると効率悪い、メモリ喰う、処理も増えるの三重苦
778デフォルトの名無しさん
2017/05/28(日) 01:17:31.30ID:U0KxOEQh あとGCはメモリ足りなくなってから処理走らせるからC++で使い終わるたびにdeleteするより速い場合も極まれにあるって誰かが言ってた希ガス
779デフォルトの名無しさん
2017/05/28(日) 01:32:06.42ID:0WfaW7Gk まさにこのスレのために産まれたような言語が出てきたな
その名もP
その名もP
780デフォルトの名無しさん
2017/05/28(日) 03:57:38.43ID:EaAE0rQy ( ´,_ゝ`)プッ
781デフォルトの名無しさん
2017/05/28(日) 07:19:31.82ID:eakmpy+6 >>774
JIT+実行時最適化でJIT VMのほうが速くなることはある。
JIT+実行時最適化でJIT VMのほうが速くなることはある。
782デフォルトの名無しさん
2017/05/28(日) 08:00:52.56ID:LGEAgh6i >>774
でも、ソースとマヨネーズかけたほうが旨いよ。
でも、ソースとマヨネーズかけたほうが旨いよ。
783あ
2017/05/28(日) 08:13:50.68ID:69h6ECeI JITと何も考えてないネイティブなら、JITのほうが速いこともそこそこあるだろ。
有るか無いかわからないからベクトル演算命令使わないバイナリと、JITが使うように、使えないように、どちらでもなく展開できるように書いてある中間バイナリなら中間バイナリのほうがいいと思う。
有るか無いかわからないからベクトル演算命令使わないバイナリと、JITが使うように、使えないように、どちらでもなく展開できるように書いてある中間バイナリなら中間バイナリのほうがいいと思う。
784デフォルトの名無しさん
2017/05/28(日) 08:55:10.15ID:7vnd2VbN 自分だけしか使わない常時起動の鯖に置くシステムで
長期間使うから次世代言語で作ろうと思ったけど
このスレ読んでたらどの言語選んだらいいのか判らなくなったから
RabbitMQ建ててとりあえずpythonで実装して連携させてみた
少しずつ次世代言語に置き換えていこうと思ったけと
常用するシステムって一度動いちゃうと
他の言語で再実装する気が無くなってくるね・・・
まずはerlang勉強してみる
長期間使うから次世代言語で作ろうと思ったけど
このスレ読んでたらどの言語選んだらいいのか判らなくなったから
RabbitMQ建ててとりあえずpythonで実装して連携させてみた
少しずつ次世代言語に置き換えていこうと思ったけと
常用するシステムって一度動いちゃうと
他の言語で再実装する気が無くなってくるね・・・
まずはerlang勉強してみる
785デフォルトの名無しさん
2017/05/28(日) 09:23:33.91ID:WC/bP4dR そこはElixirだろ
あえて遠回りしたいなら止めないけど
あえて遠回りしたいなら止めないけど
786デフォルトの名無しさん
2017/05/28(日) 09:48:01.98ID:3JFLUc/w erlangとかElixirとか、そんな流行ってもない古いオワプロ(終わったプログラミング言語)使っても
ええことないで
ええことないで
787デフォルトの名無しさん
2017/05/28(日) 10:12:17.25ID:rsSu7Dn/ キラーコンテンツ1本でひっくり返るような評価なんだから
好きなの作ればいい
世間の技術者はもっと柔軟だよ
好きなの作ればいい
世間の技術者はもっと柔軟だよ
788デフォルトの名無しさん
2017/05/28(日) 10:18:08.52ID:WC/bP4dR789デフォルトの名無しさん
2017/05/28(日) 12:23:35.72ID:2YTf35Kg >>765
C++
C++
790デフォルトの名無しさん
2017/05/28(日) 12:59:24.25ID:U0KxOEQh791デフォルトの名無しさん
2017/05/28(日) 13:17:26.36ID:RSwot+pt 次世代言語とやらは現世代に比べて何が優れてんの?
792デフォルトの名無しさん
2017/05/28(日) 13:20:41.87ID:ermVQ6O8 >>791
高機能なライブラリ群
高機能なライブラリ群
793デフォルトの名無しさん
2017/05/28(日) 13:23:21.04ID:oECcZCdB >>792
ん?
ん?
794デフォルトの名無しさん
2017/05/28(日) 14:22:45.54ID:ombgcLsI >>790
OCamlでいいんじゃない
OCamlでいいんじゃない
795デフォルトの名無しさん
2017/05/28(日) 14:30:05.38ID:ew7wH7J4 >>765
node.js+typescript
node.js+typescript
796デフォルトの名無しさん
2017/05/28(日) 14:32:16.25ID:ew7wH7J4 >>786
エリクサーが古いオワコンはねーわ
エリクサーが古いオワコンはねーわ
797デフォルトの名無しさん
2017/05/28(日) 14:43:12.15ID:Qisigybt798デフォルトの名無しさん
2017/05/28(日) 14:48:56.57ID:f3EcrVh7 おれ仕事でエリクサー使ってるんだー
と一度はいってみたい
なんかすごそうだろ
と一度はいってみたい
なんかすごそうだろ
799デフォルトの名無しさん
2017/05/28(日) 14:54:43.46ID:f+PScB+/ 不老不死の薬の名前を冠す言語がそう簡単に終わるはずはない
仮に終わっても魔術によって復活する
仮に終わっても魔術によって復活する
800デフォルトの名無しさん
2017/05/28(日) 15:04:58.72ID:Q4IaIxAm でも、襟がくさい
801デフォルトの名無しさん
2017/05/28(日) 15:19:37.92ID:9pcvjMzo つい使わずに最後まで温存しちゃう
802デフォルトの名無しさん
2017/05/28(日) 15:20:40.57ID:ew7wH7J4 >>801
誰がうまいこと言えと
誰がうまいこと言えと
803デフォルトの名無しさん
2017/05/28(日) 17:55:49.04ID:vGG8JLoS >>802
えっ どの辺がうまいの?
えっ どの辺がうまいの?
804デフォルトの名無しさん
2017/05/28(日) 19:33:51.17ID:kC4qoZB1 FFのプレイスタイルの話かと
805デフォルトの名無しさん
2017/05/28(日) 21:04:54.47ID:qP/iot/5 すみません
GoとRustはC10Kにはどういうアプローチで解決してるんでしょうか
GoとRustはC10Kにはどういうアプローチで解決してるんでしょうか
806デフォルトの名無しさん
2017/05/28(日) 21:05:35.06ID:ermVQ6O8 エリ草wすこ
807デフォルトの名無しさん
2017/05/28(日) 22:18:28.95ID:Sy0/3upe Rust知らないけどGoは処理の都度軽量スレッド作成して実行するだけじゃないん?
haskellで軽量スレッドの便利さ知ったわ、有名なのはErlangだろうけど
haskellで軽量スレッドの便利さ知ったわ、有名なのはErlangだろうけど
808デフォルトの名無しさん
2017/05/29(月) 06:24:01.86ID:KA+g5PFR $$$4.3$$$
"V"="1.3335412","0","1","3Q",
"V"="1.3335412","0","1","3Q",
809デフォルトの名無しさん
2017/05/29(月) 09:14:05.07ID:GJ83UXew マルチスレッドの分散処理とかネイティブなら意図的に書かないと分散されないとかあるんじゃない?
810デフォルトの名無しさん
2017/05/29(月) 10:31:24.03ID:QfBUHXY+ ところで次世代言語スレとしては「書けるけど面倒」は「書けない」と同義と扱ってもいいよな?
チューリング完全を扱うスレじゃないんだし
チューリング完全を扱うスレじゃないんだし
811デフォルトの名無しさん
2017/05/29(月) 11:14:43.44ID:iVofvGGy はああ〜〜 息をするのも面倒でいやだ
812あ
2017/05/29(月) 13:01:56.82ID:GBTOKQdE >>810
かけるけど面倒だけど、他には無いメリットがある、ならアリだと思うが。
Rustはもちろん面倒だが、チェッカが正しいから面倒だし、
Goの if err != nilも、何回書くんだこれってなりがちだけど、シンプルさといろんな意味での長距離のジャンプをさせないがために面倒だし。
ただただひたすら面倒な物とは多少違うかと。
世の中にはチューリング完全でない、と言うことに意味のあるものもあるしね。
DSLだけど帳票出力言語とか書いたことあって、敢えてチューリング完全にならない様に書いた事ある。
事実それ以前の帳票出力言語で闇ばっかり生まれてたのが綺麗に抹殺されて、
見かけの工数は2割くらい増えてるけどトータルの工数で統計取ったら8割減という驚きの結果が出た。
かけるけど面倒だけど、他には無いメリットがある、ならアリだと思うが。
Rustはもちろん面倒だが、チェッカが正しいから面倒だし、
Goの if err != nilも、何回書くんだこれってなりがちだけど、シンプルさといろんな意味での長距離のジャンプをさせないがために面倒だし。
ただただひたすら面倒な物とは多少違うかと。
世の中にはチューリング完全でない、と言うことに意味のあるものもあるしね。
DSLだけど帳票出力言語とか書いたことあって、敢えてチューリング完全にならない様に書いた事ある。
事実それ以前の帳票出力言語で闇ばっかり生まれてたのが綺麗に抹殺されて、
見かけの工数は2割くらい増えてるけどトータルの工数で統計取ったら8割減という驚きの結果が出た。
813デフォルトの名無しさん
2017/05/29(月) 13:56:23.00ID:acCBGFJL >>810
それを言ったらアセンブラで何でも書けるよ。
それを言ったらアセンブラで何でも書けるよ。
814デフォルトの名無しさん
2017/05/29(月) 14:12:49.13ID:QfBUHXY+815デフォルトの名無しさん
2017/05/29(月) 14:23:05.93ID:MJszAqXA 次世代には開発での見かけの生産性だけ高くても意味ないじゃん
って問題意識があるような
rustはチェッカーでエラー出してはねとばし(だから警告じゃダメ)
Goは言語仕様小さくしまくって
でも目的は同じみたいな
って問題意識があるような
rustはチェッカーでエラー出してはねとばし(だから警告じゃダメ)
Goは言語仕様小さくしまくって
でも目的は同じみたいな
816デフォルトの名無しさん
2017/05/29(月) 14:30:20.43ID:KWmGTlOy いくら優れてても流行らなければ何の意味もない
言語自体の優劣をどうやって決めるのか
次世代って言うのは単に次に流行る言語って意味だ
多くの人が使い次の世代を担っていく言語だ
なになにの機能がないから次世代じゃないとか本末転倒
見かけだけの生産性が高い言語が流行ったとしてそれが社会の求めるものだったら
そういうことだ
それが理解できないようでは次世代もくそもない
言語自体の優劣をどうやって決めるのか
次世代って言うのは単に次に流行る言語って意味だ
多くの人が使い次の世代を担っていく言語だ
なになにの機能がないから次世代じゃないとか本末転倒
見かけだけの生産性が高い言語が流行ったとしてそれが社会の求めるものだったら
そういうことだ
それが理解できないようでは次世代もくそもない
817あ
2017/05/29(月) 14:44:37.26ID:GBTOKQdE >>814
Kotlinなんかで、この中にDSLを内包しよう、という動きもあるが、あれには完全に賛成とは言わんと言う意味と、
○○の○○を書くときにめんどくさい、と言う反論への、○○を書くべく好きに言語選んだり作れと言う予め言っときたい反論。
Kotlinなんかで、この中にDSLを内包しよう、という動きもあるが、あれには完全に賛成とは言わんと言う意味と、
○○の○○を書くときにめんどくさい、と言う反論への、○○を書くべく好きに言語選んだり作れと言う予め言っときたい反論。
818デフォルトの名無しさん
2017/05/29(月) 16:10:34.95ID:QfBUHXY+ このスレに来てる人で「安全だけど面倒」系の言語を推してる人ってどういう人なんだろう?
そういう言語ってプロトタイピングに使える訳じゃないから本番用だろうし、本番の言語を決定出来る立場の人なんだろうか?
そういう言語ってプロトタイピングに使える訳じゃないから本番用だろうし、本番の言語を決定出来る立場の人なんだろうか?
819デフォルトの名無しさん
2017/05/29(月) 16:20:37.06ID:godqZJ2E x 安全だけど面倒
o 安全を犠牲に横着が許されない
o 安全を犠牲に横着が許されない
820デフォルトの名無しさん
2017/05/29(月) 16:25:30.41ID:godqZJ2E IDが神だ
崇めろ
崇めろ
821デフォルトの名無しさん
2017/05/29(月) 16:45:39.75ID:QfBUHXY+822デフォルトの名無しさん
2017/05/29(月) 18:26:51.14ID:acCBGFJL >>820
J2EE や J2SE だったら良かったのにね〜
J2EE や J2SE だったら良かったのにね〜
823デフォルトの名無しさん
2017/05/29(月) 19:22:07.37ID:0Gkejxu2824デフォルトの名無しさん
2017/05/29(月) 19:42:32.87ID:ZANWFrCy >>812
可変な再帰的データ構造が書けないチェッカーの何が正しいって?
可変な再帰的データ構造が書けないチェッカーの何が正しいって?
825デフォルトの名無しさん
2017/05/29(月) 19:49:03.78ID:QfBUHXY+ >>823
ああ、そういうのを指して横着と言うのか。なるほどありがとう
ああ、そういうのを指して横着と言うのか。なるほどありがとう
826デフォルトの名無しさん
2017/05/29(月) 20:11:17.48ID:VknhjnwZ つーかここの人が求めてるものってなんだ?趣味で扱う言語?それとも仕事で扱う言語?
仕事なら商品として売りものを作る用?それともプロトタイピング用?
俺はプロトタイピング+趣味なんだけど
仕事なら商品として売りものを作る用?それともプロトタイピング用?
俺はプロトタイピング+趣味なんだけど
827デフォルトの名無しさん
2017/05/29(月) 20:14:50.03ID:TtK3Weat 次世代=仕事も含めメジャーになる言語
828デフォルトの名無しさん
2017/05/29(月) 20:46:24.41ID:ZANWFrCy プロトタイピング目的なら型がだるいRustとかScalaとかHaskellとか選外だと思うんだが?
829デフォルトの名無しさん
2017/05/29(月) 20:53:06.38ID:IJYAREKV ろくにアセンブラ使ったことないヤツに限ってアセンブラ万能説唱えるよな
理論上可能だとしても現実的には大体無理
理論上可能だとしても現実的には大体無理
830デフォルトの名無しさん
2017/05/29(月) 20:54:05.50ID:HfKGNWZk831デフォルトの名無しさん
2017/05/29(月) 21:00:14.21ID:ZANWFrCy832デフォルトの名無しさん
2017/05/29(月) 21:02:13.17ID:HfKGNWZk833デフォルトの名無しさん
2017/05/29(月) 21:03:35.01ID:HfKGNWZk 理由が「型がだるい」じゃなくて「IDE起動がだるい」とか「コンパイルがだるい」ならまだ分かるけど
834デフォルトの名無しさん
2017/05/29(月) 21:10:58.51ID:VknhjnwZ >>828
プロトタイピングとか自分用の道具でもある程度規模が大きくなって来ると型のサポートが欲しくなって来てな
プロトタイピングとか自分用の道具でもある程度規模が大きくなって来ると型のサポートが欲しくなって来てな
835デフォルトの名無しさん
2017/05/29(月) 21:40:27.19ID:1GyH5Yoq おまいらがアーアンがいいとかルーストがいいとかワガママ言っても、
コトィンがランゲージオブネクストザジェネレーションの地位を確立したのは疑いようのないトゥルス
0 == "0"がtrueかfalseかなんて疑問が毎秒1000ビリオンダラーの損失を叩き出すPHPが
なぜか世界最大級の地位を確立したように
おまいらは低きに、そして大流に流されるだけの哀れな落ち葉でしかないんだよ
いつか腐葉土になる日もくるかもしれないが、まぁね
コトィンがランゲージオブネクストザジェネレーションの地位を確立したのは疑いようのないトゥルス
0 == "0"がtrueかfalseかなんて疑問が毎秒1000ビリオンダラーの損失を叩き出すPHPが
なぜか世界最大級の地位を確立したように
おまいらは低きに、そして大流に流されるだけの哀れな落ち葉でしかないんだよ
いつか腐葉土になる日もくるかもしれないが、まぁね
836デフォルトの名無しさん
2017/05/29(月) 21:41:32.11ID:TtK3Weat www
コピペして使わせてもらうわ
コピペして使わせてもらうわ
837デフォルトの名無しさん
2017/05/29(月) 21:56:59.55ID:nr29QT3e こいつ久しぶりに見たな
838デフォルトの名無しさん
2017/05/29(月) 22:00:04.18ID:1GyH5Yoq ?
俺はいつも君のそばに。
俺はいつも君のそばに。
839デフォルトの名無しさん
2017/05/29(月) 23:26:26.04ID:wVYYUW+P >>835
これが次世代言語を操るプログラマか…
これが次世代言語を操るプログラマか…
840デフォルトの名無しさん
2017/05/29(月) 23:31:27.27ID:HMZ0UBYT >>835
おまえのその才能はプログラムでは活かせない
おまえのその才能はプログラムでは活かせない
841デフォルトの名無しさん
2017/05/30(火) 05:38:55.18ID:LPiGbjps 10年前ならわかるが、今のHaskellの性能では論外になるような案件って、そう多くないんだがなあ。
まあ、言ってみたかっただけなんだろうけど。
まあ、言ってみたかっただけなんだろうけど。
842デフォルトの名無しさん
2017/05/30(火) 07:33:30.59ID:v66/o58F Haskellで書いたコードは見た目がキモくてジンマシンが出ちゃう人続出なのでダメです
843デフォルトの名無しさん
2017/05/30(火) 08:43:27.37ID:83Cyphvh 性能で選外はどうかと思うなぁ
そんなもん使う人増えれば最適化進むんだし
そんなもん使う人増えれば最適化進むんだし
844デフォルトの名無しさん
2017/05/30(火) 09:15:29.92ID:RK9zQtkX スレタイの言語でRustだけマイナー言語すぎやしないかい
845デフォルトの名無しさん
2017/05/30(火) 09:35:09.42ID:qy3qSG7Q >>838
次回を期待して待っている
次回を期待して待っている
846デフォルトの名無しさん
2017/05/30(火) 10:57:41.88ID:cUShYlMs >>844
マイナーなだけでなく実体もクソオブザクソなのでHaskellより先にスレタイから外すべきだった。
マイナーなだけでなく実体もクソオブザクソなのでHaskellより先にスレタイから外すべきだった。
847デフォルトの名無しさん
2017/05/30(火) 11:11:01.01ID:cUShYlMs Rustと比べたらHaskellだって実用言語。次スレからはHaskellの復活はいいとしてもRustをスレタイから外すことを提案
848デフォルトの名無しさん
2017/05/30(火) 11:53:37.01ID:ixvaRPT7 Rust擁護勢はキチガイみたいなのしかいないことが判明したので許可w
849デフォルトの名無しさん
2017/05/30(火) 12:42:11.61ID:8eoxxCqM まーた特定言語叩きが始まった
ネットの情報だけを元に叩く事しかしない引きこもりばかり
ネットの情報だけを元に叩く事しかしない引きこもりばかり
850デフォルトの名無しさん
2017/05/30(火) 12:49:20.67ID:8KwHai5R とはいえ現代の最高の言語はscalaだし
851あ
2017/05/30(火) 12:52:24.90ID:CncaY8jR >>818
横着にもかける言語で、横着が許されない類のプロジェクトに関わった事がある人では?俺もそうだし。
次世代という意味で期待してるってのもいろんな面があって、
とにかく楽な言語、とにかく早い言語、とにかくメモリー使わない言語、とにかく安全な言語と求めるものが違うところに、
これこそ至高!と全部中途半端なRubyとHaskell出てくるからめっちゃくちゃウザい。
>>824
再帰的な構造はかけるでしょ。
再帰的なデータ型も書ける。
だめなのは、多相の組み合わせが爆発するか循環してしまうもので、当たり前だがHaskellみたいに実行時に多相性を解決してるんじゃなくて、コンパイル時に解決されるからで、そのコンパイル時の解決を行うときに死ぬから。
コンパイル時解決は、というモットーというかテーゼなので、仕方ない。
し、そもそも、そんなものを作るべきではないというのが公式の見解かと。
コンパイル時に多相を解決する言語ならだいたい同じ。
横着にもかける言語で、横着が許されない類のプロジェクトに関わった事がある人では?俺もそうだし。
次世代という意味で期待してるってのもいろんな面があって、
とにかく楽な言語、とにかく早い言語、とにかくメモリー使わない言語、とにかく安全な言語と求めるものが違うところに、
これこそ至高!と全部中途半端なRubyとHaskell出てくるからめっちゃくちゃウザい。
>>824
再帰的な構造はかけるでしょ。
再帰的なデータ型も書ける。
だめなのは、多相の組み合わせが爆発するか循環してしまうもので、当たり前だがHaskellみたいに実行時に多相性を解決してるんじゃなくて、コンパイル時に解決されるからで、そのコンパイル時の解決を行うときに死ぬから。
コンパイル時解決は、というモットーというかテーゼなので、仕方ない。
し、そもそも、そんなものを作るべきではないというのが公式の見解かと。
コンパイル時に多相を解決する言語ならだいたい同じ。
852あ
2017/05/30(火) 12:55:16.76ID:CncaY8jR そもそも、そこまでプッシュしてないRustに、異常にアンチしてる奴がわからんなと思ってたら、
色んなスレに「僕には理解できなかったし、すごいプロダクトも見つからなかったからこれはゴミ!」って書いてる奴なんだな。
色んなスレに「僕には理解できなかったし、すごいプロダクトも見つからなかったからこれはゴミ!」って書いてる奴なんだな。
853デフォルトの名無しさん
2017/05/30(火) 13:12:50.81ID:ixvaRPT7854デフォルトの名無しさん
2017/05/30(火) 13:17:09.64ID:ynDKwlR5 >>851
>当たり前だがHaskellみたいに実行時に多相性を解決してる
おいおい、Haskellの実装知ってんのか?
Haskellで実行時に型情報が必要な多相性はほんの一部だ。
ほとんどの場合、コンパイル時に解決される。
>当たり前だがHaskellみたいに実行時に多相性を解決してる
おいおい、Haskellの実装知ってんのか?
Haskellで実行時に型情報が必要な多相性はほんの一部だ。
ほとんどの場合、コンパイル時に解決される。
855デフォルトの名無しさん
2017/05/30(火) 13:41:55.27ID:cUShYlMs >>852
モジラのステマ部隊が色んなところでRustの押し売りしてるから訂正して回ってるだけ
モジラのステマ部隊が色んなところでRustの押し売りしてるから訂正して回ってるだけ
856デフォルトの名無しさん
2017/05/30(火) 13:59:47.73ID:jNMa8OnS 特定の言語アンチになると
こんな気持ち悪い行動をする様になるんだな
こんな気持ち悪い行動をする様になるんだな
857デフォルトの名無しさん
2017/05/30(火) 14:00:38.72ID:94LBzFAW アンチの異常者が複数のスレで暴れてたのか
頭おかしい
頭おかしい
858デフォルトの名無しさん
2017/05/30(火) 14:25:11.74ID:3SkGkDqj HaskellアンチとRustアンチ至高のガイジバトル
859デフォルトの名無しさん
2017/05/30(火) 14:34:50.93ID:cUShYlMs 別にRustのステマ部隊にガイジって言われようと本望だしなぁ……
まともに書けたっていうRustアプリのソースでもって出してくれりゃ退散するのにね。
まともに書けたっていうRustアプリのソースでもって出してくれりゃ退散するのにね。
860デフォルトの名無しさん
2017/05/30(火) 14:54:59.04ID:3SkGkDqj たしかにこの後に及んで一切ソースが出ないRustははっきり言って異常だ
Rust擁護勢の方がガイジレベル高いな
Rust擁護勢の方がガイジレベル高いな
861デフォルトの名無しさん
2017/05/30(火) 15:25:43.73ID:gCyMQJVM RustはC++の正当後継だよ。
上位互換。
上位互換。
862デフォルトの名無しさん
2017/05/30(火) 15:53:14.47ID:cUShYlMs863あ
2017/05/30(火) 16:00:40.31ID:CncaY8jR864デフォルトの名無しさん
2017/05/30(火) 16:36:41.65ID:8eoxxCqM >>863
それ例外の一般化っていう立派な詭弁だぞ
それ例外の一般化っていう立派な詭弁だぞ
865デフォルトの名無しさん
2017/05/30(火) 16:40:24.65ID:8eoxxCqM Ruby、Haskell、Smalltalkときて今度はRust
そもそも、まともに知りもせず想像でひたすら叩き合ってるだけ
それを建設的かのように振る舞うのがおかしい
そもそも、まともに知りもせず想像でひたすら叩き合ってるだけ
それを建設的かのように振る舞うのがおかしい
866デフォルトの名無しさん
2017/05/30(火) 16:45:38.14ID:xHXzQ5Z2 RustよりGo外そうぜ
実用的かもしれないけど次世代言語とは呼べない
あれ前世代実用言語だろ
実用的かもしれないけど次世代言語とは呼べない
あれ前世代実用言語だろ
867デフォルトの名無しさん
2017/05/30(火) 16:49:34.00ID:2BqlBcyR 次世代言語は来るに任せるべき。 今はC#で十分。
大事なのは、ビジネスモデルを構築できるかという事。 言語はただのツール
大事なのは、ビジネスモデルを構築できるかという事。 言語はただのツール
868デフォルトの名無しさん
2017/05/30(火) 16:53:10.33ID:xHXzQ5Z2 C#とScala(Kotlin)は二大実用次世代言語だと思う
869デフォルトの名無しさん
2017/05/30(火) 16:53:38.72ID:cUShYlMs870デフォルトの名無しさん
2017/05/30(火) 16:53:42.98ID:8KwHai5R >>861
C++の後継なんて誰も必要としてなくね
C++の後継なんて誰も必要としてなくね
871デフォルトの名無しさん
2017/05/30(火) 16:59:32.47ID:rSfKoxDq >>870
それはC++が至高だと仰ってる?
それはC++が至高だと仰ってる?
872デフォルトの名無しさん
2017/05/30(火) 17:00:15.77ID:xHXzQ5Z2 >>870
C++が使われてるって事はいるって事だろ
C++が使われてるって事はいるって事だろ
873デフォルトの名無しさん
2017/05/30(火) 17:25:07.30ID:ibpptRxp C++の後継はDかC#でいいだろ
874デフォルトの名無しさん
2017/05/30(火) 17:26:58.34ID:xHXzQ5Z2 >>873
C++の後継はメモリ管理自由に出来てネイティブな事が最低条件だろ
C++の後継はメモリ管理自由に出来てネイティブな事が最低条件だろ
875デフォルトの名無しさん
2017/05/30(火) 17:41:56.85ID:ixvaRPT7 >>863
過去の幻影に囚われていつまでも暴れまわる怪獣みたいなガイジ行為はやめろ
過去の幻影に囚われていつまでも暴れまわる怪獣みたいなガイジ行為はやめろ
876デフォルトの名無しさん
2017/05/30(火) 18:02:22.35ID:LPiGbjps だめだこりゃ。「あ」は自己弁護しかできないバカだ。バイバイ。
877デフォルトの名無しさん
2017/05/30(火) 18:23:19.22ID:ixvaRPT7 自己弁護の神だからしゃーない
>>863二段落目についてはあまりに下手糞な理論展開のせいで真意が伝わっていないだけだと思うけど
>>863二段落目についてはあまりに下手糞な理論展開のせいで真意が伝わっていないだけだと思うけど
878あ
2017/05/30(火) 18:42:50.81ID:CncaY8jR879あ
2017/05/30(火) 18:46:31.86ID:CncaY8jR 自己弁護も何もなぁ。
べつにrust推しでも何でもなく、割とまともになってんじゃんって感想にここまで吠えられてるのに。
詭弁だと言うなら言い負かせば良いのに。
無理そうになったら狂ったり、論理否定のための人格否定で誤魔化すのやめてよ。つまらん。
べつにrust推しでも何でもなく、割とまともになってんじゃんって感想にここまで吠えられてるのに。
詭弁だと言うなら言い負かせば良いのに。
無理そうになったら狂ったり、論理否定のための人格否定で誤魔化すのやめてよ。つまらん。
880デフォルトの名無しさん
2017/05/30(火) 18:48:03.47ID:flnvhYto881デフォルトの名無しさん
2017/05/30(火) 18:49:24.03ID:ixvaRPT7 自分の文が読みにくいから勘違いされてるのに反省せずそういう書き込みする
あと、その理屈ならHaskell擁護も一部のキチガイ除けばそんなに悪くないと書き込んでるだけなのに噛みつかれて困惑してるよ
あと、その理屈ならHaskell擁護も一部のキチガイ除けばそんなに悪くないと書き込んでるだけなのに噛みつかれて困惑してるよ
882あ
2017/05/30(火) 18:57:43.16ID:CncaY8jR >>881
読みにくいってまた主観的な意見だな。
何かダメなの?
こないだの、改行を適宜入れろって話のほうがはるかに役に立ってる。
後半。
Haskell自体が八方美人のブスみたいな印象で、実際問題その理念通りの使い物にはならんと言ってるだけで、Haskell使いは叩いてないぞ俺。
読みにくいってまた主観的な意見だな。
何かダメなの?
こないだの、改行を適宜入れろって話のほうがはるかに役に立ってる。
後半。
Haskell自体が八方美人のブスみたいな印象で、実際問題その理念通りの使い物にはならんと言ってるだけで、Haskell使いは叩いてないぞ俺。
883デフォルトの名無しさん
2017/05/30(火) 19:03:05.19ID:ixvaRPT7884デフォルトの名無しさん
2017/05/30(火) 19:15:39.06ID:Eop9uX5M >Haskell自体が八方美人のブスみたいな印象で、実際問題その理念通りの使い物にはならんと言ってるだけで、Haskell使いは叩いてないぞ俺。
これRust叩きの人も同じやん
これRust叩きの人も同じやん
885デフォルトの名無しさん
2017/05/30(火) 19:19:35.04ID:8KwHai5R >>871
Yes!
Yes!
886デフォルトの名無しさん
2017/05/30(火) 19:24:22.10ID:MdPNaTW3 スレタイ読めないの?漏れ↓だと思ってんだけど
ここはアンチC++の巣くつ(わざと「すくつ」って書いたら予測変換出てきたw)
ここはアンチC++の巣くつ(わざと「すくつ」って書いたら予測変換出てきたw)
887デフォルトの名無しさん
2017/05/30(火) 19:50:43.11ID:gVUCJ1iG Rustは使い物にならないと批判してる人は
仮にfirefoxをちゃんとRustで書き直したら実用性はあると認めるの?
それとももっと基準は高い?
仮にfirefoxをちゃんとRustで書き直したら実用性はあると認めるの?
それとももっと基準は高い?
888デフォルトの名無しさん
2017/05/30(火) 20:36:56.72ID:Eop9uX5M 威信にかけてFireFoxは書くだろ
むしろそれ出来上がらなかったら本格的にヤバいじゃん
むしろそれ出来上がらなかったら本格的にヤバいじゃん
889デフォルトの名無しさん
2017/05/30(火) 21:03:27.26ID:5Aqfn1oc とりあえずRustでJavaScriptを作れば後はJavaScriptで自由に書けるじゃん
890デフォルトの名無しさん
2017/05/30(火) 21:42:15.61ID:flnvhYto891デフォルトの名無しさん
2017/05/30(火) 21:44:23.55ID:J0ju3rCP まあ待て待て、ここで挙げられてる言語は全部使ったことある俺が一番ウンコな言語を判定してやるよ
一番ウンコはSmalltalk!これは間違いない
一番ウンコはSmalltalk!これは間違いない
892デフォルトの名無しさん
2017/05/30(火) 22:21:32.00ID:8KwHai5R 最も
醜い言語はJS
美しい言語はScala
簡単な言語はpython
難解な言語はHaskel
柔軟な言語はC++
魅力がない言語はC#
意思を感じる言語はObjC
かっこいい言語はElixer
雑な言語はGo
愛された言語はJava
幸運な言語はRuby
迷走してる言語はPHP
醜い言語はJS
美しい言語はScala
簡単な言語はpython
難解な言語はHaskel
柔軟な言語はC++
魅力がない言語はC#
意思を感じる言語はObjC
かっこいい言語はElixer
雑な言語はGo
愛された言語はJava
幸運な言語はRuby
迷走してる言語はPHP
893デフォルトの名無しさん
2017/05/30(火) 22:22:05.08ID:tbholWW0894デフォルトの名無しさん
2017/05/30(火) 22:23:35.43ID:R+mglHOn 最も
空気な言語はRust
空気な言語はRust
895デフォルトの名無しさん
2017/05/30(火) 22:24:39.69ID:tbholWW0 >>884
Rust使いはステマ部隊かステマ部隊に騙された不幸な人だからな。前者は叩いても後者は叩けんな。
Rust使いはステマ部隊かステマ部隊に騙された不幸な人だからな。前者は叩いても後者は叩けんな。
896デフォルトの名無しさん
2017/05/30(火) 22:30:20.45ID:tbholWW0 >>880
Rust信者というかモジラとかいう世界中のソフトウェア会社の敵が狙ってるのがこれだろうなってことは感じてた。
クソ言語をステマ工作してソフトウェア会社に売り込んで、自分達の給料の確保に使う。クソモジラならやる。
Rust信者というかモジラとかいう世界中のソフトウェア会社の敵が狙ってるのがこれだろうなってことは感じてた。
クソ言語をステマ工作してソフトウェア会社に売り込んで、自分達の給料の確保に使う。クソモジラならやる。
897デフォルトの名無しさん
2017/05/30(火) 23:06:16.05ID:xHXzQ5Z2 >>892
ES6でかなりマシになったから(ガクブル
ES6でかなりマシになったから(ガクブル
900デフォルトの名無しさん
2017/05/30(火) 23:29:41.17ID:ixvaRPT7 全然必要充分ではない。現に二人誤解したし、俺も最初は誤解した
901あ
2017/05/30(火) 23:42:29.76ID:CncaY8jR >>900
誤解した人間が二人、誤解していた人間が一人、発言なく見えないどちらの状態かわからない人間が複数名。
これで有意差を出すなら、何人が母数なの?
自分の観測域で相手を評価するのは良くないと思うけど。
「自分と同じく誤解したが誤解が解けたか、誤解したままである」と周りを推定するのは、俺が相手は馬鹿ではないはずだと推定するのと同じでは無いのかと期待するのと同じレベルかと。
しかしまぁ、少なくとも議論スレならばもう少しマシな話がしたいし、不要な枕詞は使いたくないけど、まぁ通じないなら言い方をもうちょい気をつけるわ。
誤解した人間が二人、誤解していた人間が一人、発言なく見えないどちらの状態かわからない人間が複数名。
これで有意差を出すなら、何人が母数なの?
自分の観測域で相手を評価するのは良くないと思うけど。
「自分と同じく誤解したが誤解が解けたか、誤解したままである」と周りを推定するのは、俺が相手は馬鹿ではないはずだと推定するのと同じでは無いのかと期待するのと同じレベルかと。
しかしまぁ、少なくとも議論スレならばもう少しマシな話がしたいし、不要な枕詞は使いたくないけど、まぁ通じないなら言い方をもうちょい気をつけるわ。
902デフォルトの名無しさん
2017/05/30(火) 23:48:23.58ID:ixvaRPT7 そうしてくれ
903デフォルトの名無しさん
2017/05/30(火) 23:53:22.51ID:8eoxxCqM904デフォルトの名無しさん
2017/05/31(水) 05:55:34.28ID:4rMtQxoJ >>891
SmallTalkが一番ウンコだと思った決め手は何?
SmallTalkが一番ウンコだと思った決め手は何?
905デフォルトの名無しさん
2017/05/31(水) 06:14:00.96ID:wEozaoTa >>879
では、具体的にGHCが実行時型情報を必要とするケースを挙げてみろよ。
言っておくが、パラメトリック多相は全てコンパイル時に解決されるし、
型クラスによるアドホック多相も、あれは関数オーバーロードの形式化だからな。
関数オーバーロードはコンパイル時に解決されるぞ。
さあ、具体的に挙げてみろよ。
では、具体的にGHCが実行時型情報を必要とするケースを挙げてみろよ。
言っておくが、パラメトリック多相は全てコンパイル時に解決されるし、
型クラスによるアドホック多相も、あれは関数オーバーロードの形式化だからな。
関数オーバーロードはコンパイル時に解決されるぞ。
さあ、具体的に挙げてみろよ。
906デフォルトの名無しさん
2017/05/31(水) 07:43:00.95ID:uGw1TdWN 多分、エンジニアガイジの主張は
「rustはコンパイル時に多相を解決する能力がないので、その能力のあるHaskell と違ってデータ構造が作りにくいのは仕方がない」
みたいな感じと思われる。難解だけど
「rustはコンパイル時に多相を解決する能力がないので、その能力のあるHaskell と違ってデータ構造が作りにくいのは仕方がない」
みたいな感じと思われる。難解だけど
907デフォルトの名無しさん
2017/05/31(水) 08:28:06.80ID:uGw1TdWN 逆だ「実行時に多相を解決能力がない」だ
908あ
2017/05/31(水) 09:15:21.09ID:dc+IbjjD909デフォルトの名無しさん
2017/05/31(水) 09:37:51.17ID:uGw1TdWN おお合ってたか。正直自信なかったんだよね
>>906を主張を三行に纏めるお手本にしてくれてもいいぞw
>>906を主張を三行に纏めるお手本にしてくれてもいいぞw
910デフォルトの名無しさん
2017/05/31(水) 10:08:26.32ID:j+YATO3J さすがに読み解けんわ……
エンジニアガイジは本気で伝え方の訓練した方がいい。
ID:uGw1TdWNみたいな有能な読み解き手がいつもおるとは限らんわ。
エンジニアガイジは本気で伝え方の訓練した方がいい。
ID:uGw1TdWNみたいな有能な読み解き手がいつもおるとは限らんわ。
911デフォルトの名無しさん
2017/05/31(水) 10:21:53.06ID:j+YATO3J エンジニアガイジの主張がさっぱり伝わらない理由って何かと見返してみたが、
相手の反論を表面的にしか返さないせいだな。その質問がどういう疑問から出たかわかってない
「Haskellは実行時に型を解決する(からRustより型の表現力がある代わりにオーバーヘッドのトレードオフがある)」 って意見に
「Haskellもほとんどコンパイル時に解決できるわ」って反論が来たときに「ほとんどは全てじゃないだろ」なんてなにも伝わらん腐った返しするから伝わらないんだっての
「そのごく一部のおかげでそれが皆無のRustより型の表現力があるんだろ?」って、元の主張の()の部分を伝えればまだ理解してもらえるだろうに。
つまり疑問に対する反論が下手。
相手の反論を表面的にしか返さないせいだな。その質問がどういう疑問から出たかわかってない
「Haskellは実行時に型を解決する(からRustより型の表現力がある代わりにオーバーヘッドのトレードオフがある)」 って意見に
「Haskellもほとんどコンパイル時に解決できるわ」って反論が来たときに「ほとんどは全てじゃないだろ」なんてなにも伝わらん腐った返しするから伝わらないんだっての
「そのごく一部のおかげでそれが皆無のRustより型の表現力があるんだろ?」って、元の主張の()の部分を伝えればまだ理解してもらえるだろうに。
つまり疑問に対する反論が下手。
912デフォルトの名無しさん
2017/05/31(水) 10:31:33.38ID:j+YATO3J エンジニアガイジは相手が自分の主張に何か返してきたとき、「相手に何が伝わってなかったか」を考えるようにした方がいい。
それが出来てないから今はただ論破することしかできてない。
それが出来てないから今はただ論破することしかできてない。
913デフォルトの名無しさん
2017/05/31(水) 10:49:08.01ID:9eeNyIu8 ハイロンパしたいだけの奴に何言ってもね。。
914デフォルトの名無しさん
2017/05/31(水) 10:55:14.91ID:WMdxYZmu >>913
本当に「はい論破」したいだけなのか、かわいそうに論破スタイルしか議論の方法知らんのか俺には区別つかないからなぁ。
自分の意見の伝わらなさの自覚はありそうだから(現状人のせいにしてるが)後者にかけて長文投下した
本当に「はい論破」したいだけなのか、かわいそうに論破スタイルしか議論の方法知らんのか俺には区別つかないからなぁ。
自分の意見の伝わらなさの自覚はありそうだから(現状人のせいにしてるが)後者にかけて長文投下した
915デフォルトの名無しさん
2017/05/31(水) 10:58:50.65ID:xgELgHJk 彼はアスペルガー症候群でしょう
本人に非があるわけではないが、治ることもない
本人に非があるわけではないが、治ることもない
916デフォルトの名無しさん
2017/05/31(水) 11:03:36.26ID:WMdxYZmu >>915
確かに「相手の反論が何を疑問点として出てきたかを推察できずに表面的な論破をしたがる」っていうのは典型的なアレだが、
それだけで病気認定は俺にはできんな。健常者でも多少の訓練は必要な事柄だからな。
ただ可能なら診察は受けた方がいいかもわからんね。純粋な心配として。
確かに「相手の反論が何を疑問点として出てきたかを推察できずに表面的な論破をしたがる」っていうのは典型的なアレだが、
それだけで病気認定は俺にはできんな。健常者でも多少の訓練は必要な事柄だからな。
ただ可能なら診察は受けた方がいいかもわからんね。純粋な心配として。
917あ
2017/05/31(水) 11:08:50.13ID:dc+IbjjD918あ
2017/05/31(水) 11:10:55.99ID:dc+IbjjD919デフォルトの名無しさん
2017/05/31(水) 11:17:13.85ID:+xjBJZk4 ただのADHDってことか
気持ち良い納得感を得られる良スレだな
気持ち良い納得感を得られる良スレだな
920デフォルトの名無しさん
2017/05/31(水) 11:18:20.52ID:4nPr+Atc ADHD以前に躁鬱でしょ
921デフォルトの名無しさん
2017/05/31(水) 11:20:10.30ID:WMdxYZmu >>917
一から百の全部を要求するやつは蹴り倒していいとは自分も思うが、一から百のうち任意のどこかを要求する人の相手くらいできんと人と議論は進まんぞ。
相手の疑問から一から百のうちどこの説明をするべきか読み取ろうという話
反論がまともに来ないのはこれまでの積み重ねのせいじゃないのか?
別に論破スタイルじゃなくてもストレートに議論はできるだろ。
一から百の全部を要求するやつは蹴り倒していいとは自分も思うが、一から百のうち任意のどこかを要求する人の相手くらいできんと人と議論は進まんぞ。
相手の疑問から一から百のうちどこの説明をするべきか読み取ろうという話
反論がまともに来ないのはこれまでの積み重ねのせいじゃないのか?
別に論破スタイルじゃなくてもストレートに議論はできるだろ。
922デフォルトの名無しさん
2017/05/31(水) 11:21:41.06ID:WMdxYZmu >>918
通院済みか。余計なお世話だったようだ。
通院済みか。余計なお世話だったようだ。
923デフォルトの名無しさん
2017/05/31(水) 12:19:10.63ID:uGw1TdWN 彼にガイジとニックネーム付けた奴の先見性高いと思わない?
924デフォルトの名無しさん
2017/05/31(水) 15:24:55.30ID:jQ0rWyUQ >>908
><T>を持ったenumがOptionかcar(T)とcdr(<T,T>)である時くらいかな。
コンパイル時に解決できないHaskellの多相の例がそれか?
おまえHaskell書いたことあるか?
><T>を持ったenumがOptionかcar(T)とcdr(<T,T>)である時くらいかな。
コンパイル時に解決できないHaskellの多相の例がそれか?
おまえHaskell書いたことあるか?
925デフォルトの名無しさん
2017/05/31(水) 15:27:38.08ID:jQ0rWyUQ 多動のせいで議論ができないんじゃなくて、
シッタカで主張が支離滅裂になっているのを
多動のせいだと思ったおまえらが勝手に辻褄合わせをしてあげて
なんだか最初からそういう主張をしているかのように
本人もおまえらも思い込んでいるだけ。
シッタカで主張が支離滅裂になっているのを
多動のせいだと思ったおまえらが勝手に辻褄合わせをしてあげて
なんだか最初からそういう主張をしているかのように
本人もおまえらも思い込んでいるだけ。
926デフォルトの名無しさん
2017/05/31(水) 15:40:30.39ID:T8V/ATS8 >>925
別に多動のせいじゃないと俺は思うがなあ。多動ってそもそも議論できる出来ないに関係あったっけ?
単に意見の擦り合わせが絶望的に出来ないから知ったかと同じような議論破綻に突っ込む感じで、
ディベートを議論と勘違いしてるよくある感じのやつだと思ってる。
別に多動のせいじゃないと俺は思うがなあ。多動ってそもそも議論できる出来ないに関係あったっけ?
単に意見の擦り合わせが絶望的に出来ないから知ったかと同じような議論破綻に突っ込む感じで、
ディベートを議論と勘違いしてるよくある感じのやつだと思ってる。
927デフォルトの名無しさん
2017/05/31(水) 15:53:44.27ID:T8V/ATS8 俺はHaskellはトーシロ(死語)だから実行時に型チェックするパターンがあるかどうかなんて細かいこと分からんが
エンジニアガイジが「Haskellの型はほとんどコンパイル時解決だ」って言われたときに
やるべきだった反応は
「俺はこのパターンは実行時解決だと思ってたけど違ったか?」であって
「ほとんどは全部じゃねえよはい論破」じゃない。
こういうところが議論向いてないんだよな。
エンジニアガイジが「Haskellの型はほとんどコンパイル時解決だ」って言われたときに
やるべきだった反応は
「俺はこのパターンは実行時解決だと思ってたけど違ったか?」であって
「ほとんどは全部じゃねえよはい論破」じゃない。
こういうところが議論向いてないんだよな。
928デフォルトの名無しさん
2017/05/31(水) 17:26:35.18ID:gpiwU3f+ (TvT)
929デフォルトの名無しさん
2017/05/31(水) 18:22:27.22ID:EynlLbc5930あ
2017/05/31(水) 20:17:12.66ID:dc+IbjjD931デフォルトの名無しさん
2017/05/31(水) 20:44:50.62ID:uGw1TdWN 自分の意見が伝わりにくいことは現象として理解してる癖に、優しい人が理由を考えてあげると反論してしまい受け入れられない
誰かがいってた放置されてきた子って的確な表現だな
どんな優しい人でもこれは放置する
誰かがいってた放置されてきた子って的確な表現だな
どんな優しい人でもこれは放置する
932デフォルトの名無しさん
2017/05/31(水) 20:46:07.28ID:X6jg+zcK 言語についてテキトーな事を書いたらツッコミ入れるような奴が
このスレに集まってるだけだぞ
Haskell関係ない
このスレに集まってるだけだぞ
Haskell関係ない
933デフォルトの名無しさん
2017/05/31(水) 21:11:21.68ID:43iY7lC1 >>930
>相手の意見は汲み取れと言われながら、自分の主張は汲み取る必要が無いように余すことなく全て話せ
それをお互いにやるんだよ。
でもどちらも人間なんだから限界あるだろ?そこを擦り合わせるんだよ。
それが論破合戦じゃない議論なんだよ。
>相手の意見は汲み取れと言われながら、自分の主張は汲み取る必要が無いように余すことなく全て話せ
それをお互いにやるんだよ。
でもどちらも人間なんだから限界あるだろ?そこを擦り合わせるんだよ。
それが論破合戦じゃない議論なんだよ。
934デフォルトの名無しさん
2017/05/31(水) 21:29:09.19ID:43iY7lC1 もしかしてエンジニアガイジは自分の意見に反論や疑問が飛んできたとき、
「こいつは自分を潰しに来たから潰し返さないと」とか思ったりしてる?
「こいつは自分を潰しに来たから潰し返さないと」とか思ったりしてる?
935デフォルトの名無しさん
2017/05/31(水) 22:25:13.36ID:ZWDZ9M4A それできてる奴このスレにいるんですか
大抵潰し合ってないですかね
大抵潰し合ってないですかね
936デフォルトの名無しさん
2017/05/31(水) 22:39:52.28ID:EynlLbc5937デフォルトの名無しさん
2017/05/31(水) 22:43:08.23ID:EynlLbc5 というか、この人Haskell触ったことなくて叩いてるよね
食わず嫌いは勝手だからいいとしても、さも知っていて、かつ理性的かのように振る舞うのはどうなんだ?
素直に理由はないがキモいと言えばいいのに
食わず嫌いは勝手だからいいとしても、さも知っていて、かつ理性的かのように振る舞うのはどうなんだ?
素直に理由はないがキモいと言えばいいのに
938デフォルトの名無しさん
2017/05/31(水) 23:51:50.75ID:meGSNm+f >>851
大規模案件で採用されているゴミ屑PHPさんの悪口はやめろ
大規模案件で採用されているゴミ屑PHPさんの悪口はやめろ
939デフォルトの名無しさん
2017/06/01(木) 00:21:45.04ID:7sVuk+w7 まあルストはダメだってことはわかった。
940デフォルトの名無しさん
2017/06/01(木) 01:21:00.20ID:P48QZU+o >>930
>いや、完全に記憶だよりだからその辺違うなら違うんだと思う。
>optionじゃなくてnilだった気もする。
記憶違いのレベルでなく、それはどこからどう見てもHaskellの型とは似ても似つかない。
記法の問題でもない。
概念レベルから根本的にHaskellとは異なるものをHaskellの欠点と言い張っているだけ。
>いや、完全に記憶だよりだからその辺違うなら違うんだと思う。
>optionじゃなくてnilだった気もする。
記憶違いのレベルでなく、それはどこからどう見てもHaskellの型とは似ても似つかない。
記法の問題でもない。
概念レベルから根本的にHaskellとは異なるものをHaskellの欠点と言い張っているだけ。
941デフォルトの名無しさん
2017/06/01(木) 01:23:44.43ID:EiP2TW+2 carとcdr使う静的言語ってなんだ
942デフォルトの名無しさん
2017/06/01(木) 01:29:53.69ID:P48QZU+o 型推論付きのSchemeか?w
943デフォルトの名無しさん
2017/06/01(木) 02:27:16.60ID:8CaOxlMo まあHaskell触った事ある奴はOptionとMaybe
Nothingとnilは間違えないよな
nullって書いても他言語とは全く異なるし
Nothingとnilは間違えないよな
nullって書いても他言語とは全く異なるし
944デフォルトの名無しさん
2017/06/01(木) 02:30:44.70ID:8CaOxlMo あとBottomType的な意味でnilとか言ってもだめだぞ
ないからなw
ないからなw
945デフォルトの名無しさん
2017/06/01(木) 02:55:42.04ID:wUNQCT/b946デフォルトの名無しさん
2017/06/01(木) 03:12:08.82ID:z55iS7vV どこから見てもおかしいというだけの主張が論理的なのか
947デフォルトの名無しさん
2017/06/01(木) 06:01:07.41ID:8CaOxlMo >>946
何を言ってるかわからないほど破綻してるから、おかしいで合ってるし
そして論理そのものは前提で変わり、妥当性とは関係ないので、お前の主張もおかしい
論理的云々と言うやつほど論理を知らない証左
何を言ってるかわからないほど破綻してるから、おかしいで合ってるし
そして論理そのものは前提で変わり、妥当性とは関係ないので、お前の主張もおかしい
論理的云々と言うやつほど論理を知らない証左
948デフォルトの名無しさん
2017/06/01(木) 06:44:41.63ID:vNOzF29i 関数型の思想を一切使わずアプリケーションをバグ無く作れる者だけが、彼に石を投げなさい
949あ
2017/06/01(木) 07:44:01.52ID:xXOCh96c おお、皆に言われるとHaskellをもう一度学ばないといかん気はしてきたな。
割とありがたいし、せっかくだからちょっとやってみるわ。
>>933
あーなるほど。それはわからんでもないな。
ただ、指導教官に昔言われた「不明点は察するな、現実を話させろ」を実践してて、
言ってしまえばアスペ的思考をしてたから、ちょっと慣れるまでに時間かかるかも。
実際役にもたったしね。その発想。
割とありがたいし、せっかくだからちょっとやってみるわ。
>>933
あーなるほど。それはわからんでもないな。
ただ、指導教官に昔言われた「不明点は察するな、現実を話させろ」を実践してて、
言ってしまえばアスペ的思考をしてたから、ちょっと慣れるまでに時間かかるかも。
実際役にもたったしね。その発想。
950デフォルトの名無しさん
2017/06/01(木) 08:26:56.92ID:fZ4Ynj9f みんなが言ってくれてんのはね
Haskellbヌうのこうのとb「うよりもまず
お前は重度の知ったか自己弁護野郎であり
さすがに付き合いきれないよってこと
たぶん、そういうとこは伝わってないんやろな
Haskellbヌうのこうのとb「うよりもまず
お前は重度の知ったか自己弁護野郎であり
さすがに付き合いきれないよってこと
たぶん、そういうとこは伝わってないんやろな
951デフォルトの名無しさん
2017/06/01(木) 08:29:11.71ID:fZ4Ynj9f 文字化け修正:
Haskellどうのこうのというよりもまず
Haskellどうのこうのというよりもまず
952デフォルトの名無しさん
2017/06/01(木) 10:36:58.41ID:2zjIoc8f >>949
>不明点は察するな、現実を話させろ
大学の研究室や学会では正しいが、2chっつーかネット越しの文字でやるには向いてない手法だな
手法は場によって選ぼうな?
あと自分が間違ってるかもしれないって懸念は常に持っとこうな。
>不明点は察するな、現実を話させろ
大学の研究室や学会では正しいが、2chっつーかネット越しの文字でやるには向いてない手法だな
手法は場によって選ぼうな?
あと自分が間違ってるかもしれないって懸念は常に持っとこうな。
953デフォルトの名無しさん
2017/06/01(木) 10:39:52.18ID:2zjIoc8f954デフォルトの名無しさん
2017/06/01(木) 11:08:27.45ID:Bx3/ibOs 治療法を察するな、症状を話させろ
Haskellを知ったかぶるのは大したことないが、医学を知ったかぶると命に関わる
Haskellを知ったかぶるのは大したことないが、医学を知ったかぶると命に関わる
955デフォルトの名無しさん
2017/06/01(木) 11:26:50.36ID:UQSg1EaA 誤解の生じない自然言語が望まれる
956デフォルトの名無しさん
2017/06/01(木) 11:27:26.76ID:HdFpeWhQ ところで質問なんですが
Haskellの型クラスは裏でメソッド辞書を渡して実行時ディスパッチをするって読んだんですがこの理解で合ってます?
https://people.csail.mit.edu/dnj/teaching/6898/papers/wadler88.pdf
それともコールする関数の決定も何らかの最適化機構でコンパイル時にすませてしまうのでしょうか
Haskellの型クラスは裏でメソッド辞書を渡して実行時ディスパッチをするって読んだんですがこの理解で合ってます?
https://people.csail.mit.edu/dnj/teaching/6898/papers/wadler88.pdf
それともコールする関数の決定も何らかの最適化機構でコンパイル時にすませてしまうのでしょうか
957デフォルトの名無しさん
2017/06/01(木) 11:48:38.71ID:Bx3/ibOs958デフォルトの名無しさん
2017/06/01(木) 12:35:37.68ID:bubu+W4z959デフォルトの名無しさん
2017/06/01(木) 12:56:45.70ID:sszEh+oH >>958
なるほど
If the type of a function contains a class, then this
is translated into a dictionary that is passed at runtime.
The translation simply assures that the appropriate dictionaries
passed at run-time; ...
One drawback of our translation method is that it introduces
new parameters to be passed at runtime, ...
等々しつこく書いてあったのでてっきり今もランタイムかと。
その後コンパイル時に完結できるようになっていたんですね。ありがとうございます。
なるほど
If the type of a function contains a class, then this
is translated into a dictionary that is passed at runtime.
The translation simply assures that the appropriate dictionaries
passed at run-time; ...
One drawback of our translation method is that it introduces
new parameters to be passed at runtime, ...
等々しつこく書いてあったのでてっきり今もランタイムかと。
その後コンパイル時に完結できるようになっていたんですね。ありがとうございます。
960デフォルトの名無しさん
2017/06/01(木) 14:21:39.82ID:JVCP5RQG >>959
念のため言うが、飽くまで一般の話だよ
上での言及のように例外なく、必ずcompile timeになるかどうかはわからない
普通に考えれば、呼出側だけでなく、モジュールに何か細工が必要だろうし
念のため言うが、飽くまで一般の話だよ
上での言及のように例外なく、必ずcompile timeになるかどうかはわからない
普通に考えれば、呼出側だけでなく、モジュールに何か細工が必要だろうし
961デフォルトの名無しさん
2017/06/01(木) 14:30:58.85ID:Ty12p446962デフォルトの名無しさん
2017/06/01(木) 19:59:34.59ID:vNOzF29i 他者と誤解なく分かりあえるようになるための共通言語を開発しよう
もちろん、人と人だけでなく、人とコンピュータも分かりあえる共通言語だ
それこそが次世代言語だ
もちろん、人と人だけでなく、人とコンピュータも分かりあえる共通言語だ
それこそが次世代言語だ
963あ
2017/06/01(木) 20:05:18.45ID:23mplHvr964デフォルトの名無しさん
2017/06/01(木) 20:18:08.98ID:Dnfnpswj >>963
やった結果がお前さんの現状なんだよな。
やった結果がお前さんの現状なんだよな。
965デフォルトの名無しさん
2017/06/01(木) 20:42:26.57ID:sszEh+oH >>961
Haskell 2010 でもまだランタイムに依存しているみたいだけど違う?
https://stackoverflow.com/questions/28169119/is-the-dispatch-of-a-haskell-typeclass-dynamic#comment44713002_28170590
Haskell 2010 でもまだランタイムに依存しているみたいだけど違う?
https://stackoverflow.com/questions/28169119/is-the-dispatch-of-a-haskell-typeclass-dynamic#comment44713002_28170590
966デフォルトの名無しさん
2017/06/01(木) 22:45:39.05ID:14pfKSNM あらゆるモダン言語で見るようになったmapとかflatmapっていうのはどこから生まれたものなの?
967デフォルトの名無しさん
2017/06/01(木) 22:50:28.99ID:W7qZGWEB LISPじゃね
968デフォルトの名無しさん
2017/06/02(金) 00:08:33.62ID:lDZ3L3oh >>965
ちょっと話が見えないんだが、もしかして回答してほしいのは
>https://people.csail.mit.edu/dnj/teaching/6898/papers/wadler88.pdf
に限定した話ではないのか?
保証については、再帰がない場合の話で、その参照先は>>959とは状況違う
その場合>>958 + >>960という回答になる
ちょっと話が見えないんだが、もしかして回答してほしいのは
>https://people.csail.mit.edu/dnj/teaching/6898/papers/wadler88.pdf
に限定した話ではないのか?
保証については、再帰がない場合の話で、その参照先は>>959とは状況違う
その場合>>958 + >>960という回答になる
969デフォルトの名無しさん
2017/06/02(金) 02:50:18.61ID:bQ6pitWP 再帰があっても深さを制限すればspecializeできるんじゃね
制限を超えたらエラーにするか、あるいはspecializeをやめたら無限に再帰できるか?
制限を超えたらエラーにするか、あるいはspecializeをやめたら無限に再帰できるか?
970デフォルトの名無しさん
2017/06/02(金) 07:14:02.17ID:vc1fSB5M971デフォルトの名無しさん
2017/06/03(土) 09:45:16.91ID:1Cu2c1ce これ互換性にあまり影響のない実装の変更だよね
それより互換性が完全になくなった変更を批判する方が建設的
それより互換性が完全になくなった変更を批判する方が建設的
972デフォルトの名無しさん
2017/06/12(月) 07:29:42.96ID:nTXT2jNo GOって手続き型言語?
可読性が高いって言われてる理由が知りたい
インスコしようかな
可読性が高いって言われてる理由が知りたい
インスコしようかな
973デフォルトの名無しさん
2017/06/12(月) 08:00:12.68ID:Fk2rI9BR とりあえずインスコしてみたら
何系の言語かは自分で判断すべし
何系の言語かは自分で判断すべし
974デフォルトの名無しさん
2017/06/12(月) 09:42:46.07ID:p/7lEol5 手続き型だよ
文法知らなくてもほぼほぼ読めるぐらい平易だから可読性高いって言われてるのでは
文法知らなくてもほぼほぼ読めるぐらい平易だから可読性高いって言われてるのでは
975デフォルトの名無しさん
2017/06/12(月) 09:54:41.37ID:cGkmUezk 実質は新しいCOBOLなのにGoogleが推してるせいで意識高そうなイメージがあり、
Webの文系エンジニアにバカウケ
Webの文系エンジニアにバカウケ
976デフォルトの名無しさん
2017/06/12(月) 11:13:43.87ID:GJqadCbs >>975
さすがにCOBOLに失礼ちゃう?
さすがにCOBOLに失礼ちゃう?
977デフォルトの名無しさん
2017/06/12(月) 12:21:21.41ID:iBQdyh23 Goが流行ってしまうと今まで必死に体得してきたプログラミングの概念がほとんど無に還すから
プログラミング熟練度と人気が反比例してると聞いたな
プログラミング熟練度と人気が反比例してると聞いたな
978デフォルトの名無しさん
2017/06/12(月) 12:42:10.81ID:m2eFuXIy 意識低い系言語
979デフォルトの名無しさん
2017/06/12(月) 12:49:20.16ID:2H2uEc+e コスパが高い言語
980デフォルトの名無しさん
2017/06/12(月) 13:55:38.04ID:GJqadCbs さすがに今日日昔のJavaのobject地獄を再び見ることにもなれば嫌いにもなるわな。
それ以外は割とよくまとまってる。
それ以外は割とよくまとまってる。
981デフォルトの名無しさん
2017/06/12(月) 14:00:31.39ID:GJqadCbs Goにジェネリクスが入れば割と理想の言語感はある
ノリとしては極限まで肉をそぎ落としたJavaに近いかな。
ノリとしては極限まで肉をそぎ落としたJavaに近いかな。
982デフォルトの名無しさん
2017/06/12(月) 17:23:51.63ID:uTHinYqc >>981
手続き型言語でオブジェクト指向止めるとなるとグローバル変数が問題になる。
変数宣言時に、その変数へ読み書き出来る関数とかをホワイトリスト的なものを宣言する事で制限したりとか、そう言う仕組みが要るんじゃないかな。
手続き型言語でオブジェクト指向止めるとなるとグローバル変数が問題になる。
変数宣言時に、その変数へ読み書き出来る関数とかをホワイトリスト的なものを宣言する事で制限したりとか、そう言う仕組みが要るんじゃないかな。
983デフォルトの名無しさん
2017/06/12(月) 18:19:16.46ID:m2AtO/U0 Cにガベコレと並行処理追加した正統後継言語
C++がキメラ化してるしある程度人気出るのも納得できる
C++がキメラ化してるしある程度人気出るのも納得できる
984あ
2017/06/12(月) 19:20:57.74ID:00nbEvZg >>982
ローカル変数こそが、そもそもこいつが何者かわからん存在であるって言語もあるしな。
「僕この名前で変数使いたいから、いったん退けて。ブロック抜けたら要らないから捨てて」
「制御命令?IFとスタック積まないラベルジャンプとスタック積むサブルーチン呼び出しがあれば、それ以外要らないでしょ。仕方ないからブロック構文だけは作ってやったぞ」
という現代の言語から考えたら意味のわからん命令があるM言語みたいな。
ライセンス高いし大手以外ノウハウないし、最近オブジェクト指向しようと歪になってるらしいから、それこそ化石だろうけど。
今どこ使ってるんだろ。
ローカル変数こそが、そもそもこいつが何者かわからん存在であるって言語もあるしな。
「僕この名前で変数使いたいから、いったん退けて。ブロック抜けたら要らないから捨てて」
「制御命令?IFとスタック積まないラベルジャンプとスタック積むサブルーチン呼び出しがあれば、それ以外要らないでしょ。仕方ないからブロック構文だけは作ってやったぞ」
という現代の言語から考えたら意味のわからん命令があるM言語みたいな。
ライセンス高いし大手以外ノウハウないし、最近オブジェクト指向しようと歪になってるらしいから、それこそ化石だろうけど。
今どこ使ってるんだろ。
985デフォルトの名無しさん
2017/06/12(月) 19:33:33.80ID:5L3xq22d %%%MC+7,8%%%
}
000-"M","LES","TUV=0.13325&/0\7&%&",
001-"23","1","0","2","7.14",[\b%7/1444*%812%2.3%7&6111\end\\]{%3%12%\br
}
000-"M","LES","TUV=0.13325&/0\7&%&",
001-"23","1","0","2","7.14",[\b%7/1444*%812%2.3%7&6111\end\\]{%3%12%\br
986デフォルトの名無しさん
2017/06/12(月) 21:06:32.45ID:P1PnDOe5 >>982
Goだとその辺はパッケージである程度制御はできるな
あとはクソカジュアルにmutexが使えたりcontextでセッションローカル変数簡単に引き回せたり、
Goroutineでの並列を売りにしてるのは伊達じゃねえやって感じ
Goだとその辺はパッケージである程度制御はできるな
あとはクソカジュアルにmutexが使えたりcontextでセッションローカル変数簡単に引き回せたり、
Goroutineでの並列を売りにしてるのは伊達じゃねえやって感じ
987デフォルトの名無しさん
2017/06/12(月) 23:39:00.43ID:DUADhXSj >>977
まあそんへんの糞なプライドを捨てればいい言語だと思うよ。
まあそんへんの糞なプライドを捨てればいい言語だと思うよ。
988デフォルトの名無しさん
2017/06/13(火) 00:16:36.48ID:1CBB/Bqq990デフォルトの名無しさん
2017/06/13(火) 01:29:19.80ID:mcyfs2jY 次スレにはTypeScriptかHaskell入れる?
991デフォルトの名無しさん
2017/06/13(火) 04:24:57.99ID:NKNUODaU Scala外してTypeScript
長さ制限に引っかかったらこのままでいい
長さ制限に引っかかったらこのままでいい
992デフォルトの名無しさん
2017/06/13(火) 06:59:24.68ID:J8kkShcA コトィンに負けてしまったスァァ・・・
993デフォルトの名無しさん
2017/06/13(火) 07:08:11.18ID:KW2Tb1Ft Rustももういいだろ
OUT: Scala, Rust
IN: TypeScript, Swift に一票
OUT: Scala, Rust
IN: TypeScript, Swift に一票
994あ
2017/06/13(火) 07:09:42.20ID:MZxut8VL995あ
2017/06/13(火) 07:11:05.41ID:MZxut8VL996デフォルトの名無しさん
2017/06/13(火) 07:21:44.82ID:Z6lFUzsL TypeScriptは今時の流行りの言語の一つのリファレンスとしては悪くないと思うが、
まあC#系はKotlinが一つあれば十分かな
まあC#系はKotlinが一つあれば十分かな
997デフォルトの名無しさん
2017/06/13(火) 07:32:00.56ID:YUMHQx2e ナウでヤングな型システムとかムーブセマンティクスとかモナドが次世代なんじゃないの?
ScalaとRustはずしてSwiftいれるとか正気か?
お手軽言語スレでも立ててそっちでやれと
ScalaとRustはずしてSwiftいれるとか正気か?
お手軽言語スレでも立ててそっちでやれと
998デフォルトの名無しさん
2017/06/13(火) 07:40:02.81ID:Z6lFUzsL お手軽言語が嫌いならまずはGoを敵視しような
999デフォルトの名無しさん
2017/06/13(火) 08:43:16.91ID:L3B1EJOR >>990
Haskellアンチは一人の発達障害だけであることが判明したので入れましょう
Haskellアンチは一人の発達障害だけであることが判明したので入れましょう
1000デフォルトの名無しさん
2017/06/13(火) 08:54:31.06ID:O1HnBMDk 次世代言語議論スレ[Go Rust Scala Haskell]第5世代 [無断転載禁止]©2ch.net
http://mevius.2ch.net/test/read.cgi/tech/1497311647/
http://mevius.2ch.net/test/read.cgi/tech/1497311647/
10011001
Over 1000Thread このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 54日 4時間 11分 5秒
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 54日 4時間 11分 5秒
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を超えています。これ以上書き込みはできません。
ニュース
- トランプ米大統領声明 「中国はパニックに陥った」 [お断り★]
- 【宗教】日本、仏教国で仏教離れ最多 信者の4割、現在「無宗教」 米研究所調査 ★3 [樽悶★]
- 米商務長官 トランプ関税「撤回の可能性ない。 世界はアメリカから搾取やめるべき。関税率是正なら交渉の余地あり」 [Hitzeschleier★]
- 長野智子 フジテレビ報告書で〝誤報〟判明「文春は謝罪するべき」…女性アナF氏を「3悪人」扱い ★2 [ぐれ★]
- 中居正広の弁護士・犬塚氏、直撃にダッシュで逃走…被害女性を「不快」にさせた“フジと利益相反”の受任 [Ailuropoda melanoleuca★]
- 注文した料理が来ないまま45分経過 → 食べてないのに「席を空けて」と店員に退店を促されて激怒、トラブルになった男性 [パンナ・コッタ★]
- 【訃報】日経平均先物、ガチで下落が止まらないマイナス1400 [943688309]
- トランプ「利下げしろ😡」→FRB議長「トランプ関税でインフレの可能性大 だから利下げしない」 [175344491]
- 【火だるま】「NISA損切り」すべきか否か、ガチで意見が割れる [458340425]
- 岸田「貯蓄から投資へ新NISA!子育て支援で異次元の少子化対策!マイナンバー活用でデジタル田園都市国家!」 こいつの評価 [452836546]
- 生きててたのしくなかったなぁ
- じゃあ関税以外でアメリカの製造業を立て直す方法があるなら言ってみろよ [512028397]