1 名前:デフォルトの名無しさん [2016/11/18(金) 10:59:09.20 ID:SgtZza8z.net] いざ、語ろうぞ。
2 名前:デフォルトの名無しさん [2016/11/18(金) 11:58:44.66 ID:dYh5XD+c.net] Go
3 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 12:47:48.81 ID:OlRP+CLk.net] Haskellとかいう前世代の言語が混ざってるのはギャグかな?
4 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 19:21:13.92 ID:eISdsYkv.net] native使えるrust, crystal, nim辺りしか注目してない そういえば廃れてはいないけどvalaはめっきり聞かなくなったな
5 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 01:56:44.45 ID:Ze2KC2Nd.net] ブラウザで動くのはJavaScriptでありつづけるだろう
6 名前:デフォルトの名無しさん [2016/11/19(土) 02:47:14.11 ID:/H+O8GBj.net] >>3 おまえが使ってる数学も、10世紀前のレベルなんだが。
7 名前:デフォルトの名無しさん [2016/11/19(土) 02:52:48.03 ID:38qtnmNR.net] そうじゃなくてHaskellはすでに現役ってことだろ ということで代わりに永遠の次世代言語F#を入れましょう
8 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 04:23:53.49 ID:4/BQsFya.net] GoとScalaは人気が上向き、HaskellとErlangは低迷、Rustはまだこれから https://www.google.co.jp/trends/explore?cat=31&q=%2Fm%2F09gbxjr,%2Fm%2F0dsbpg6,%2Fm%2F03j_q,%2Fm%2F091hdj,%2Fm%2F02mm3
9 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 11:41:33.31 ID:CUeEegkW.net] 言語における世代の違いとは?
10 名前:デフォルトの名無しさん [2016/11/19(土) 12:47:28.61 ID:T/wP/yiF.net] 第1世代 FORTR
11 名前:AN COBOL LISP FORTH 第2世代 C PASCAL BASIC Delphi SmallTalk 第3世代 C/C++ Java Perl PHP 第4世代(現在) 上記 + C# JavaScript Ruby Python Swift 的なイメージ [] [ここ壊れてます]
12 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 14:07:21.31 ID:xFJxjIup.net] >>10 JavaScriptはJavaと同世代だしょ
13 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 19:00:53.02 ID:z0fjHGJX.net] Smalltalk の t は小文字な
14 名前:デフォルトの名無しさん [2016/11/20(日) 00:39:41.16 ID:zuVL9nD+.net] 結局どれがいいの?
15 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 01:21:38.56 ID:PZEuAd0p.net] どれも雇われで使うほど普及してなくて、個人事業や趣味で使うものだから、どれがいいのかは自分で選ぶしかないだろう。 今後求人が増えそうな言語、という意味なら… どれだろう?
16 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 06:36:24.49 ID:R76BQYGo.net] 今後の伸びならScalaでしょ Javaから悪い所を取り除いたような言語だし
17 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 07:07:52.27 ID:mRRC2G0e.net] 今のところScalaの求人が多そう
18 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 09:31:46.05 ID:zhAQ+Nfm.net] altJavaでは、静的言語からの順番で、Scala, Kotlin, Groovy。 WEB+DB vol.94 の特集が、Kotlin, Electron altJSでは、Haxe Haxe(ヘックス)はOSSで、JSに型チェックを付けたような言語で(altJS)、 JS(ES5), Flash, PHP, C++, Java, C#, Python に書き出せる。 Windows8.1対応。IDEは、FlashDevelop このサイトで、ブラウザでプログラミングして、実行できる Try Haxe ! try.haxe.org/ Haxeプログラミング入門、尾野政樹、2015
19 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 09:40:09.50 ID:hq0fgw+5.net] Scalaはない
20 名前:デフォルトの名無しさん [2016/11/20(日) 18:10:11.59 ID:zuVL9nD+.net] へックスって読むのか、かってに「ハッセ」だと思ってた。
21 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 21:57:40.72 ID:zhAQ+Nfm.net] よく考えたら、Haxe → Java → Kotlin など、Javaに変換すれば、そこから様々な言語に変換できそうw
22 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 10:45:59.65 ID:Z9LRReIl.net] >>10 DelphiのところにはPrologが入るべき。 BASICは第一世代ではないか。 それからJavascriptとPythonは第三世代。
23 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 13:49:39.00 ID:CfCqFwF8.net] まだまだ伸び続けているという意味ではPythonは第4世代で問題ない。 Javascriptも需要が高まり続けているから第4世代でOK。 Rubyは残念ながら過去の言語となりつつあるから第3世代に置いても良さそう。
24 名前:デフォルトの名無しさん [2016/11/21(月) 21:46:00.46 ID:q1m1IXb3.net] 静的枠: ・Go:ポストJavaの進化形。GC ・Rust:関数型枠。並行処理得意 ・Scala:関数型兼Java互換のオブジェクト指向、記述の省力化 ・Haskell:ガチの関数型。数学枠 ・Haxe:関数型。他の言語に変換できる互換性が強み。 スクリプト枠: ・Erlang:並行処理得意。 ・Elixir:Erlangの拡張版。Webが得意 結構住み分け的にバランスとれてんのな。 スクリプト枠: ・Erlang:
25 名前:デフォルトの名無しさん mailto:sage [2016/11/23(水) 10:47:49.98 ID:DH1nBS+W.net] >>22 今更、Javascriptが伸び続けているなんていえないし。ウェブの時代は終わった。
26 名前:デフォルトの名無しさん [2016/11/24(木) 00:21:27.40 ID:0bzOqP+y.net] Webの時代って典型的なサーブレットとかLAMPモデルの事 言ってる? ApacheじゃなくてNGINX MySQLだけじゃなくてPostgleやNoSQLやRedisみたいな多様なDBがある。 IoTではHTTPが組み込みにまで拡張されるし、 人工知能だってWebと無関係ではない。 JavaScriptの時代は終わり得るかもしれないけどWebの時代が終わるわけ じゃないよ。
27 名前:デフォルトの名無しさん [2016/11/24(木) 02:12:37.56 ID:wmLpPjU0.net] haxeはよっぽどのキラーアプリでも出ないと開発リソース的にないと思う。 けっこう古くからあるけど未だに広まる気配は無いしょ
28 名前:デフォルトの名無しさん mailto:sage [2016/11/24(木) 06:33:27.18 ID:g1cJ7kXy.net] Haxeは大規模開発向きだから、いずれ、TypeScriptを抜くかも? Haxeには、ブロックスコープ { } がある。 this も正常に、インスタンスを指す 同一・異なる言語間で、ソースコードを文字列化して送っても、型が消えない。 全く同じ処理を、複数言語で作らなくてよい 引数付き Enum Scalaのようなパターンマッチありの、switch 引数付きEnumは、強力。 Input がEnumとすると、引数の型を変えられるから、 別々のインターフェースを実装しなくていい switch(input){ case Input.Key(keyCode) : trace(keyCode); case Input.Click(x, y) : trace([x, y]); }
29 名前:デフォルトの名無しさん mailto:sage [2016/11/24(木) 11:41:20.13 ID:hdvNkC/E.net] 2年前ならいい勝負をしていたaltJS競争だけどもうHaxeに勝ち目はない というかTypeScriptの隆盛での勝敗がついた https://www.google.co.jp/trends/explore?cat=31&q=%2Fm%2F0dbjtf,%2Fm%2F0n50hxv,%2Fm%2F0hjc5m0,%2Fm%2F0h52xr1
30 名前:デフォルトの名無しさん [2016/11/24(木) 13:03:28.21 ID:0bzOqP+y.net] >>2 何で敬語なわけ?何でこのスレにレスした訳? 丁寧な口調で侮辱されるのが一番腹立つ。
31 名前:デフォルトの名無しさん mailto:sage [2016/11/25(金) 11:42:23.81 ID:Ds5ZOy/e.net] 敬語を探してみたがどこにもなかった
32 名前:デフォルトの名無しさん [2016/11/26(土) 06:16:37.93 ID:QJATEtRs.net] Go は敬語だった...?
33 名前:デフォルトの名無しさん [2016/11/26(土) 08:10:45.17 ID:7Iw1TmHS.net] お逝きなさい
34 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 15:51:56.37 ID:GTqt9DX8.net] hexaって10年前にOSS AS3コンパイラとして流行ったヤツかいなと思ったら本当にソレだった まだ生きてたんだな、この言語
35 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 16:50:22.10 ID:fvd5Kdkk.net] JavaScriptならともかくActionScriptはそのまま書けばよかったと思う
36 名前:デフォルトの名無しさん [2016/11/27(日) 03:04:35.30 ID:LylNNra/.net] 情強はErlangを使う
37 名前:デフォルトの名無しさん mailto:sage [2016/11/27(日) 05:47:13.16 ID:ZtHaodfN.net] Erlang/Elixir はオブジェクト指向できないのがつらみ
38 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 04:59:37.27 ID:ZvcFWjYe.net] Flash APIと同等の、OpenFLの開発言語は、Haxeで、 ワンソースからクロスプラットフォームに出力できる 各プラットフォームの出力機構を使って、ネイティブコードになるから、 Javaで作ったAndroidアプリよりも、速く動く
39 名前:デフォルトの名無しさん [2016/11/28(月) 06:47:47.10 ID:padn7mYh.net] 速いだけでその言語学ぼうな
40 名前:んて思わないから。 大体近年のパフォーマンスのボトルネックは計算時間じゃなくて データがただ単に膨大なだけの IO待ちがボトルネックな訳で、 つまりJavaだろうがCだろうがPythonだのの違いなんて体感レベル には関係ないよ。 その点マルチスレッドや複数のディスクにIO を物理的に分散できる Erlangは本当に速い。 [] [ここ壊れてます]
41 名前:デフォルトの名無しさん mailto:sage [2016/11/28(月) 14:49:55.71 ID:idbpwLs0.net] 一番大事なのは低賃金でプログラマを雇えるかとうかですぜ兄貴
42 名前:デフォルトの名無しさん [2016/11/28(月) 21:56:07.22 ID:GHhkk0F/.net] >>38 でも型推論無いんでしょう?
43 名前:デフォルトの名無しさん [2016/11/28(月) 22:49:54.86 ID:hdcKwTEq.net] 100のスレッドにIOを分散すると100倍の速度になるのでしょうか。 IOがボトルネックだと自分で言ってるのにw
44 名前:デフォルトの名無しさん [2016/11/29(火) 00:01:49.78 ID:W5pjxeIa.net] そうだよ、CPUもディスクもバスも複数あるからね。
45 名前:デフォルトの名無しさん mailto:sage [2016/11/29(火) 01:33:11.25 ID:T2gsp5HS.net] Erlang開発効率が高いけど性能を求めるならErlangは間違い
46 名前:デフォルトの名無しさん [2016/11/30(水) 01:44:20.70 ID:ZKyAnMFn.net] erlangのボトルネックはerlang自体
47 名前:デフォルトの名無しさん [2016/11/30(水) 03:47:07.04 ID:tfyAgmME.net] erolang
48 名前:デフォルトの名無しさん mailto:sage [2016/11/30(水) 10:07:42.12 ID:QrNzcyxl.net] notChild = condom(chinko) -> manko
49 名前:デフォルトの名無しさん mailto:sage [2016/11/30(水) 18:26:34.04 ID:8wpifVGr.net] >>40 Prologには型概念がないけれど、Erlangに型はありますね。型推論は知らないけれど。
50 名前:デフォルトの名無しさん [2016/11/30(水) 19:47:35.26 ID:OW21XJk/.net] >>47 >>40 には型推論ってハッキリ書いてるけど
51 名前:デフォルトの名無しさん mailto:sage [2016/11/30(水) 23:01:01.11 ID:QrNzcyxl.net] >>48 でも型推論無いんでしょう?
52 名前:デフォルトの名無しさん [2016/12/01(木) 06:40:02.77 ID:6Ua6SiVz.net] ところでclojureはいかんの?
53 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 07:01:04.97 ID:q2hojMc7.net] >>49 Prologの推論機能は捨ててしまいました。
54 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 10:18:36.28 ID:isdetJjt.net] 推論自体が実行時の動作のPrologとコンパイル時の型推論とは別のものじゃ
55 名前:デフォルトの名無しさん [2016/12/01(木) 16:29:33.44 ID:mgNdczCi.net] 考えてみれば既存のメジャー言語の株を奪うのって容易じゃないよな コンパイラ、クロスプラットフォームシステム、IDE、パッケインスト管理、 既存ライブラリ、環境自動化システム、Webフレームワーク、DBフレーム ワーク、非同期処理用ライブラリ、単純に構文覚えるのがめんどくさい 既存言語が築き上げた障壁がぶ厚すぎるぜ…
56 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 16:47:42.43 ID:OWujHEiH.net] 前方面で戦う必要はない 一点突破してよいサイクルが出来たら充実していけばいい
57 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 18:15:59.70 ID:aVqOQbdr.net] 普及を考えるのなら、どんな問題を解決するのかの方がよっぽど大事。 PHPとかHSPとかですら流行ったからな。
58 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 19:21:45.02 ID:5qk2sqQ8.net] >>52 これなんかは? qiita.com/h_sakurai/items/717dad7d25bac18d40ab
59 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 21:30:19.62 ID:XF2FB4o/.net] >>55 悪貨は良貨を駆逐するといってだな
60 名前:デフォルトの名無しさん [2016/12/01(木) 23:06:04.88 ID:mgNdczCi.net] というかJavaScriptに対抗するプロトタイプ指向の言語ってないの? ErlangとかElixirってどんな感じなん、HTML埋
61 名前:゚込みとかjQueryみたいな ajax的な機能とか持ってるん? [] [ここ壊れてます]
62 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 23:23:42.82 ID:XF2FB4o/.net] プロトタイプ指向とかただの糞やん ES5以降じゃ見捨てられたし
63 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 01:07:32.69 ID:pKSfy0xc.net] プログラミングElixir、2016 Ruby界隈から、名著が出た。 著者は「プログラミングRuby」のDave Thomas 関数型言語Elixirは、Ruby + Rails + ErlangVM で、並行処理が得意
64 名前:デフォルトの名無しさん [2016/12/02(金) 21:54:13.04 ID:/62N2Ze8.net] >>59 その糞がいまかなり人気なんですが…
65 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 22:25:51.30 ID:m+3RpHqs.net] Kotlinをスレタイからハブるなんてとんでもないだろ
66 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 22:46:48.09 ID:8JZv7iKy.net] Dart, Boo, Cobra, Genie, Groovy, Nemerl, Vala …… (´;ω;`)
67 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 23:12:33.09 ID:+/BurYJT.net] >>61 どこ情報? ワイのなかで今人気なのは関数型(Scala)やで
68 名前:デフォルトの名無しさん [2016/12/02(金) 23:17:19.52 ID:gT4xVOuK.net] 純粋関数型以外は関数型とは認めません
69 名前:デフォルトの名無しさん mailto:sage [2016/12/02(金) 23:36:23.76 ID:+/BurYJT.net] >>65 おはスケル ちょっと文法が難しすぎんのよ〜
70 名前:デフォルトの名無しさん [2016/12/03(土) 08:40:53.91 ID:KTQmXTV9.net] >>1 ちょっと待って!? 岡村さんが入ってないとかこれマジ?
71 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 19:06:36.75 ID:hHkjqHSd.net] haskell は文法簡潔だろ
72 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 20:03:28.66 ID:uGz1+3L0.net] >>68 あんな実行順序のよくわからんもの使えるか
73 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 20:30:41.97 ID:Y9I90W1E.net] ハスケル実サービスで使ってるとこなんて皆無だろ Javaの資産使えるScalaがやN1だと思うわ
74 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 20:38:44.60 ID:Y9I90W1E.net] Javaの資産使いつつ関数型できるScalaがやN1だと思うわ
75 名前:デフォルトの名無しさん [2016/12/03(土) 22:52:14.69 ID:MCWCirTG.net] Clojureがナンバーワン!!
76 名前:デフォルトの名無しさん [2016/12/04(日) 03:21:07.46 ID:QXL9G2QO.net] ゲハ臭がしてきたな
77 名前:デフォルトの名無しさん [2016/12/04(日) 10:43:14.55 ID:ijuOYWzP.net] >>70 まあ個人が趣味でやるようなもんじゃないかもな。 金融サービスとか文献・ステートメント解析ではよく使うが。
78 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 10:48:44.88 ID:q5ZWXjRo.net] 厳格な定義を好む開発者が多い分野では今後Haskellが伸びると思う。
79 名前:デフォルトの名無しさん [2016/12/04(日) 12:26:15.93 ID:dWip5QS2.net] 日本トップのHaskellerが 競技プログラムの問題解くのにC++使ってたのを見て Haskellは趣味の言語だと見限ったわ来がないこ
80 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 14:04:30.04 ID:iVFW+LnC.net] 堅く書くことが目的なんであって 早く書くことが目的じゃねいんじゃねーのハケルス ワオScalaラバーズだけどコーディングサイトで解くときはPython使うし コンパイルなんかしてられんもん
81 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 15:56:58.63 ID:GwUkD2Q0.net] >>59 駆逐されたならプロトコル指向は良貨じゃん
82 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 16:41:32.53 ID:K0FvZgpo.net] 論理学の初歩からやり直せ
83 名前:デフォルトの名無しさん [2016/12/06(火) 23:37:42.05 ID:ZdJwFyPe.net] なあ、ディープラーニングってゴルフと同じだよな? ゴルフと全く同じだってきずいたんだよ。 そう考えるとそれほど難しくないな。
84 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 23:42:07.03 ID:r0hSL9Mg.net] どの辺がゴルフなのさ?
85 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 09:19:46.65 ID:5VwP5aCe.net] まずは道具を揃えろってことか。
86 名前:デフォルトの名無しさん [2016/12/07(水) 09:28:58.83 ID:WkIilmtL.net] 球が転がり落
87 名前:ちていく様子がAdaと似てるとか? [] [ここ壊れてます]
88 名前:デフォルトの名無しさん [2016/12/07(水) 10:28:23.50 ID:1xQzW6oG.net] おそれず、あなどらず
89 名前:デフォルトの名無しさん [2016/12/07(水) 10:29:05.90 ID:1xQzW6oG.net] 大敵と見て恐れず小敵と見て侮らず
90 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 17:02:19.47 ID:MY/cuqD+.net] つ ま ん ね
91 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 17:39:03.12 ID:5VwP5aCe.net] ね ん ま つ
92 名前:デフォルトの名無しさん [2016/12/10(土) 23:09:36.92 ID:SCCkpZrN.net] スカラは頭一つ優位なイメージだな。
93 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 01:46:41.69 ID:ZTpNN/gU.net] 学習コストの高さ(特にあのメチャクチャな記号)とJava8の逆襲で、逆にオワコン気味なイメージだわ>スカラ
94 名前:デフォルトの名無しさん [2016/12/11(日) 02:06:42.58 ID:pm6ghExK.net] >>89 じゃあ、ハジコンは何ですか?
95 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 06:36:59.90 ID:hiiS8aXy.net] AltJavaでは、静的言語の順に、Scala, Kotlin, Groovyがあるけど、 Scalaは他よりも、少し難しい
96 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 09:54:34.34 ID:ZTpNN/gU.net] >>90 PHP7やろなぁ
97 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 11:10:26.18 ID:f0tlS9W7.net] 難しいのではなく経験が活かしにくいだけ 初めからScalaを学ぶなら他の言語と学習コストは変わらん
98 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 11:25:13.90 ID:ZTpNN/gU.net] >>91 難しい上にコンパイル速度も糞遅いし それに見合う対価は得られるのだろうか?っていう
99 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 13:18:45.79 ID:givNk4mN.net] Scalaは日本では絶対に流行らない なぜなら人を集められないことを見越したSIerがプロジェクトに採用しないからだ
100 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 13:53:11.63 ID:ZTpNN/gU.net] 某チャットの会社も失敗したらしいしなぁ
101 名前:デフォルトの名無しさん [2016/12/11(日) 16:41:42.81 ID:pm6ghExK.net] ScalaってJava系というよりJavaScriptに近い気がするけど違うの?
102 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 16:57:53.44 ID:xRu9Q2yy.net] >>97 少し触った感じではぜんぜん違う。JVMで動いてるだけでJavaともぜんぜん違う。
103 名前:デフォルトの名無しさん [2016/12/11(日) 18:39:15.03 ID:yIoYPFKI.net] Haskellはwindowsのサポート弱すぎ
104 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 19:28:34.84 ID:XLAOeW6t.net] SIだったら言語はCOBOLかJavaだけでしょう 場合によってはC/C++ それ以外は(例えばJP1/Scriptのような運用系の人が使うようなものを除いて) 使っているのを見たことがない 人を集められるか以前に どこの馬の骨だかわからないようなオープンソースの実装を使うわけにはいかないでしょう
105 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 19:35:13.71 ID:ZTpNN/gU.net] ガラパゴスジャップランド土人のSIなんて話題に出すな 汚らわしい
106 名前:デフォルトの名無しさん [2016/12/11(日) 19:55:18.62 ID:wc7LxWrn.net] オープンソース否定してる人ってオープンソースのコードよりマシなコード書ける人集められるつもりなんだろうか?
107 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 20:11:04.48 ID:UUDzf3sv.net] オープンソースは責任の所在やサポート問題が宙ぶらりんだからな。 使うとしてもRed Hatのような支援体制の整ったものでしょう。
108 名前:デフォルトの名無しさん [2016/12/11(日) 20:25:02.05 ID:yIoYPFKI.net] 下請けって責任取るためにいるんだなあ
109 名前:デフォルトの名無しさん [2016/12/11(日) 20:57:34.20 ID:pm6ghExK.net] 一生Javaでエンプラ系作ってろ 企業のために覚えるわけじゃあるまいし、俺はScala覚えるよ SIlerとか下請けとか心底どうでもいいし
110 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 21:58:58.64 ID:XLAOeW6t.net] オープンソースというのは自己責任の限界があるということ オープンソースの開発にかかわっているのは日本人以外が多い 中国やロシアもかなりの割合だ 日本を代表するようなインフラにそういった素性のものを活用すべきだろうか? 日本の平和を維
111 名前:持するために他国の技術をどこまで利用するべきだろうか? わざわざ自社でCOBOLやGitもどき、SIツールもどきを作っているのは なにもガラパゴス色を出したいだけじゃない ハードウェアは中国と手を組み、オフショアも盛んに行っているかもしれないが 決して譲れない部分もある [] [ここ壊れてます]
112 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 22:03:26.11 ID:ZTpNN/gU.net] 決して譲れない部分(納期とメンツ)
113 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 22:15:29.66 ID:xRu9Q2yy.net] >>106 日本人以外が作ったOSSを使うことにはリスクがあるから使わないというのがSIerの意見なのかな?
114 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 22:37:29.72 ID:ZTpNN/gU.net] SIerが書いたソースが一番のリスクという真実 万里あるやろ?
115 名前:デフォルトの名無しさん [2016/12/11(日) 23:58:53.09 ID:Cg3P+2IZ.net] >>103 サーバをredhat系にしてパッケージ少ないから結局サードパーティのリポジトリ追加したりして何だかなぁってよく思う。
116 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 03:39:38.71 ID:5lmNURKr.net] >>107 日本の企業ってほんとつまらんメンツにこだわるよな カスみたいなもんなのに
117 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 04:47:30.38 ID:SVFks7Ub.net] Scalaなんか覚えて何を作るんだと思う一方で、 OSSは他国の技術でもあるから日本で使うべきじゃないとかいう変な思想も、お上や大企業臭くて嫌悪する
118 名前:デフォルトの名無しさん [2016/12/12(月) 08:35:50.39 ID:SW2srtAl.net] Haskellめっちゃ好きなんだけどパッケージ周りが糞すぎ 代数的データ型とかHaskellっぽくかける言語って何がある?
119 名前:デフォルトの名無しさん [2016/12/12(月) 09:45:14.01 ID:dG+hv8AD.net] >>113 そんな事も自力で調べられない検索力で マイナー言語を学ぼうとか頭悪そう
120 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 10:00:13.74 ID:d2bpb6Pd.net] F#おすすめ
121 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 10:21:13.92 ID:eXQ8bj54.net] Haskellって日本ではC++から現実逃避した連中の吹き溜まりだよね 将棋ソフトの大会にHaskell使用者が0名だったのは笑わせて貰った C++並の速度が出せるとかいう虚勢はどこに行ったんだか
122 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 10:50:49.02 ID:URLATzKi.net] CのほうがC++より速いわけだが
123 名前:デフォルトの名無しさん [2016/12/12(月) 11:37:29.60 ID:SW2srtAl.net] C++からなんか逃げたいに決まってるだろ S/N比悪すぎ
124 名前:デフォルトの名無しさん [2016/12/12(月) 12:00:11.17 ID:SW2srtAl.net] >>115 型の定義と共に継承するインターフェースの実装も書かなくていけなくて、見た目悪いイメージあるんだけど、案外慣れるもん?
125 名前:デフォルトの名無しさん [2016/12/12(月) 12:09:54.92 ID:wAsQV1H6.net] >>118 逃げたいけど逃げる先が今の所無いという現実か
126 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 12:30:21.74 ID:URLATzKi.net] objective-cがある
127 名前:デフォルトの名無しさん [2016/12/12(月) 14:41:52.06 ID:tdNqUxnO.net] julia
128 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 14:48:01.25 ID:GIqpZSIx.net] >>117 速かったり遅かったりだけどC++の方が最適化が効きやすい印象
129 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 14:51:06.22 ID:DhBCg1f9.net] まあこれからはpythonよね。 変なテクニック使わなくても短く書けるから生産性が段違い。 実行速度の言語とコーディング速度の言語での棲み分けが進むでしょう。
130 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 15:42:03.13 ID:URLATzKi.net] 結局、同じ中間コードに変換されるから最適化は同じだよ オーバーヘッドがないC言語のほうが早いよ 最近ではスマートポインターとかいうやつ使うから さらに速度は低下してる
131 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 16:08:34.94 ID:GIqpZSIx.net] >>125 > 同じ中間コードに変換されるから最適化は同じ > オーバーヘッドがないC言語のほうが早い 俺の知らない処理系ではそうなのかもしれないから出鱈目とは言わないが すくなくてもgcc/g++やclang/clang++は当てはまらないな
132 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 16:29:10.20 ID:URLATzKi.net] clang++とgcc++はただのフロントエンドから、 最適化は同じバイトコードに変換されたあとだから 同じだよ
133 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 18:02:40.89 ID:GIqpZSIx.net] CならCの、C++ならC++なりのコードを書くから全く同じバイトコードになることはまず無いし それらの違いが最適化に影響するのは当然のことなんだけどな
134 名前:デフォルトの名無しさん [2016/12/13(火) 00:02:25.09 ID:wm86+Ixr.net] 昔はCのqsortよりC++のstd::sortの方が最適化が効きやすくて速かったんだけど最近は同じになったん?
135 名前:デフォルトの名無しさん [2016/12/13(火) 00:11:23.71 ID:E8ACHl16.net] つかC++やJavaはまだいいとしてCOBOLとか正気で言っているとは 思えないな。 つか >>1 のスレタイの言語の抜擢基準は何なんだ? 一般的な承認を得ているのか?
136 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 00:21:40.67 ID:QKhZWs7J.net] Scala最強はい終わり ペチパーやコボラーは早く首吊って死ね
137 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 01:50:20.71 ID:ts6Fg0hq.net] COBOLの代替は見つからないんだし 次世代でも生き残る可能性は高いと思うよ バッチがなくなることはないだろ? プリミティブなものってなかなかなくならないもんだよ COBOLを言語だと思うから古臭く感じるだけ
138 名前:デフォルトの名無しさん [2016/12/13(火) 08:33:50.37 ID:BMnwgeAA.net] オブジェクト志向と関数型のハイブリッド系ってオブジェクト志向的なメソッドと関数型的な関数をどう使い分ければいいのかよくわからん
139 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 09:19:21.40 ID:2oGa6DNb.net] https://chrome.google.com/webstore/detail/%E3%81%AF%E3%81%A6%E3%81%AAng/mbgdnfmdelffjdhkdggilmphfdihnmcj?hl=ja
140 名前:デフォルトの名無しさん [2016/12/14(水) 23:53:46.75 ID:Wj/eE5z1.net] ぶっちゃけJavaって使いづらいし、案件もJava使うのってスマホアプリ系じゃなければIT土方(何でもいいから人数集めろ)系ばかりだ。 早く他の言語広まってほしい
141 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 00:06:15.32 ID:TY3h+L6y.net] Delphiは良かったのになぜ.NETにしたのか(ちなみに同じ開発者) ていうかJavaとC++のせいらしいが(C++はバッファオーバーラン問題で移行させるも似てないとやだって話) Javaは無料だからかな? Javaもそれ真似した.NETも、それ以前のWin系に比べてオープン系とは言い難いような たくさんコンポーネント用意するかわりに、単一環境に閉じようとしてるので、クローズ系と言いたい感じ
142 名前:デフォルトの名無しさん [2016/12/15(木) 00:48:52.70 ID:GBhksizf.net] >>135 広まった言語が次のIT土方系言語になるだけだそ
143 名前:デフォルトの名無しさん [2016/12/15(木) 00:52:57.14 ID:TeVpWuQ6.net] rustを勉強しとくと何かいいことある?
144 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 01:03:02.46 ID:9iWeiPqy.net] Delphiはよかったな でもVB6と比べて.NETがかなり高速だし ネイティブはつらいんじゃないか? 常識的に考えるとネイティブのほうが遅いって信じられんが
145 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 01:15:05.88 ID:ryYHdhLD.net] 効率悪いコードならネイティブでも遅いってだけだろ
146 名前:デフォルトの名無しさん [2016/12/15(木) 02:14:01.63 ID:GBhksizf.net] C/C++は英語みたいなもんだな。 ある程度は読めないと 吸収出来る知識の幅が大きく狭まる。 特にマイナー言語なんてサンプルコードも落ちてないのがザラだから C++で書かれたコードを自力で翻訳するのが基本の勉強法になるし。
147 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 07:58:52.62 ID:f53xuNGE.net] 関数型だとそのポジションはhaskellだな 関数型の説明はどこもhaskellのサンプルばっかり haskellは覚える気なかったのに
148 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 10:15:13.90 ID:TY3h+L6y.net] DelphiはC++のノウハウが直訳で使えたのもよかった
149 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 12:25:25.65 ID:7KRIzock.net] https://chrome.google.com/webstore/detail/%E3%81%AF%E3%81%A6%E3%81%AAng/mbgdnfmdelffjdhkdggilmphfdihnmcj?hl=ja
150 名前:デフォルトの名無しさん [2016/12/15(木) 12:36:19.06 ID:jYtTego3.net] >>135 ほんそれ >>137 集まる人は変わらない >>136 >Javaは無料だからかな? 企業はそんなセコい理由で選ばない
151 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 14:17:59.22 ID:TY3h+L6y.net] >>145 企業じゃなくて、大学とか 習得人口が多ければ企業も自然とそうなるんじゃないかと
152 名前:デフォルトの名無しさん [2016/12/15(木) 14:38:29.35 ID:45UipUv6.net] 機械学習を凌いで中二が集まるスレ
153 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 20:52:29.09 ID:9iWeiPqy.net] とはいえ中小企業にOracle契約してよとか、グレープシティ買ってよといっても 出し渋るわけで、無料なのはある程度大事じゃないか?
154 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 23:05:50.52 ID:tdNKFUea.net] 来年は、Ceylon でも触ってみるか
155 名前:デフォルトの名無しさん [2016/12/16(金) 18:34:54.52 ID:BRSJ0aiG.net] F#どうなん?
156 名前:デフォルトの名無しさん [2016/12/16(金) 18:35:06.82 ID:UN7/R1CA.net] 頭の体操用: Haskell Ruby Scala 実用: C/C++ Python JavaScript C# 土方、Slerの奴隷用: Java COBOL PHP
157 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 22:07:31.70 ID:1qE67r3j.net] Lispはもういらない子なの?
158 名前:デフォルトの名無しさん [2016/12/16(金) 22:17:47.23 ID:kbc66K65.net] Clojure好き
159 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 22:49:40.41 ID:Rf32SvPx.net] >>151 がScalaのステマ
160 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 00:12:22.45 ID:YI3ufh9D.net] 2017年からSmalltalkに(再)挑戦したい人へ phaendal.hatenablog.com/entry/2016/12/14/230422
161 名前:デフォルトの名無しさん [2016/12/17(土) 00:19:02.63 ID:I1a9emLd.net] Smalltalkが再挑戦しろ
162 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 00:58:27.79 ID:lu7YUydK.net] AltJavaでは、Scala以外に、Kotlin, Groovy があるから。 それと、Ruby, Haxe をやれば、たいていの事はできる
163 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 01:10:19.67 ID:HUzLix+O.net] それただの器用貧乏ですやん
164 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 01:30:49.89 ID:HUzLix+O.net] たいていの事はできる(たいした事はできない)
165 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 01:58:04.72 ID:tizNM2+U.net] プログラマーなら普通は複数の言語を身に付けているし、 それを器用貧乏と評するのは意味がわからん
166 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 03:00:01.83 ID:snvYzUCe.net] AltJavaだけで三つも四つも憶えるのは効率悪い 更にそれ以外がRubyとHaxeという選択は筋が悪い
167 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 06:00:32.59 ID:lu7YUydK.net] JSは、Haxeで、 Javaは、Groovyで、 Androidは、Kotlinで、 シェルスクリプトは、Rubyでやる 他には、Electron
168 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 07:23:16.03 ID:MJ/TQYFY.net] swiftは次世代言語ですか?
169 名前:デフォルトの名無しさん [2016/12/17(土) 08:13:52.21 ID:bYUfwITN.net] >>155 良い
170 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 08:54:47.18 ID:u0MCFX41.net] smalltalkってゴミだな
171 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 09:09:48.13 ID:lTxyqRlM.net] ひねった言語に逃げなくても C++とHaskellだけ学べば他の言語は応用効くでしょ。 「C++余裕だけどJava難しい」とか 「Haskellから来たけどScala挫折しました」 とか聞いた事ないし。
172 名前:デフォルトの名無しさん [2016/12/17(土) 09:32:05.96 ID:SZHJDyPT.net] >>166 C++はわりと出来るけどCOBOLは挫折する(やる前から)
173 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 10:26:56.52 ID:HUzLix+O.net] >>166 C++難しい Haskell挫折しました
174 名前:デフォルトの名無しさん [2016/12/17(土) 10:34:17.41 ID:I1a9emLd.net] HaskellはWindowsで厄介
175 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 11:45:18.62 ID:eluHTQQy.net] そういう話なら論理型言語代表の Prolog も入れてあげて。 手続き型とも関数型とも違う世界でやってる言語だから、教養
176 名前:としては重要だよ。 [] [ここ壊れてます]
177 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 12:24:58.17 ID:0gKLg1TK.net] >>170 Prologっていわゆる業務系みたいなアプリ作れるの?ウェブアプリとか。できなくはないんだろうけど実績とかあるのかな。アカデミックな領域がメイン?
178 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 15:17:46.57 ID:ViZRp8Ek.net] 煽る訳じゃないけど Prologが代表って時点でもう 論理型言語そのものが終わってない?
179 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 15:37:46.78 ID:cI2MiRpF.net] むしろ今からじゃないの AI隆盛になって自然言語処理とかもさらに活発化するだろうし ただの知ったかだけどさ
180 名前:デフォルトの名無しさん [2016/12/17(土) 16:13:23.71 ID:2Jm0iG/u.net] 機能もろくに差別化されていないのに文字コードのように 覇権争いになるのは勘弁願いたい 個人的に「○○言語の拡張」みたいな感じで似たような 言語は乱発してほしくない。 新言語学ぶなら唯一無二の機能が欲しいな。 描きやすさを追求した言語ならPythonは凌駕してほしいところ 今のところ俺の中でPythonがダントツ
181 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 16:28:09.78 ID:HUzLix+O.net] 中途半端なOOPで腐ったPythonのどこがええんや 糞や
182 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 16:32:05.33 ID:EjoxwQPp.net] いわゆるLL言語でオブジェクト指向がうまくいってる言語ってなくね?Rubyぐらい?
183 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 17:23:09.78 ID:0gKLg1TK.net] >>176 OOPってオブジェクトが定義できて継承とポリモーフィズムあれば十分じゃない? どのLLでも手段は提供されてるからあとは使い手の腕次第だと思うけど。
184 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 17:26:32.03 ID:HUzLix+O.net] 使い手の腕次第(笑) で、どっかの「PHP7で堅牢なコードを書く」みたいに 車輪の劣化再発明を繰り返すのか LLの連中って頭までLだよな
185 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 17:35:18.54 ID:u0MCFX41.net] オブジェクト指向と堅牢なコードになんの関係があるの?
186 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 17:55:16.63 ID:HUzLix+O.net] 使い手の腕次第とかいって目的と手段をはき違えてるバカに言ってんだよターコ
187 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 18:01:38.13 ID:u0MCFX41.net] お前、C++難しくてHaskell挫折してPythonもダメって言ってんじゃねーか 性能も追及できず理想に準じることも出来ず実用性で妥協も出来ないなら お前の気にいる言語なんてねーよw
188 名前:デフォルトの名無しさん [2016/12/17(土) 18:30:21.42 ID:2Jm0iG/u.net] Pythonはモジュール作るのも他人の既存のモジュールを解析するのも 簡単、以上。 必要以上にオブジェクト指向である必要がない。 よくわからないものをブラックボックスのままとりあえず参照 って使い方じゃなくて、ざっとモジュール読んで、 モジュール書いて、必要なものだけインポートして使える。 あんま継承は使わないし、既存のものを丸ごとコピッて 要らないとこ削って使えるくらいimportの構文がシンプル。
189 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 18:33:42.34 ID:yLbp/UkZ.net] 競技プログラミング系のサイトだと Pythonの回答はえらい短い事が多いよね。 その点に関しては右に出る言語はなさそう。
190 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 18:44:11.39 ID:b79E6Pux.net] >>182 土方言語として優れた特質だな。
191 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 18:54:36.05 ID:HUzLix+O.net] 土方ならJava7以下かPHPだろ
192 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 21:52:35.83 ID:zhH9hqJS.net] 本屋行ったらpython本が増殖してた。
193 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 22:01:00.84 ID:0gKLg1TK.net] >>180 だからどの言語も一般的な機能は備えてるんだからあとは使い方次第ってこと。言語は手段で道具なんだからあとはどう使うかだけでしょ。Pythonできれいなコード書けるけどPHPだと書けませんって人はいないよ。どっちも汚いかどっちも綺麗かだけ。
194 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 22:01:29.61 ID:0gKLg1TK.net] >>186 機械学習が流行ってるからね。
195 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 22:27:22.02 ID:2Jm0iG/u.net] でもJavaScriptだけは汚いイメージが払拭できない
196 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 22:46:09.48 ID:K7bSiR2D.net] ねえねえrustはどうなのみんな
197 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 22:53:03.85 ID:EjoxwQPp.net] Pythonも入門書ばかりでその上をあまり見かけないね C++やJavaはその辺が厚いんだが・・・ 近所の本屋の売れ行きの都合かもしれんが何かいい本あるか?
198 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 00:26:42.84 ID:aCKcGLhu.net] Python, JS には、ブロックスコープが無い だから、Ruby, Haxe が堅牢
199 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 00:44:36.30 ID:KFsMSIdd.net] Haxeってすごいんだね ディズニーやトヨタやBBSやコカコーラが使ってるらしい Haxe - Wikipedia https://en.wikipedia.org/wiki/Haxe
200 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 00:56:16.48 ID:v8zNK0rs.net] Haxeでググルとtypescriptを勧められる始末 TypeScript最強伝説
201 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 01:49:18.31 ID:5HKYrKlu.net] 10億人流出の米国ヤフーは何の言語使ってるのかな〜と思ったら https://en.m.wikipedia.org/wiki/Programming_languages_used_in_most_popular_websites まさかのPHP一本足打法・・・
202 名前:デフォルトの名無しさん [2016/12/18(日) 02:03:38.29 ID:sPLdNIEi.net] >>192 つ let
203 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 02:23:43.04 ID:v8zNK0rs.net] >>195 アホーゴミ過ぎワロタ
204 名前:デフォルトの名無しさん [2016/12/18(日) 12:34:24.22 ID:8F2gNr16.net] Clojureが相手にされてないのは寂しい
205 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 15:21:13.61 ID:1DW+/DGy.net] なんで関数型やりたがる人ってClojureやF#すっ飛ばしてHaskellやりたがるん? ただただ手間じゃねアレ
206 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 15:48:06.84 ID:5HKYrKlu.net] 参考文献や日本語の解説が充実しているから。
207 名前:デフォルトの名無しさん [2016/12/18(日) 16:30:19.60 ID:8F2gNr16.net] Lispは神の言語だけどHaskellみたいなデータ型がないのが頂けない
208 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 16:31:55.95 ID:v8zNK0rs.net] LispってFortranとかCOBOLの仲間だろ 完全に死んだ老害言語
209 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 17:12:01.68 ID:lPdYfHUm.net] >>202 またまたご冗談をwww
210 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 18:13:50.19 ID:v8zNK0rs.net] Lispのプロダクトなんて聞いたことない ないよね?
211 名前:デフォルトの名無しさん [2016/12/18(日) 18:20:44.14 ID:+J9lZQEn.net] クラッシュバンディクー(震え声)
212 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 20:19:13.32 ID:kFQZgr3z.net] Lispをバカにするのは自分のアンテナの低さを露呈するもんだな
213 名前:デフォルトの名無しさん [2016/12/18(日) 21:22:59.82 ID:+J9lZQEn.net] でも正直common lispとかschemeの関数名の雑然とした感じ嫌い
214 名前:デフォルトの名無しさん [2016/12/18(日) 21:55:11.61 ID:XOBRXwmr.net] COBOLは老外 FORTRANは科学者の中で現役 LISPはなんていうかプログラミング言語のメタを行く存在 プロダクトが聞いたことが無いのはLISPはインスタンスではなくて、 その上の抽象的な存在だから。Haskellもそういった類だね。
215 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 23:17:04.06 ID:v8zNK0rs.net] Haskell haskell = new Lisp(Haskell.class); こうですか?わかりません><;;;;
216 名前:デフォルトの名無しさん [2016/12/18(日) 23:28:49.90 ID:XOBRXwmr.net] んーとね、ポケモンに「メタモン」っているだろ? LISPもメタモンなんだよ
217 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 23:29:55.38 ID:BnvcAWRa.net] COBOLも現役だぞ 銀行以外でもまだまだ使われてる 計算メインだとああなっちゃうよ 画面制御なんかはCOBOLでやりたいとは思わんが 金勘定ならむしろ楽だよ
218 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 03:32:43.92 ID:x/DzWopZ.net] 現役の定義を 新規の案件で採用される事と定義すると COBOLは現役引退近い状況でしょう。 まあスレで語られているのは 一度も現役になった事のない言語が大半だけどね。 (例えばHaskellは現時点では新規も保守も需要がない)
219 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 21:35:37.92 ID:q+GbM0Hb.net] >>209 型とインスタンスが逆じゃね?
220 名前:デフォルトの名無しさん mailto:sage [2016/12/21(水) 01:09:09.16 ID:NlXO0i2+.net] アレだろ清純とビッチどっちが抜けるかって議論を始めるに当たって とりあえず清純の頂点として性知識一切なしの女の子定義しましたってのがHaskellだろ? 「それ抜けるじゃん!」ってなった奴がHaskellラー
221 名前:デフォルトの名無しさん mailto:sage [2016/12/21(水) 06:35:26.81 ID:Fv4yEKAo.net] Lispはどんな女の子なの?
222 名前:デフォルトの名無しさん mailto:sage [2016/12/21(水) 11:19:26.79 ID:pQngWRnW.net] Lispは服(構文)を着ない野生児的な女の子(ちなみに生まれた頃は比較的普通の服を着ていた=M式) ただこれで意外と育ちは良くて(ANSI)、教養(仕様)もしかっりしている マクロという裁縫術を心得ていて、必要な服をいつでも作って着分けることができる
223 名前:デフォルトの名無しさん mailto:sage [2016/12/21(水) 19:44:11.45 ID:DAWAuc9g.net] LISP(の方言)は不滅じゃね?emacsの上で
224 名前:デフォルトの名無しさん [2016/12/21(水) 21:00:19.84 ID:SAz7LbLJ.net] >>212 個人から見たらそうなのかw
225 名前:デフォルトの名無しさん mailto:sage [2016/12/21(水) 21:37:06.90 ID:LwOfWJ5k.net] 集団から見ると違うのか
226 名前:デフォルトの名無しさん mailto:sage [2016/12/21(水) 22:22:07.11 ID:EHIXxsY5.net] 俺みたいなアジャイルでスクラムなチームでスプリントしながら振り返りDDDな目線だと、また新しい視点が見えてくるね
227 名前:デフォルトの名無しさん mailto:sage [2016/12/22(木) 02:31:44.42 ID:LKHTDYaz.net] >>217 なんでemacsの不滅は前提なんですかね…
228 名前:デフォルトの名無しさん [2016/12/22(木) 08:43:00.02 ID:tQtLk2Co.net] Lispは標準関数名汚すぎな Clojureはまだマシだけど
229 名前:デフォルトの名無しさん [2016/12/22(木) 09:19:52.84 ID:8qaRbIfF.net] Haskellを純粋関数型って言葉やめない? 参照透過型言語と呼ぶべき. これなら最近増えた 表面だけパクった言語達と同じカテゴリに入らなくて済む。
230 名前:デフォルトの名無しさん mailto:sage [2016/12/22(木) 09:22:45.26 ID:piqYaj8F.net] 参照透過を徹底してる言語なんてHaskellしかないんだから ストレートにHaskellって呼べば良くない?
231 名前:デフォルトの名無しさん mailto:sage [2016/12/22(木) 12:42:33.24 ID:LVFOwIG/.net] lazyとstrictで大分違うのにいっしょくたに語られる関数型
232 名前:デフォルトの名無しさん mailto:sage [2016/12/22(木) 18:03:40.60 ID:mT17SxA8.net] ていうかなんで言語開発者はHaskellなんてめんどくさいだけの言語パクりたがるのか分からん 後のアップデートで結局Haskellらしさを潰して使いやすくしました!とかやってるし意味が分からん
233 名前:デフォルトの名無しさん [2016/12/23(金) 14:30:21.94 ID:FYU3Gmnx.net] Rustの用途ってc++で書かれたプログラムの移植版を作ることでいいのか?
234 名前:デフォルトの名無しさん mailto:sage [2016/12/23(金) 14:44:06.63 ID:yIxDn18f.net] mozilla開発ってだけでなんかもう負け組臭が酷い
235 名前:デフォルトの名無しさん [2016/12/23(金) 14:54:07.50 ID:TK7Butbo.net] Goより明らかにいい言語なのにバックの印象で負けてるrust
236 名前:デフォルトの名無しさん mailto:sage [2016/12/23(金) 15:00:36.49 ID:Np2+Er+t.net] えっ? rust が?
237 名前:デフォルトの名無しさん [2016/12/23(金) 15:31:23.69 ID:F0XljJId.net] >>228 googleがrust作ってたらpython, ruby, c++開発者が流れたよね
238 名前:デフォルトの名無しさん mailto:sage [2016/12/23(金) 15:39:29.01 ID:yIxDn18f.net] >>231 歴史に鱈レバーはないが そうかもしれぬ
239 名前:デフォルトの名無しさん mailto:sage [2016/12/23(金) 19:34:45.48 ID:yIxDn18f.net] Rustにもマスコットが必要だな ゴファはモッサイから、もっとケモナーの精巣に響くようなマスコットがいい
240 名前:デフォルトの名無しさん [2016/12/23(金) 19:34:49.78 ID:RCL+KsCc.net] 資金力が違いすぎるからなぁ
241 名前:デフォルトの名無しさん [2016/12/23(金) 19:53:22.32 ID:TK7Butbo.net] Lolifoxだな
242 名前:デフォルトの名無しさん mailto:sage [2016/12/24(土) 08:38:43.16 ID:di+rXJ0g.net] >>229 雷鳥「一体何が不満なんですか?」
243 名前:デフォルトの名無しさん mailto:sage [2016/12/24(土) 19:01:30.80 ID:hxBGGNm6.net] 量産されているHaskellのパクリ言語が どれも本家より良いとは言われない不思議
244 名前:デフォルトの名無しさん mailto:sage [2016/12/25(日) 13:34:16.89 ID:kF/mK/Cf.net] 自分自身をコンパイルできるコンパイラ またはCで書かれた中間言語コンパイラ このどちらかがあると良い
245 名前:デフォルトの名無しさん mailto:sage [2016/12/28(水) 02:12:07.16 ID:Pt7cMAGf.net] lisp未だにCADの組み込み言語で使うから、全く馬鹿にできんが、 俺はGoを会社では推してる。 未経験でも2日でわかる、言語仕様ちゃちいから闇が浅い、フォーマットは強制、リンターが強力 threadやら、Runnableやら、synclockやら、哲学者の食事やら教えんでも8割くらいがチャンネルで解決する。 コンパイルしたらワンファイルでどこでも動く。
246 名前:デフォルトの名無しさん [2016/12/28(水) 08:34:54.14 ID:bvnjBJpz.net] >>239 > 闇が浅い、 型台無しにするinterface{}とか闇と思う。
247 名前:デフォルトの名無しさん mailto:sage [2016/12/28(水) 09:55:30.25 ID:JT952dSj.net] >>240 今のところジェネリックスないからなぁ。 インターフェイスが勝手に実装されるんだから使いそうな値は全部名前つけて管理しろと思う。 intに ScreenYPosとか型名つけれるのマジ便利。
248 名前:デフォルトの名無しさん [2016/12/28(水) 11:22:58.21 ID:h6cUbtbL.net] MapもReduceもなくて三行かけてループで書く言語はちょっと……
249 名前:デフォルトの名無しさん mailto:sage [2016/12/28(水) 12:06:37.48 ID:JT952dSj.net] まあ、タイプ数は多いけど。 mapやreduceが何スレッド使ってどう動くかをかける分、rangeとゴルーチンとチャンネルの方が便利じゃない? mapのmapのreduceのmapとかになって来たら、チャンネル繋げたほうがわかりやすいし。 一台では捌けんなと思ったら、受け取ってネットワークに投げるチャンネルと ネットワークから拾って次のチャンネルに渡すチャンネル書けば、割と解決するし。 Erlangも同じ理由で好き。
250 名前:デフォルトの名無しさん mailto:sage [2016/12/28(水) 13:57:13.59 ID:MIXabYYa.net] Goはシンプルでいいんだけど、コードが冗長にならない?if文がつらつら並んでしまうことよくある。書き方が悪いのかな。 文字列処理が中心のウェブアプリだとこの傾向が顕著な気がする。APIだけならまだマシだが。
251 名前:デフォルトの名無しさん mailto:sage [2016/12/28(水) 14:19:25.35 ID:kFL7wfb2.net] うむ
252 名前:デフォルトの名無しさん [2016/12/28(水) 19:02:14.47 ID:pwprnBc6.net] golang はよくも悪くも実用性第一の言語なんだから、言語に高度な抽象化や表現力を求める層に勧めてもニーズがずれてるんと違うん。
253 名前:デフォルトの名無しさん mailto:sage [2016/12/28(水) 23:29:01.55 ID:Eve+QkKl.net] 自動ダックタイピングとか、基地外! 老害プログラマが言語を作っとる
254 名前:デフォルトの名無しさん mailto:sage [2016/12/28(水) 23:43:54.55 ID:NN0/J7oE.net] 自分で理想のプログラミング言語作って使ってればええやん
255 名前:デフォルトの名無しさん mailto:sage [2016/12/28(水) 23:48:59.74 ID:JT952dSj.net] >>244 switchで、かなぁ。 テーブルジャンプになりそうな所はそうしてしまうって発想に近いと思う。 抽象化って言語仕様的にはこれ以上必要ないレベルまで抽象化されてると思うよ。 interface定義すればそれが一致すればすべてその実装とみなすとか。 cppで書いたバカみたいなvirtualの塊をコンパイルしたようなコードになるなら、コンパイラが全部解決しとけってのは理にかなってるんじゃないかな。 さもなくばJavaScriptでダックタイプしとけと思ってしまう。あれはあれで便利だし。 大体の言語のカスい所を削るとあれになった感があるけど。
256 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 00:03:11.38 ID:RruPXahs.net] >>246 表現力ってよくわからんのよね。 何もかもを表す言語って自然言語には無いんよ。 霧雨や狐の嫁入りを綺麗に英語には出来ないし Be it as.と単文では日本語にはニュアンスが出せないようなもんで、 ある言語がある領域で万能であれる訳がないのに、 まやかしの如くその辺を解決した気になってる言語が純粋に気持ち悪い。 あるゆる、演算子をオーバーライドできる言語に対して思う。
257 名前:デフォルトの名無しさん [2016/12/29(木) 00:07:10.35 ID:byMsx2NY.net] >>250 実際にタイプする文字の量ということで良いんじゃない?
258 名前:デフォルトの名無しさん [2016/12/29(木) 00:09:42.38 ID:rvAXIAg7.net] >>250 表現力の解説は他の人に任せるとして、取り敢えず演算子オーバーライド出来ないと線形代数が悲惨なことになるのでその最後の行は頂けない
259 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 00:20:16.74 ID:CZgr2A6D.net] タイプする文字の量で行ったらPythonが最強でしょう。
260 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 00:38:47.33 ID:jOhOrzjU.net] >>246 この意見には賛同できるな。Scalaのパターンマッチとかコレクションの操作は表現力が高いと思う。何をしようとしてるか明確だから。Goはもっとプリミティブな操作しか持ってないから。
261 名前:デフォルトの名無しさん [2016/12/29(木) 00:39:17.73 ID:OGBMppob.net] >>250 お前は文字列処理だけやっとけ低脳
262 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 01:11:04.33 ID:RruPXahs.net] >>252 要らないだろ。 ベクトルとベクトルの掛け算が外積なのはわかるが、三次以上のテンソルとテンソルの掛け算がどう定義されるか、 ベクトルとスカラのタプル同士の掛け算がどうなるかなんか、型同士で勝手に定義されても困る。 >>254 何をしようとしてるか明確なのはその型作った奴だけだろ。 >>255 文字列なんかほとんど触らんわ。
263 名前:デフォルトの名無しさん [2016/12/29(木) 01:25:58.55 ID:rvAXIAg7.net] >>256 ベクトルの足し算をa+bと書くよりもvector_add(a, b)と書いた方がいいということ?あり得んだろそんなの
264 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 02:27:22.56 ID:RruPXahs.net] >>257 だから、ベクトルと単に定義すんなと。 何のベクトルかを型として持つべきでしょ。 加速度のベクトルと角加速度のベクトルは系が違うんだし。 関数名も嫌な感じ。演算子のオーバーライドと次元同じじゃん。 型が適当だからそんな発想出るんじゃないの? ものによっては交換法則が成り立たんのだから、addは適切じゃない上に、aにaddするのか、aにaddしたものを返すのかもわからん。 a+b はオーバーライドされて、原点からの距離になります(ただしAが南北方向加速度、Bが東西方向加速度の場合) みたいな例外でしか構成されてない仕組みで埋め尽くされるじゃん。 なんとかvector.CombineZX(z ZVecror,x Xvector)でしかない。
265 名前:デフォルトの名無しさん [2016/12/29(木) 02:48:32.46 ID:rvAXIAg7.net] >>258 ちょっと適当に関数定義していいから、線分クラスを始点と方向ベクトルで構成されるものとして、2線分の交点を算出するプログラム書いて見てよ Numpyより見やすくな
266 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 03:07:10.97 ID:yr0J1az9.net] 会話の流れを一切無視した要求に笑ったw まあPythonはこの面子では抜けてるとは思うよ
267 名前:デフォルトの名無しさん [2016/12/29(木) 06:18:55.17 ID:13IxHxtA.net] うむ
268 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 06:56:51.24 ID:V7u6j1LO.net] 演算子オーバーライドはご飯に卵を掛けたら卵掛けご飯にならなきゃおかしいっていう人のためのものだ
269 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 09:40:32.87 ID:MXIaWcPX.net] >>259 > 書いて見てよ > Numpyより見やすくな こう言うこと言うと絶対相手は逃げちゃうよな 書いてるの100人に1人くらいのもんだよ(俺調べ)
270 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 10:27:49.91 ID:CAvee1NA.net] ∧_∧ ミ _ ドスッ ( )┌─┴┴─┐ / つ. 終 了 | :/o /´ .└─┬┬─┘ (_(_) ;;、`;。;`| |
271 名前:デフォルトの名無しさん [2016/12/29(木) 10:52:33.95 ID:OGBMppob.net] >>256 > 三次以上のテンソルとテンソルの掛け算がどう定義されるか、 > ベクトルとスカラのタプル同士の掛け算がどうなるか ちょっとそれ定義してみてくれよ低脳
272 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 10:59:44.31 ID:AIw2bcpm.net] >>259 Numpyも中途半端だけどなぁ。 確かに書くコード量は少ないだろうが、 書いてないコード量は圧倒的に多いじゃん。 でもその定義ならMaximaで解けるよ。 プログラム組むまでもない。
273 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 11:01:35.01 ID:AIw2bcpm.net] >>265 使いみち次第だよ、Goなら正直。 むしろ、何か推してる言語あるならそれでこう書けば万能って言ってくれると、 新しい知識が得られて嬉しい。
274 名前:デフォルトの名無しさん [2016/12/29(木) 12:42:34.63 ID:rvAXIAg7.net] >>266 いや、その式をMaximaとかで解いてプログラムに埋め込むのよ アスペみたいなこと言わんといてくれ
275 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 12:47:44.02 ID:yr0J1az9.net] その代わりPython側も何か書くというイーブンな条件なら良いんじゃね? 何を書くのかしらんけど
276 名前:デフォルトの名無しさん [2016/12/29(木) 12:49:14.73 ID:rvAXIAg7.net] よく考えたら例題がよくなかったな (a+b*c-d*e/f)/(a@f-b@c)-hとかをvector.Combinezxとやらで書けとするべきだった。 まあどうでもいいけどな
277 名前:デフォルトの名無しさん mailto:sage [2016/12/29(木) 22:40:40.45 ID:5yPVbf0y.net] >>268 馬鹿じゃねえの? なら何の多性態もいらねえじゃん、言語には。 >>270 自明でない式に意味なんかねえよ。 サンプルにでもabcdなんて命名する奴に全くセンス自体がないから、そういう発想になるんだろうな。
278 名前:デフォルトの名無しさん [2016/12/30(金) 00:53:59.91 ID:RKFPkfCK.net] >>271 ほーん負け惜しみはいいから書いてみ?
279 名前:デフォルトの名無しさん [2016/12/30(金) 01:13:07.40 ID:S2I7JRvC.net] つーかこいつ線形代数エアプすぎてMaximaとかで解いた結果>>270 みたいな感じのちょっとややこしいベクトルの式が解になることがあることすら理解してなさそう そういう時に演算子オーバーロードは本当にコードを見やすくするのに。 馬鹿すぎて>>259 すら自力で解けないんだろなあ
280 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 07:44:18.97 ID:sL0wWCmI.net] 今時ジェネリクスも無い go は次世代言語として筋が悪い 個人的には、google 信者か動的型言語しか使った事が無い人が go をマンセーしてるイメージがある
281 名前:デフォルトの名無しさん [2016/12/30(金) 08:22:50.47 ID:n0+bjvYh.net] >>274 Google自身もそれほど推してないから。 GoがAndroidバイナリー作れるようになってから1年以上たつわけで、推してたらNDKのようにAndroid SDKからダウンロード出来るようにするはずだよね。
282 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 10:54:37.77 ID:NmKeqyEh.net] ジェネリクスね。。 バカが俺様ライブラリを無駄に作り出すだけじゃん。
283 名前:デフォルトの名無しさん [2016/12/30(金) 11:04:50.67 ID:Sfay42t+.net] https://golang.org/doc/faq#generics Why does Go not have generic types? Generics may well be added at some point. We don't feel an urgency for them, although we understand some programmers do. Go公式ですらこう言ってるのに馬鹿みたいな意見いらないから
284 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 11:08:20.23 ID:NmKeqyEh.net] だから慌てて入れて c++ のテンプレみたいなバカみたいな状況になりたくないつってんだろw
285 名前:デフォルトの名無しさん [2016/12/30(金) 11:12:29.79 ID:Sfay42t+.net] それはお前が決めることじゃない
286 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 12:38:19.14 ID:qVys9VlH.net] generics が無くても困らんのでな
287 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 13:45:01.80 ID:7+wVhCY3.net] C++のテンプレートみたいなのは set<char>みたいに型にフィットしたコンテナを用意するのに気持ち良いけど Javaやっててジェネリクス必要になるから欲しいって人はその設計が間違ってる そうは思わんかお前ら
288 名前:デフォルトの名無しさん [2016/12/30(金) 14:46:08.73 ID:Sfay42t+.net] うっざJavaスレでやれ
289 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 15:46:41.55 ID:7Zd5OH2Q.net] >>273 エアプがなんだかわからんが、手で解けるからやらすんであって、 最初からMaxima使ったら検算できねえじゃん。 書きやすいなんて理由でパフォーマンス落とす意味がわからん、と>>249 で言ってんのに。 情報系の学部生みたいな事言われても苦笑いしか出ない。
290 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 15:48:07.60 ID:7Zd5OH2Q.net] なんでも積むのが最新型な点を通り越しただけっしょ。
291 名前:デフォルトの名無しさん [2016/12/30(金) 16:01:58.78 ID:n0+bjvYh.net] パフォーマンス落とすって… 批判するなら批判する所だけでもちゃんと理解しとこうね。
292 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 16:46:36.97 ID:hOz+Sgq9.net] >>285 指摘は事実を以て、ね。
293 名前:デフォルトの名無しさん [2016/12/30(金) 19:26:31.24 ID:RKFPkfCK.net] >>259 は余裕で手で解けるけどな。線分クラスを始点s方向vで構成されるものとして一つ目の線分をs1,v1二つ目をs2,v2とし、S=s2-s1,V={{-v2y, v2x},{-v1y,v1x}}として、答えはV.dot(S)/det(V)。 このくらいスパって書けばいいのに、検算出来ないとかパフォーマンス落とすとかうだうだ言い訳してカッコ悪いやつだ
294 名前:デフォルトの名無しさん [2016/12/30(金) 19:28:49.78 ID:RKFPkfCK.net] おっと求められた答えそのままではなかった
295 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 21:12:04.72 ID:0uD1Maua.net] 書きやすいなんて理由でC言語以上の高級言語使ってるバカはおらんよね? アセンブリでオーバーヘッドゼロで書くのが真のプログラマー メモリ管理もできないバカは紙とパイナッポーペンからやり直せ笑
296 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 21:24:32.93 ID:vRTC1WE2.net] 30年位時代を間違えてますよおじいちゃん
297 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 21:55:04.63 ID:VqDrYuY4.net] >>287 線分が不明確。 ユークリッド幾何に限られる。 だから情報系の奴って馬鹿だって言われるんだよ。
298 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 21:56:11.76 ID:VqDrYuY4.net] >>289 ネタで言ってるんだろうけど割と合ってるんじゃない? 機械語が予測できる形で落ちない言語はゴミ。
299 名前:デフォルトの名無しさん [2016/12/30(金) 22:09:12.67 ID:RKFPkfCK.net] >>291 本気でそれが問題だと思ってるの? ちなみに俺は化学だ。勝手に決めつけんな
300 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 22:18:57.48 ID:VqDrYuY4.net] >>293 そう言われて反応する時点で同じ穴の狢。 って言われんようにやれよ。 2通り以上に解釈される化学式の表記法とかゴミだなって思うだろ。
301 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 22:22:05.89 ID:VqDrYuY4.net] 書き方の工夫で、一つに絞られる、と言う事をするよりも、 示性式と構造式書いたほうが余程的確。
302 名前:デフォルトの名無しさん [2016/12/30(金) 22:50:00.86 ID:RKFPkfCK.net] 情報系と思ってもらえたようで至極光栄 で、本気でそれが問題だと思ってるの?理解できてないだけだよね。理解できてるなら>>287 の数値は何を表す値を導出してるか書いてね もしくはこの話飽きて来たからClojureの話しようぜ
303 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 22:55:30.78 ID:ToL6TU3u.net] Swiftやってんだけど、おまえらの中
304 名前:カゃもう古そうだな [] [ここ壊れてます]
305 名前:デフォルトの名無しさん [2016/12/30(金) 22:57:34.88 ID:RKFPkfCK.net] 古くはないんだけど、なんか手を出す気もしないなあ
306 名前:デフォルトの名無しさん mailto:sage [2016/12/30(金) 23:02:05.67 ID:ToL6TU3u.net] そもそもプログラミング素人でさ、なんかアプリ作りたいと思ったからswift選んだんだけど、間違い? ほかにやったほうがいいことあるなら教えてください
307 名前:デフォルトの名無しさん [2016/12/30(金) 23:03:36.76 ID:RKFPkfCK.net] Objectice-Cやってた頃はMacアプリ作りたかったのにiOSの本ばかりで手を焼いた記憶があるけど、Swiftはどうなんだろう?
308 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 01:03:03.34 ID:0acoUq44.net] >>296 そりゃ、交点ではなく交点を通る線出してんじゃねえの? ってか、 Clojureはあんまりこう惹かれなさ過ぎてわからんな。
309 名前:デフォルトの名無しさん [2016/12/31(土) 01:39:29.82 ID:kSL6UTz/.net] >>301 残念ながら違う。 ClojureはLispの中ではなんか関数名が綺麗な感じで好きなんだよ。 基本的にクラスは使わずに組み込みのList,Vector,Mapを使うとか、変数は全部イミュータブルとか、一風変わってるけど慣れるとこっちの方が書きやすくて好きなんよ まあHaskellとかと比べると汚いけど、いろんな環境で使えるし、replも使いやすくてちゃちゃっと使えるのがgood
310 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 08:15:21.14 ID:5P7T9Bui.net] このスレの謎のScala押しなんなの? あんなの関数型触ってなかった人が持て囃してるだけでしょ? 真面目に書くとPerl並に汚いコードになるのに
311 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 08:28:01.13 ID:qTR6JDNw.net] >>303 OOP+関数型 JVM 最強やん
312 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 08:34:05.20 ID:pegMHpax.net] F#が流行らなかったんだから そんなのが武器になるとは思えないけど
313 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 08:41:27.20 ID:qTR6JDNw.net] JVMの部分に対するツッコミか? ドトネ自体が流行ってねーだろ、まずよ
314 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 09:09:42.34 ID:pegMHpax.net] そうじゃない CSharperがOOP+関数型のF#へ移行しなかったんだから Javaerも移行しないだろうってこと
315 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 09:54:57.32 ID:qTR6JDNw.net] なるほど Javaerも大概レガシーうんこまみれだからな でもJava8にラムダやStream入ったし、少しは連中考え直すんじゃないか? C#はそもそもF#に乗り換えなくて十分なほど便利に見える (C#はよくしらんが)
316 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 11:02:24.70 ID:0acoUq44.net] >>302 そうなのか、変に煽ってはいかんな。 最初の一歩が辛いけど発想が気持ち良いと言えば俺はErlangが良いと思うな。 実用性もあるし。
317 名前:デフォルトの名無しさん [2016/12/31(土) 11:11:50.12 ID:Mr9jnWHp.net] やはりオーバーロードはあったほうが便利だな
318 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 11:48:39.35 ID:0acoUq44.net] オーバーロードについては言い方変えよう。 軽率に使うやつは馬鹿としておく。
319 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 19:47:18.58 ID:5P7T9Bui.net] アドホック多層は散らばると面倒だよな 最初からジェネリックに書けばいいだけ
320 名前:デフォルトの名無しさん [2016/12/31(土) 20:37:47.46 ID:CS9EEzAV.net] 次世代を制するのはGo 次点でこのままスクリプト言語が他に出ないならばElixer これに気付いていないやつは情弱だからもっと情報を積極的に 吸収したほうがいい。
321 名前:デフォルトの名無しさん mailto:sage [2016/12/31(土) 22:21:32.08 ID:7tMjSoOS.net] Goは次世代というか現実的な選択肢の一つという感じ
322 名前:デフォルトの名無しさん [2016/12/31(土) 23:09:38.24 ID:Mr9jnWHp.net] 次世代はrust
323 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 00:21:12.92 ID:uk+ZZWDP.net] あのGoogleが超最近に出した言語なのに現状これだけ盛り下がってるGoこれから流行っていくってありえるか?
324 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 00:29:30.23 ID:y/0zTBoG.net] >>304 なんでも詰め込めばいいとかバカなんじゃないの。
325 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 00:51:32.52 ID:VtFWW7J2.net] >>304 最低やん OOP部分捨てろ
326 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 01:23:10.78 ID:ltF9gKFQ.net] 参照透過でなきゃ関数型とは認めんよ。 実際のコードは殆ど手続き型で書く癖に イメージ戦略で「関数型」を名乗る偽物の多い事多い事。
327 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 01:30:27.07 ID:0J24YwIc.net] >>318 ほんとこれ
328 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 01:58:04.14 ID:uk+ZZWDP.net] 言語なんて手段でしかないんだから 突然優越感たっぷりにオレオレ関数型定義を宣言されても困る
329 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 02:57:38.67 ID:acF61tOZ.net] >>316 下がってるか…? 結構Go製のもの増えてきたけどな。
330 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 11:47:46.26 ID:wqx7ZaQB.net] >>313 Erlangなら判るがElixirは糞だろ
331 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 12:44:16.18 ID:fRaQvE2f.net] GoとScalaって今から勉強するならどっちがいいの?
332 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 13:16:06.95 ID:0J24YwIc.net] scalaとかゴミなのて
333 名前:デフォルトの名無しさん [2017/01/01(日) 13:36:53.96 ID:b8ZAKc8l.net] >>320 OOPで挫折したのか?
334 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 13:40:12.31 ID:rXsHTVhD.net] Scala最強伝説を祈願してあけましておめでとうございます。
335 名前:デフォルトの名無しさん [2017/01/01(日) 13:42:37.35 ID:Qg1j0Wmf.net] ScalaよりClojureの未来が明けますようお願いいたします
336 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 13:55:18.09 ID:NDuNncrW.net] あけましておめでとうございます。今年こそjvm言語が絶滅しますように…
337 名前:デフォルトの名無しさん [2017/01/01(日) 17:24:23.36 ID:SJYwRSMl.net] 未熟な新言語ならば今後の今は使いづらくても今後の改良に 期待して学びたいと思う。 一方、JVMやマイクロソフトみたいに腐敗したシステムは いくら既存の資産との互換性があったとしても新しいものを 学ぼうという気が起きない。 古いシステム廃止に伴い新システム移行を強制してくるなら じゃあこれを機に別の環境に乗り換えますんでって気分になる。
338 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 17:49:31.12 ID:QliWG2cV.net] MSは最近頑張ってるイメージ
339 名前:名無し集中 [2017/01/01(日) 18:01:48.24 ID:jy2g6db8.net] >>330 C#もだめ?作者の人すきなんだが
340 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 18:14:39.44 ID:SJYwRSMl.net] わざわざC#と書かずにマイクロソフトと書いたんだよ。 C#は嫌いじゃない。
341 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 21:06:03.64 ID:rXsHTVhD.net] でもちょまどさんを前にしたらモジモジして「C#いいですよね」とか言う気なんでしょう? キモオタきも
342 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 21:12:15.02 ID:9MvoRZrQ.net] ちょっ()まどさんのおかげでペチパーも許せるようになった
343 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 21:31:45.89 ID:rXsHTVhD.net] それはありえない ペチパーだけは老若男女一族郎党皆殺しの上晒し首にして当然
344 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 22:15:55.23 ID:uk+ZZWDP.net] F#も良いよ
345 名前:デフォルトの名無しさん mailto:sage [2017/01/01(日) 23:36:31.27 ID:y/0zTBoG.net] >古いシステム廃止に伴い新システム移行を強制してくるなら >じゃあこれを機に別の環境に乗り換えますんでって気分になる。 こういう発想がカス言語機能追加の原動力になってんだろうな。
346 名前:デフォルトの名無しさん [2017/01/02(月) 04:03:16.31 ID:gdAYBpSh.net] >>338 バージョンアップで互換性なくす言語は馬鹿
347 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 04:11:10.89 ID:pb7rNf+H.net] >>326 頭悪そう
348 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 10:14:22.78 ID:9iyonvDZ.net] もうこれ以上糞言語増やさなくていいよ 十分便利な言語が出揃ったっ
349 名前:てみんな言ってるだろ [] [ここ壊れてます]
350 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 12:19:20.43 ID:5B8cWWn7.net] >>341 CやCobolが出たときも当時の人達みんな同じこと思ってそう
351 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 12:31:09.88 ID:GdcUHK9D.net] そうでもない
352 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 12:51:44.30 ID:D033LP4m.net] 技術のキャッチアップができなくなったなら、エンジニアとしてはもう寿命 その後はIT土方かマネジメントで生きるしかない
353 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 13:04:50.20 ID:EcE1aP5C.net] swift最強
354 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 18:25:12.48 ID:1m/cK6rN.net] >>342 Cの頃はもっとユーザー、言語設計者、言語実装者の距離が近かった。 今は遠い。それがクソ言語が作られる大きな理由になってる。
355 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 19:13:01.90 ID:hRjlMCft.net] Haskellなら近いよ!
356 名前:デフォルトの名無しさん [2017/01/02(月) 19:23:51.11 ID:XmNT/ume.net] 特定のIDEとか環境ありきが前提となっている言語は一度氏んだ方が いい。
357 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 22:41:29.99 ID:9iyonvDZ.net] IDEも使えない糞雑魚ナメクジ intellijに見捨てられた糞言語信者は死んで、どうぞ
358 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 22:52:40.90 ID:OVlW98VI.net] >>348 うむ。goなら大体揃うし、作ったあともワンファイル
359 名前:デフォルトの名無しさん mailto:sage [2017/01/03(火) 00:23:18.89 ID:qOafqQyJ.net] Haskellってオワコンなのかな? 主な用途が自身のコンパイラを書くことのまま進展がないけど。
360 名前:デフォルトの名無しさん mailto:sage [2017/01/03(火) 00:32:50.68 ID:8fB2VnKn.net] 開発環境整えるだけで尋常じゃない苦労するはめになったり特定のOSだと動かないなんてことになるよりは IDEさえ落とせばすぐ環境整う言語のが遥かにマシじゃね?
361 名前:デフォルトの名無しさん [2017/01/03(火) 00:37:30.08 ID:sAzrCak7.net] >>351 もちょと言語コア以外のエコシステムのほうにも助力をまわしてほいところ。 素性はいいんのであとは使える周辺とスタータードキュメント整理られれば
362 名前:デフォルトの名無しさん mailto:sage [2017/01/03(火) 18:13:38.86 ID:YaTOHTL4.net] パッケージ管理が cabal から stack になってまともになったと聞くがどうなんだろう。
363 名前:デフォルトの名無しさん [2017/01/03(火) 19:25:56.97 ID:jYOP1H4c.net] >>352 IDEが無ければ何もできないホモには言われたくないですね... 言語への依存性から抜け出せなくなってしまう IDEのボタンクリックしたとき自動発行されるコマンドとか コンソール叩いて問題解決する方法覚えないから
364 名前:デフォルトの名無しさん mailto:sage [2017/01/03(火) 19:43:55.85 ID:AiznZoHE.net] だからなによ
365 名前:デフォルトの名無しさん mailto:sage [2017/01/03(火) 19:45:10.33 ID:ZcRDiYy/.net] IDEではなくエディタとコマンドを使えば成長できる 誰もが通り、数年後に間違いを自覚する道
366 名前:デフォルトの名無しさん mailto:sage [2017/01/03(火) 20:26:30.11 ID:qVjCXJPU.net] Goの実行速度が速いですっていうのは OCamlが速いって言ってるのと同じことだよね? Dやrustの足元にも及ばん
367 名前:デフォルトの名無しさん [2017/01/03(火) 21:12:09.97 ID:Uq62B4BS.net] エディタとコマンド使えば成長できるけど、補完は欲しい Vimもemacsも補完とかのプラグインをちゃんとするのは面倒
368 名前:デフォルトの名無しさん mailto:sage [2017/01/03(火) 21:18:07.41 ID:qVjCXJPU.net] IDEのない言語はコーディングにも悪影響が出てるという。 タイプするの面倒くさいから標準ライブラリの関数名が略字で意味わからんかったりするらしい。 IDEが無いとファイル増えると面倒だから1ファイルにいくつもクラスを定義して保守性が下がったり。 プロジェクトみたいなのも作るの面倒だからって 動的ライブラリや静的ライブラリを作成せずに毎回全部フルビルドするとか。
369 名前:デフォルトの名無しさん [2017/01/03(火) 22:03:37.86 ID:Uq62B4BS.net] 標準ライブラリの関数長いのは可読性も低いと思う
370 名前:ッどな [] [ここ壊れてます]
371 名前:デフォルトの名無しさん mailto:sage [2017/01/03(火) 22:58:15.02 ID:ZeRcLg0V.net] >>360 >IDEのない言語は 今時のエディタ使ってないの? 大抵の言語用の支援機能有るけど。
372 名前:デフォルトの名無しさん [2017/01/04(水) 01:11:27.78 ID:S4XLibkf.net] すいませんcoconutユーザーなんです……
373 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 01:50:54.55 ID:MZRDhGwM.net] DataGridViewCellToolTipTextNeededEventArgs e とか凄いよねw DataGridView.Cell.ToolTipText.EventArgs.Needed こうならんかね DataGridView.Cell.ToolTip.EventArgs.Needed できればこう
374 名前:デフォルトの名無しさん [2017/01/04(水) 02:06:37.88 ID:+9xRXlmE.net] Scalaが没落してRustが急上昇してるけと何があった!!? i.imgur.com/ujNoggx.jpg
375 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 02:20:49.49 ID:cHwoKYKd.net] pythonは次世代言語のくくりに入るという認識でおけ?
376 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 03:24:57.77 ID:sO2gccKh.net] >>365 Rustは半年位前にFirefoxの新しいブラウザエンジンに使うとかで 記事とか結構出たからトレンドが上昇したんだろ >>366 pythonは現役世代
377 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 09:31:28.55 ID:oS0JsegY.net] 遊びで勉強するならRust のが面白そうってのはある。
378 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 09:45:56.11 ID:KKg6qYkQ.net] C言語的な文法だから、その派生のC++やJavaやJSの流れを汲む奴らが調べてそう 関数型とオブジェクト指向のハイブリットだし、そいつらの中でも同じ趣向のScala勢に受けたのか
379 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 10:04:55.29 ID:KKh75lzL.net] まだ正月なのに今日から社畜奴wwwwwwwwwwwwww
380 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 10:07:07.37 ID:KKh75lzL.net] >>365 HaskelはScalaのおかげで下駄はいてるだけ ルーストとかいう言語はMozilaのステマ
381 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 15:59:34.67 ID:AIzwqNfs.net] ルーストって読む人初めて見たw
382 名前:デフォルトの名無しさん [2017/01/04(水) 19:29:31.66 ID:xL7XSQ6Y.net] ScalaアンチはRustについてはどう思ってるの? 関数型なんでもいいからやりてえけどどれがいいか迷ってんだよ 速く結論出せよ。
383 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 20:21:26.05 ID:R3mMJ28k.net] 全然用途が違うわ
384 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 20:54:09.10 ID:jwIM7MLJ.net] Go言語がダメな理由 (Why Go Is Not Good (2014-07-18)by Will Yager) ttp://postd.cc/why-go-is-not-good/ > Goは何も新しいことをしない。 > Goは全てにおいてうまく設計されているとは言えない。 > Goは他のプログラミング言語から退化したものである。
385 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 21:46:39.87 ID:u2CyXKSE.net] >>371 意味不明
386 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 21:55:31.77 ID:xL7XSQ6Y.net] >>375 >イメージキャラのデザイン
387 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 22:21:37.36 ID:+0Y5k0lr.net] , - ―‐ - 、 / \ / ∧ ∧ , ヽ ./ l\:/- ∨ -∨、! , ', / ハ.|/ ∨|,、ヘ |ヽ' ヽ ● ● ノ! l . 〈「!ヽハ._ __ _.lノ | く´ \.) ヽ. ノ (.ノ  ̄ さあ寄っといで 才能のカケラもない \ `'ー-、 ___,_ - '´ カスどもが Go 叩きを始めるよ ` - 、 ||V V|| \ | || || l\ ヽ
388 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 22:30:18.96 ID:R3mMJ28k.net] googleはハッタリばっかだからな
389 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 22:48:17.88 ID:6ooS73gi.net] google社内ではPythonが使われているらしけど Pythonってそんなに良い言語なの?
390 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 23:08:10.23 ID:u2CyXKSE.net] >>380 MITで使われてるってだけじゃない? 機械学習とかは結局Mathematicaだし 速いの欲しかったらFortranだし ところでFortranとヨード卵って語感が似てるよね
391 名前:デフォルトの名無しさん [2017/01/04(水) 23:08:31.74 ID:J+uePkPh.net] pythonは良い言語であることは真実だが googleが使ってるから良いという訳ではない
392 名前:デフォルトの名無しさん mailto:sage [2017/01/04(水) 23:18:52.16 ID:wbEXeosH.net] 昔の行番号BASICみたいなポジションでしょ、Pythonは
393 名前:デフォルトの名無しさん mailto:sage [2017/01/05(木) 01:35:15.02 ID:yCqown6i.net] Goって、 新しい事を放棄して、 複雑に考えるのをやめて単純愚直に設計して、 さらに引き算を繰り返した結果残った、 ホントに馬鹿には使えない言語になっただけのような。 馬鹿でもオートマ車ならどれでも「アクセル踏む」って抽象操作でそれなりに動かせるからな。 だから使えてる気になるけど、でもその機能は必須だと信じて疑わない。 マニュアル車乗れてチェンソー始動できるから、舶用エンジンをエアスタータで始動できる、要はクラッチきって何らかの方法でクランクシャフト回せば良いだけじゃん。方法は各々考えろよw みたいな話を、そんな方法があると信じない人が居るようなもんなんだろう。
394 名前:デフォルトの名無しさん mailto:sage [2017/01/05(木) 03:23:55.68 ID:QhGjq51m.net] Goの冗長さを上手く表現した良いレスだと思った(小並感)
395 名前:デフォルトの名無しさん mailto:sage [2017/01/05(木) 03:24:17.84 ID:RTsEBP8Y.net] 日本語でおk
396 名前:デフォルトの名無しさん mailto:sage [2017/01/05(木) 03:25:25.26 ID:RTsEBP8Y.net] >>385 wwww
397 名前:デフォルトの名無しさん mailto:sage [2017/01/05(木) 06:16:57.27 ID:42rV0dht.net] 3行で
398 名前:デフォルトの名無しさん mailto:sage [2017/01/05(木) 07:32:18.35 ID:AnMF2hlN.net] むしろマニュアル車にあるようなクラッチは残して、 自動運転機能みたいなものを削ったのが go 馬鹿が間違った使い方して事故が多かったから外しましたみたいな。
399 名前:デフォルトの名無しさん mailto:sage [2017/01/05(木) 08:40:03.55 ID:BBOrCYHK.net] >>385 冗長だけど、一番動いたものの効率が良くて、かつ一番言うこと聞く言語だと思うよ。 >>389 そうそう。成り立つために必要な道具は揃ってる。 危なそうなものは、危ないと書かないと書けないようになってるしな。 ナタで刺し身は誰だって作りたくあるまい。
400 名前:デフォルトの名無しさん mailto:sage [2017/01/05(木) 08:43:16.83 ID:hcwYrMOW.net] Google Open Source Blog: Grumpy: Go running Python! https://opensource.googleblog.com/2017/01/grumpy-go-running-python.html
401 名前:デフォルトの名無しさん [2017/01/05(木) 08:54:52.91 ID:rS/TqFdr.net] Goはgc持ってる言語の嫌いなところもそのまま受け継いでるのがなぁ 俺はRustのアプローチのほうが好き
402 名前:デフォルトの名無しさん mailto:sage [2017/01/05(木) 14:06:16.31 ID:+tgtyLjf.net] GoMi
403 名前:デフォルトの名無しさん mailto:sage [2017/01/06(金) 01:42:01.86 ID:JzQSK9Gh.net] >>391 これpython2系かよ
404 名前:デフォルトの名無しさん [2017/01/08(日) 01:27:02.78 ID:YWYSDpb5.net] Goは関数型じゃないからなぁ ScaraもJava臭がするし やっぱ学ぶならRustかな
405 名前:デフォルトの名無しさん mailto:sage [2017/01/08(日) 23:21:07.52 ID:zNv0/ewK.net] 勉強するならHaskell 実用ならF#
406 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 00:18:26.59 ID:Dm7q6S9e.net] 勉強するならScala 実用ならScala やSN1
407 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 18:04:58.00 ID:zt+XskRh.net] Fregeはいいぞ
408 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 18:31:23.77 ID:Dm7q6S9e.net] そんなハスケルパクの無名言語いらんわ禿
409 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 20:28:50.84 ID:zt+XskRh.net] >>399 パクリじゃなくてJVM実装が目的だぞ Fregeはいいぞ
410 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 21:00:11.79 ID:9ACblGiY.net] うるせー禿!
411 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 21:45:30.60 ID:YA
] [ここ壊れてます]
412 名前:uw1D1o.net mailto: 人は他人を罵倒するとき、自分がもっとも気にしていることを題材にする傾向があるらしい [] [ここ壊れてます]
413 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 22:08:04.91 ID:4xLqZyPu.net] Haskell、今はスノッブな人たちが他人と区別するためのファッションに使ってる側面があるけど、 今後、義務教育でプログラムを学んだ層が働く頃には、考え方は常識になるんだろうな。
414 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 23:43:18.79 ID:JTQclrck.net] 考え方だけだな。 遅延評価はたぶん流行らん。 さんざんデバッグしずらいことが言われまくってる。
415 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 23:44:01.52 ID:9ACblGiY.net] せやな
416 名前:デフォルトの名無しさん mailto:sage [2017/01/10(火) 09:24:07.72 ID:pkH5q+Un.net] Go and Dogma https://research.swtch.com/dogma Remember that none of the decisions in Go are infallible; they’re just our best attempts at the time we made them, not wisdom received on stone tablets. If someone asks why Go does X instead of Y, please try to present the engineering reasons fairly, including for Y, and avoid argument solely by appeal to authority. It’s too easy to fall into the “well that’s just not how it’s done here” trap.
417 名前:デフォルトの名無しさん mailto:sage [2017/01/10(火) 23:02:05.76 ID:v/OI4yM1.net] >>401 プログラマの偉人はだいたい禿げてる 禿げてないのはヘジたんぐらいのもん ヘジたんもやばそうだけど
418 名前:デフォルトの名無しさん mailto:sage [2017/01/10(火) 23:36:03.65 ID:PjuH0Yrh.net] ジョン・マッカーシーはフサフサだった
419 名前:デフォルトの名無しさん [2017/01/11(水) 11:11:08.07 ID:wls9g7W6.net] ストールマンもハゲじゃなかったな
420 名前:デフォルトの名無しさん [2017/01/11(水) 17:06:43.26 ID:O2me4zYJ.net] 歌舞伎座.tech#13「Elixir 勉強会」 2017/01/11(水) 開場:18:57 開演:19:00 ニコニコ生放送 lv286846512 zcx65czx4
421 名前:デフォルトの名無しさん [2017/01/11(水) 17:21:23.56 ID:wls9g7W6.net] 2ちゃんって川上さんと喧嘩したんだっけ live. nicovideo. jp/ watch/ lv286846512
422 名前:デフォルトの名無しさん mailto:sage [2017/01/12(木) 21:25:14.59 ID:l7q6mhnn.net] このスレ的にSwiftってどうなの? なんか独自色強すぎて近づきづらいんだけど。 あと意識高い人達がやたら騒いでる印象。
423 名前:デフォルトの名無しさん mailto:sage [2017/01/12(木) 21:50:25.37 ID:eHeLEFbF.net] swiftは現世代だろうが
424 名前:デフォルトの名無しさん mailto:sage [2017/01/12(木) 22:24:12.58 ID:D/kCxt4Z.net] IOSのためにしょうがなく使うやつやろ
425 名前:デフォルトの名無しさん mailto:sage [2017/01/13(金) 01:16:04.00 ID:nRnNKqfV.net] macOSやiOSのアプリ作る上では実質一択だから議論するまでもないよな それ以外で使うことなんて殆ど無いし
426 名前:デフォルトの名無しさん [2017/01/13(金) 09:36:11.23 ID:89YmVUl6.net] Swift3はええ言語やがな 林檎独占はもったいない
427 名前:デフォルトの名無しさん mailto:sage [2017/01/13(金) 22:03:58.24 ID:uRaSOz6f.net] 開発者がテスラモーターズに引き抜かれて大混乱してるね、Swift
428 名前:デフォルトの名無しさん mailto:sage [2017/01/13(金) 22:57:52.88 ID:u2Ry7481.net] 「未来とは、今とは違う時間――より良き世界を指す言葉ではなかったか? そこに、ジオン・ダイクンが夢見た人の進化と調和は無い。 ジオンの名を受け継ぐ者として、一年戦争の惨禍を引き起こした者として、 私たちには責任があるのです! 現実を現実と受け容れる
429 名前:セけでは――」 go は間違ってないけどフルフロンタルぽいんだよ。 [] [ここ壊れてます]
430 名前:デフォルトの名無しさん mailto:sage [2017/01/14(土) 02:16:40.03 ID:SauIKXvW.net] Scalaはユニコーン ScalazはNT-D
431 名前:デフォルトの名無しさん mailto:sage [2017/01/14(土) 08:06:28.69 ID:w5rWI0QQ.net] ユニコーンではなくオワコーンの間違いでは?
432 名前:デフォルトの名無しさん mailto:sage [2017/01/14(土) 08:54:34.36 ID:Ar++pxuH.net] だれうま
433 名前:デフォルトの名無しさん mailto:sage [2017/01/14(土) 11:02:38.34 ID:SauIKXvW.net] 始まってるプログラミングコンテンツは南南や?
434 名前:デフォルトの名無しさん [2017/01/14(土) 14:28:39.82 ID:BE8dMuIV.net] >>422 最近はじまったばかりのEta lang
435 名前:デフォルトの名無しさん mailto:sage [2017/01/14(土) 15:04:33.35 ID:SauIKXvW.net] >>423 演算子はSi No Ko Syoか?
436 名前:デフォルトの名無しさん mailto:sage [2017/01/14(土) 17:35:29.36 ID:zqw+i5es.net] 否認
437 名前:デフォルトの名無しさん mailto:sage [2017/01/15(日) 10:04:02.63 ID:S6PWqiSK.net] rustをrust-lang.org/book読みながら触り始めてみたけど確かにめっちゃ安全って感じがする
438 名前:デフォルトの名無しさん mailto:sage [2017/01/15(日) 10:23:09.09 ID:IlUPDinI.net] バックがモジラとか始まる前から負けてる感
439 名前:デフォルトの名無しさん [2017/01/15(日) 10:33:13.26 ID:bhs1F35V.net] こういうのに投資する日本の大手企業が皆無 IT関連に近い企業でも… 経営センスがなさ過ぎる ドワンゴが最強囲碁AI開発宣言したら 直後にalpha GOが出るとか お笑いのレベル 日本は終わっとるね
440 名前:デフォルトの名無しさん mailto:sage [2017/01/15(日) 10:36:42.12 ID:e6h5RF1E.net] アメリカ以外の国は?
441 名前:デフォルトの名無しさん [2017/01/15(日) 10:42:34.69 ID:bhs1F35V.net] 欧州は金は出せなくてもlinuxのlinus君とか 人材が出せる。 が日本はそっちもお寒い限り。
442 名前:デフォルトの名無しさん mailto:sage [2017/01/15(日) 11:06:24.97 ID:e6h5RF1E.net] 欧州???国って言ってんだけど???? 100歩譲って認めてやるがそれ以外は???? 世界の中で日本が特別に劣ってる証拠あるの??? やっぱパヨクの卑日ポルノか????
443 名前:デフォルトの名無しさん mailto:sage [2017/01/15(日) 11:07:16.61 ID:e6h5RF1E.net] 自分が雑魚でゴミなのを企業や国のせいにしてるだけか。
444 名前:デフォルトの名無しさん [2017/01/15(日) 11:23:39.35 ID:JVFXGhWK.net] googleの創業者のなかに日本人が居ないこと自体既にマズイ。 創業はロシア、アメリカ(母ユダヤ系)の2人か。 アメリカかIT産業の創業者は海外の移民が多いと言うが 庶民にも聞こえるような大手企業の創業者に日系のプレイヤーが居ないのは残念。 禿電? あれは日本に寄生した北朝鮮系だな。
445 名前:デフォルトの名無しさん mailto:sage [2017/01/15(日) 11:48:46.47 ID:ezeuue3x.net] 日本は全体主義で相互監視が酷い。毛色の違う異物への攻撃性が異常に高い 集団から逸脱して、新しいものを作ったり、新しいことを始めるのには根本的に向いてない 諦めて何か他の得意なことを強みにしたほうが良い ITの分野で日本人が強く出れる部分はどこだろう?
446 名前:デフォルトの名無しさん [2017/01/15(日) 12:48:51.29 ID:nEHh2xZn.net] 次世代言語の議論をしろ
447 名前:デフォルトの名無しさん mailto:sage [2017/01/15(日) 13:37:17.55 ID:bMxmBfkn.net] もう少し流行って、かつ、 armが一級になって、staticなバイナリが正しく作成されるようになれば使うんだけど。
448 名前:デフォルトの名無しさん [2017/01/15(日) 22:46:08.78 ID:o+7bTZNn.net] これから10年間超高給とれる言語という意味の次世代言語なら、アセンブラとCOBOLで確定。 メンテナンスできる人材が定年で消えたから、引っ張りだこです。
449 名前:デフォルトの名無しさん mailto:sage [2017/01/16(月) 00:13:25.16 ID:WtkYzKjH.net] >>437 君10年前も同じ事言ってたよね
450 名前:デフォルトの名無しさん [2017/01/16(月) 00:25:00.39 ID:gqa5wV4S.net] >>437 COBOLは金融系だから高給かもしれんが、アセンブラって高給もらえる?
451 名前:デフォルトの名無しさん mailto:sage [2017/01/16(月) 11:28:50.29 ID:ByzsO0Om.net] こんなレガシー言語リプレースされるだけやん
452 名前:デフォルトの名無しさん mailto:sage [2017/01/16(月) 11:39:43.83 ID:1jE1rrTm.net] アセンブリ言語の仕事は 有るか聞くような程度のやつに回る仕事ではない
453 名前:デフォルトの名無しさん mailto:sage [2017/01/16(月) 21:27:23.95 ID:PFk6C6RG.net] 10年、20年前も同じようなこと言ってたわけで。
454 名前:デフォルトの名無しさん mailto:sage [2017/01/17(火) 01:10:20.90 ID:MyNqNbNL.net] プログラマー失格なんだろうが名前がかっこわるい言語や処理系は使う気がおきない・・・ GoとかGoとかGoとか
455 名前:デフォルトの名無しさん [2017/01/17(火) 01:43:54.38 ID:SfC1RQBu.net] その点ElixirとPhoenixは厨二心くすぐる良いネーミング
456 名前:デフォルトの名無しさん mailto:sage [2017/01/17(火) 06:57:19.29 ID:F7nL193/.net] 実用性はないだろうけどhaskell面白い
457 名前:デフォルトの名無しさん mailto:sage [2017/01/17(火) 07:25:18.30 ID:mlYpDpZm.net] >>443 ググルのくせにググラビティの低い単語使うなって感じだわな それとも間違えて検索したやつも釣る作戦なのか?
458 名前:デフォルトの名無しさん [2017/01/17(火) 07:28:23.67 ID:o6RPtWbY.net] その点ではHoogleがあるHaskellは使いやすい
459 名前:デフォルトの名無しさん mailto:sage [2017/01/17(火) 17:19:23.23 ID:1PLMnPDO.net] >>443 PHPとかVBもかなり恥ずかしい
460 名前:デフォルトの名無しさん mailto:sage [2017/01/17(火) 23:38:44.00 ID:mlYpDpZm.net] >>448 名前だけじゃなくて中身もゴミだからセーフ
461 名前:デフォルトの名無しさん mailto:sage [2017/01/17(火) 23:38:54.26 ID:tEbt44iK.net] Haskellはうんこ 基礎部分に遅延評価なんて必要なかったのに、これ入れたせいでまともにデバッグもできない でも好き
462 名前:デフォルトの名無しさん [2017/01/18(水) 00:27:03.29 ID:8wN4arsI.net] >>450 ツンデレめw
463 名前:デフォルトの名無しさん mailto:sage [2017/01/18(水) 01:22:48.98 ID:89m8Rmgi.net] ここまで、Elmの話題が皆無…
464 名前:デフォルトの名無しさん mailto:sage [2017/01/18(水) 01:23:42.53 ID:mjM2FghJ.net] >>450 きしょ
465 名前:デフォルトの名無しさん mailto:sage [2017/01/18(水) 09:02:36.47 ID:lnNGIUHh.net] >>452 なぜかHaskell使いに仲間意識持たれて初心者が勝手に遠ざかっていくElmくんかわいそう
466 名前:デフォルトの名無しさん mailto:sage [2017/01/18(水) 20:16:05.51 ID:mPXW+ZQ1.net] 趣味ですらアセンブラが活躍する場所がなくなってきたな 昔はちょっとしたパズル感覚で遊んでたのに、今は開発環境見つけるだけで一苦労 手軽にアセンブラしようと思ったら組み込みになってしまう
467 名前:デフォルトの名無しさん mailto:sage [2017/01/18(水) 20:50:56.98 ID:gekV74Sk.net] JITが大流行りという印象だが
468 名前:デフォルトの名無しさん mailto:sage [2017/01/18(水) 22:47:06.89 ID:47oqHyXA.net] Erlang読みにくいって思ってたけど、ちょっと触ってみよかな
469 名前:デフォルトの名無しさん mailto:sage [2017/01/19(木) 00:11:30.37 ID:CpaC5IR5.net] やっぱScalaよりKotlinだよね
470 名前:デフォルトの名無しさん mailto:sage [2017/01/19(木) 01:42:08.57 ID:zHR4QFYC.net] ちょっと待って.このスレ, Rust に対して「関数型」って位置づけで理解してるの!?!?!? 確かに Haskell あたりから良い言語機能パクってるし,そう見えても仕方ない部分はあるかもだけど, Rust はどこからどう見ても現在の C++ の位置(システムプログラミング)を置き換える大本命でしょ. 自分の周りを見てみる限り,トップレベルで C++ を理解して使っている人ほど Rust に惹きつけられてるって印象なんだけれど…….
471 名前:デフォルトの名無しさん [2017/01/19(木) 02:50:28.41 ID:RXOn32X2.net] >>459 言語のパラダイムとその目的は直交する概念でしょう システムプログラミングを目的とする言語は常にC++的パラダイム、 まあこれもなんのことか分からんが、 でなければいけないというのはおかしい むしろ違うからこそ置き換えが生じるなんてこともあるだろ
472 名前:デフォルトの名無しさん mailto:sage [2017/01/19(木) 06:24:55.96 ID:/jbUfW0M.net] >>459 言語機能にHaskell云々とかが謎 一意型はCleanとかだし、traitとかもないよ メモリ管理的にも基本は紛うことなくC++で間違いない むしろなんでそう思ったの?
473 名前:デフォルトの名無しさん mailto:sage [2017/01/19(木) 07:41:32.90 ID:CpaC5IR5.net] モジラだから始まる前から負けてる
474 名前:デフォルトの名無しさん [2017/01/19(木) 07:43:34.72 ID:RXOn32X2.net] はい、Goの方が好きです
475 名前:デフォルトの名無しさん [2017/01/19(木) 10:52:15.29 ID:WfPlwH7z.net] >>459 お前はいきなり何言ってるの? 誰が「関数型だ!」なんて言ってる? 関数型の特徴 *も* あるってだけだろ?
476 名前:459 mailto:sage [2017/01/19(木) 12:25:38.64 ID:zHR4QFYC.net] すいません.スレに Rust に対して関数型だという認識でいるっぽい レスが散見されたので脊髄反射で意味不明なこと書いてしまいました. 無視してください.お騒がせしました.
477 名前:デフォルトの名無しさん mailto:sage [2017/01/19(木) 12:36:13.78 ID:3cGCPrfQ.net] 459の人気に嫉妬 (C++屋)
478 名前:デフォルトの名無しさん mailto:sage [2017/01/19(木) 17:34:52.40 ID:/jbUfW0M.net] >>465 言い訳も意味不明すぎる… 人のせいかよ
479 名前:デフォルトの名無しさん [2017/01/19(木) 23:15:35.47 ID:ywtfLg9V.net] >>438 >>442 うちの会社は去年、定年でアセンブラ職人が文字通り職場から消えた もう仕事請け負えなくなった
480 名前:デフォルトの名無しさん mailto:sage [2017/01/20(金) 23:05:58.25 ID:nqPs9mCA.net] WikipediaのGoの記事でパラダイムの欄にコンパイラ言語って書いてあるんだけど あれどういう意味?
481 名前:デフォルトの名無しさん [2017/01/22(日) 00:24:26.64 ID:JSjE+wfT.net] 実装が主にコンパイラであるとか、その程度じゃないの
482 名前:デフォルトの名無しさん mailto:sage [2017/01/22(日) 01:03:58.55 ID:34mb+epJ.net] ”コンパイラ”という言葉の使い方間違えてない???
483 名前:デフォルトの名無しさん mailto:sage [2017/01/22(日) 01:36:33.15 ID:EXKusZK8.net] Cが歪んだ欠陥の多い英語なら、RustはエスペラントでGoは土方の符丁。 それが次世代かと問われればまぁ悩むが、少なくともエスペラントよりは既に役に立ってる。
484 名前:デフォルトの名無しさん mailto:sage [2017/01/22(日) 12:47:11.76 ID:gR66eMPN.net] こういうRust触ったこともないのに語るやつ多すぎ 仕様変遷しまくってる事すら知らんのだろうけど
485 名前:デフォルトの名無しさん mailto:sage [2017/01/22(日) 15:18:10.45 ID:5oGRvfyZ.net] じゃあLispはラテン語かね?
486 名前:デフォルトの名無しさん mailto:sage [2017/01/22(日) 16:00:53.39 ID:Y6eD6Fzb.net] そもそもお前らほんとにスレで上がってるような新興言語実際に使ってるんか?
487 名前:デフォルトの名無しさん mailto:sage [2017/01/22(日) 16:48:44.65 ID:LnKWEMsE.net] __ .,-、 │゙} | .| ,「゙'',! ,,.,, .│.| lニ二" 二,,コ | .l l、.゙l、 | .| | | | .| l、.゙l | .| __} .| l ゙l ,r、 . l .゙l .,i-''''二二゙''、 | .| ./┌‐i、 ,"ヽ,、 l ヽl i l-┘ ゙'''" | ! ゙l,,〕 ヾ‐''_,/`゙'-" ヽ ,/ ,i--‐'゙,/  ̄ ゙''''" `'''^´
488 名前:デフォルトの名無しさん mailto:sage [2017/01/22(日) 16:53:40.51 ID:x/I4pfhT.net] この記号の羅列何?
489 名前:デフォルトの名無しさん mailto:sage [2017/01/22(日) 21:14:13.78 ID:oEaDlbYA.net] >>473 触ってるよ。エスペラントよりもっとひどくなってるな。 変遷しまくる程度にしか煮詰まってないか、必要でない機能がまだまだあるんだろ。 しょーじき、賢いプリプロセッサ程度じゃん。今の状態。 >>475 GoとErlang使ってるよ。あとHaxeと。
490 名前:デフォルトの名無しさん mailto:sage [2017/01/22(日) 23:47:16.62 ID:34mb+epJ.net] >>478 すげー変態的 趣味だろ?業務じゃありえんやろ?
491 名前:デフォルトの名無しさん mailto:sage [2017/01/22(日) 23:57:03.89 ID:oEaDlbYA.net] >>479 Goはふつーに実務で使ってる。 ErlangはCouchDB周りで触ら
492 名前:ざるを得ないときには少し読むけど、それ以外は趣味。 Haxeは完全に趣味。 [] [ここ壊れてます]
493 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 02:21:05.80 ID:2bmTlfe7.net] >>478 明らかに触ってない人間の解説乙 どこがプリプロセッサやねんw
494 名前:デフォルトの名無しさん [2017/01/23(月) 08:52:10.29 ID:+G4albEd.net] たぶんプリプロセッサがわかってないんだと思う
495 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 10:43:46.85 ID:+k8JNm+i.net] >>481 好きな人にはそうとしか見えないんだろうね。蓼食う虫も好き好きだし。 他の言語で十分なんとでもなる事をキツめのlintとマクロ展開でごまかしてるだけにしか見えん。 よくできたCじゃん。
496 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 14:12:35.24 ID:uB7NxMna.net] >>1 一番進み過ぎた言語 Prolog こそ次世代言語の本命でしょう。
497 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 17:18:39.16 ID:uf3hmdYR.net] 今まで「u'日本語'」じゃないと文字化けしていたのが Python 3.6で試したら「'日本語'」でも文字化けしなくなった。 いつのバージョンからuなしでも文字化けしないようになりました? import win32com.client shell = win32com.client.Dispatch('WScript.Shell') shell.Popup('日本語')
498 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 18:41:30.80 ID:2bmTlfe7.net] >>483 最近のlintは型推論まであるのか、そりゃすごいな ところで素朴な疑問なんだけど、プログラミング一切できない人が、なんでプログラム板の次世代言語のスレで議論できると思ったの?
499 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 18:47:35.91 ID:+k8JNm+i.net] >>486 うーん、出来るけどね。 Roslynなんかはコンパイルとしての動きとは別にちゃんと解釈して、インテリセンス出したりしよるけど。 文字列としてではなく、ASTとして解釈するたぐいのlinterならちゃんとやりよるよ。gometalintとか。 見聞狭いね。議論出来るの?
500 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 18:57:29.08 ID:+k8JNm+i.net] こういう煽りとか受けると、Rust使いの人って、Ruby使いそっくりだな、って思うわ。 自分が使ってるものが一番であるべきで、別の解はありえないと思ってるとか、 その中のいびつな部分や、別に言語が担保するべきでない部分まで肯定する所とか。 あのマクロ定義、間抜けすぎるだろ。
501 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 20:08:59.71 ID:2bmTlfe7.net] >>487 RoslynにLint関係ねえじゃんw しかもastと型推論は別なのに、それすらわからんとか 最初に叩いて煽ったのもそっち 知識アピールはいいけど、墓穴掘りすぎだぞニワカ
502 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 20:14:39.55 ID:2bmTlfe7.net] >>488 お前が大した知識ないのはバレバレ しかもどんどん自分の意見の適用範囲広げてるけど、 その突っ込んでる内容、あらゆる高級言語に当てはまる詭弁ばかり 最初から煽る目的で議論する気ないくせに良く言えるな
503 名前:デフォルトの名無しさん [2017/01/23(月) 20:32:56.32 ID:a4+az9Fs.net] そんなことよりClojureの話しようぜ
504 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 22:52:08.68 ID:+k8JNm+i.net] >>489 お前はちょっとずれてる。 他の高級言語で出来るなら他の高級言語使えば良いんだよ、と言ってんの。 歪にでも機能盛るのなんか簡単なんだから。 Cのプリプロセッサの闇マクロとレベルが変わらん。 と言うか、ごく最近のCならその辺割と無理矢理でも対応してる。autoとか。 叩いて煽ったって言ってるが、被害妄想も甚だしいだろ。 ただの相応の評価だよ。 ErlangやらGoみたく、抽象化に成功してる訳でなく、ただの意識高い言語でしかない。エスペラントそのもの。 別なのに、って言うが型推論するためには、何が必要か考えれば、自明でしょ。 余程、知識が無いのが悔しいんだなあとしか言えんな。
505 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 01:43:26.86 ID:AL5KdU5e.net] めちゃくちゃな位置に読点打つのやめてくれ
506 名前:デフォルトの名無しさん [2017/01/24(火) 02:59:17.73 ID:nvNd8iP1.net] どうでもいいけど最近(というほど最近でもないけど)autoが変わったのはC++な
507 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 09:41:48.45 ID:X6a8J5Il.net] こういうやつがRustに来ないようでなにより
508 名前:デフォルトの名無しさん [2017/01/24(火) 10:10:39.11 ID:9yrS8iWN.net] numpyみたいな配列演算が出来て、高速なバイナリを吐ける数少ない言語、Fortean
509 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 10:35:47.27 ID:tjYeiy24.net] 中二病御用達
510 名前:デフォルトの名無しさん [2017/01/24(火) 12:35:58.80 ID:ZplzBBh2.net] やはり、日本ではRubyがこれからの主流になっていく。 Rubyは、わかりやすくて、とても便利な言語になっていくよ。
511 名前:デフォルトの名無しさん [2017/01/24(火) 12:41:09.69 ID:v4PNRBuu.net] https://youtu.be/quIHgwuF6r4
512 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 12:45:34.16 ID:1jD/G+od.net] >>498 無理だよw Haskellが有るから
513 名前:デフォルトの名無しさん [2017/01/24(火) 13:06:07.13 ID:ZplzBBh2.net] Haskellってどんな言語?
514 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 13:41:46.26 ID:8DG1wjio.net] 個人的な印象だけど、自己満足のオナニーコードゴルフをするための言語?
515 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 13:44:01.82 ID:qWEELi6g.net] ゲイが好んで使う言語教えて
516 名前:デフォルトの名無しさん [2017/01/24(火) 14:19:38.30 ID:wfxe1Gqr.net] >>496 Julia python
517 名前:デフォルトの名無しさん [2017/01/24(火) 15:39:09.84 ID:pLdiQDlt.net] >>504 Juliaはバイナリ吐けないだろ!
518 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 15:45:45.60 ID:PRTM8AJA.net] >>505 馬鹿はだまってろ
519 名前:デフォルトの名無しさん [2017/01/24(火) 16:25:37.57 ID:pLdiQDlt.net] >>506 どう馬鹿なのか説明しろ
520 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 17:54:48.16 ID:vEK0QlhR.net] >>498 世界で一番醜い言語引き合いに出して面白い?
521 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 21:22:20.55 ID:GIi5sfFU.net] これからはVHDLだよ。
522 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 00:03:19.00 ID:lIO6GAcv.net] プリティで プロプロ ふたりは プリプロセッサ
523 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 06:03:53.20 ID:X1/NSe9Y.net] >>492 Cのautoは今でもANSIのままだろw これでCすら触ったことないのがバレたとw この調子じゃCやRustやRubyどころか、GoとErlangも触ってないなw で理解できない素人が背伸びすると、 平気で「賢いCプリプロセッサ」とか異次元方向の妄想した上に、 理解できない言い訳に、使ってる奴は意識高い系だからとか言っちゃうw プログラマならRustの種々の型機能やメモリ機能を軽く紹介読むか、触ればCとは別種とすぐわかる つかGoやErlangみたいのは、経緯も機能も抽象化じゃなく、どちらもよく考えられた特化だよ どちらも苦手なものは冗長になり、抽象でもなんでもない 抽象化してるのは記述側であって、それこそast変換やマクロの担当領域 で、なぜか流れでお前の言う意味の抽象化に優れるRubyを貶しとるのも、また墓穴だなw そもそもジェネリックプログラミングもさせてくれない物を抽象化とか、 さらにRustの文脈でGoと明らかに対照的なErlangと比べてる時点で、なーんもわかっとらん 触ってもないのにErlangやGo出さないでくれな?
524 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 08:45:34.77 ID:JgDNrEDV.net] 必死だな。
525 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 11:11:42.72 ID:rV9IVXhE.net] なんでRustがあんな褒め称えられてるのかわからん。 書きたいことも書けないコンセプト段階からの欠陥言語。そのうえ全く言語仕様が安定してないくせにバージョン1を名乗っていやがる。 なにより開発元があの悪名高いモジカス。 使ってるやつの名簿を詐欺師に売ったら儲かるだろうなとしか思えん。
526 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 12:30:09.23 ID:a41bI17H.net] LLVMのフロントになっててemscriptenでwasmに持ってけるのってどれ? C/C++, OCaml, Rustは出来る(安定とはいっていない)っぽいんだけど
527 名前:デフォルトの名無しさん [2017/01/25(水) 13:37:52.95 ID:jalhm0fE.net] 書きたい事が書けないって普段良くない設計でばかり書いてるんじゃないかなぁという印象
528 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 14:58:30.01 ID:qs8Et3LQ.net] >>515 Rustが受け入れない設計は悪い設計とか信者はお務め御苦労様ですとしか言えんわ。 ポインタ引き回してアロケーションの回数抑えるみたいな当たり前の設計も良くない設計か?
529 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 16:10:34.78 ID:oqpNR6jO.net] アロケーションの使い回しってCとかForthくらいでしかやらんと思うんだが、そんな良い設計かね?リスクに見合うほどのリターンが得られるのか疑問 スレタイにある次世代言語の中でアロケーション使い回しが一応可能なのはRustだけなのにRust叩きに使うのもおかしい あと、1.0より前の仕様変更とそれ以降の仕様追加を一緒にしちゃいけないよ。1.0で動くコードは1.14でも動く nightly使ってて仕様変更が激しいと文句言ってるなんて流石に無いと思うが
530 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 17:13:18.29 ID:qs8Et3LQ.net] >>517 スレタイ言語の中で「システムプログラミング言語」と自称してるのはRustだけのはず システムプログラミング用途というからにはメモリ領域を人の手で管理することができないといけないのに、 メモリ領域の操作に異常に制限がかかっていて単純なポインタ引き回しすらコンパイラを通してくれないのは コンセプトの時点で矛盾していて使えたもんじゃない欠陥言語といえる。 プログラム全体をunsafeで囲わないと何もできやしない。 スレタイの他の言語は別にシステムプログラミング言語とは自称してないからこの点についてはどうでもいい。 あと「言語仕様が安定してない」は自分の日本語が悪かった。 正しく言うと「言語仕様が完成していないのにバージョン1を名乗っている」だ。 stableでは全く機能が足りないからと、事実上nightlyがスタンダード化してる状況が言語として最悪だということがいいたかった。 バージョン1.0から今までで後方互換性が崩れたことがないのはその通りで、そういう意味では安定しているのは間違いない。
531 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 21:34:41.13 ID:Lq+TsBQo.net] まあ、Rustがメインになることなんて無いんだからどうでもいい話だわ そんな事よりもっと前向きな話しようぜ
532 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 00:24:16.43 ID:gI5T8RS3.net] そもそもGoよりマシって話はあってもRustを褒め称えるレスなんて無くね
533 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 01:22:41.08 ID:U+wIxi6K.net] Rustは存在が破綻してるから言語の選択肢に入ってること自体が異常だから。 次世代言語と称してMalbolgeがリストに入ってたらちょっと待てってなるだろ?
534 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 01:35:23.63 ID:ReQNma6u.net] Rustは確かにC++的な意味で糞だけど 仕様すら読めない半可通が叩ける言語でもないがな
535 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 02:15:11.80 ID:HYQr5vgB.net] ものすごい抽象的だけど、 コードをきれいに書く力って、後天的に身に付けられるものかな? 職場のオッサンが、マジでゴミみたいなコード書いてて しかもそいつが年功序列でレビュワーやっててすごい迷惑 Effective Javaもリーダブルコードも何も勉強してないような、 3年目の俺から見ても汚物にしか見えないコード書いてるんだ 俺もサボってたら将来あんな薄汚いオッサンになるかと思うと恐怖でしかない でもサボるサボらずに関わらず、コード力が先天的な頭のよさで決まるのだとしたら・・・・
536 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 02:17:15.59 ID:HYQr5vgB.net] 付け加えて、言語で糞コードをなくせるか? についても気になっている 少なくとも、PHPが糞コードを幇助する糞言語なのは 身をもって知っている
537 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 09:22:54.52 ID:a0I3whVq.net] JS、PHPは糞しか生まれない
538 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 10:09:18.60 ID:DaX/1RQ+.net] クソしか生まない言語はあれど、 クソを生まない言語はないと思われる。 あと無能な老人が害悪なのは今の日本の象徴だから割とどうしようもない。
539 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 10:14:14.69 ID:RJ0Hpx43.net] コーダーは糞袋
540 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 12:39:33.06 ID:bsKQCPlQ.net] swiftは同じ処理を書くと同じコードになるって聞いたんだが
541 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 12:43:36.92 ID:7kwoEq8b.net] スポーツと並べるとわかりやすいんじゃない? 正しく練習しなきゃ上手くならない。道具がクソだと下手になる。
542 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 17:57:09.84 ID:g5wYhpw2.net] そのうちIntelliSenseみたいなのがめちゃくちゃ高性能になって糞コードも勝手に直してくれるようになるでしょ
543 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 20:58:32.08 ID:gWo2TLzQ.net] >>523 どんな感じなのがくそだったん? 自分はプログラムを生業にはしてないから、 差し支えなければプロの視点を教えてほしい。
544 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 22:22:51.25 ID:KFyW57Yg.net] 結局は都合の悪いことに対して 自分で改善しようとするか無視するか、人のせいにするかってことだな。 はっきりいって技術のあるなしでも言語の良しあしでもない。
545 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 23:47:59.96 ID:RxLp9HsT.net] 死んでいく老人の話じゃなくて次世代言語の話しろよ
546 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 00:04:55.72 ID:Qhk5mtQo.net] Fortranの未来について語ろう
547 名前:デフォルトの名無しさん [2017/01/27(金) 01:24:47.99 ID:NQntvNS5.net] >>523 > ものすごい抽象的だけど、 > コードをきれいに書く力って、後天的に身に付けられるものかな? もちろん。 ただそのためには自分でコード書いて他人のコードや良き本も読んで、とそれなりに努力をしないといけない。 音楽家しかり小説家しかり。 彼ら彼女らはいつも凄い作品を書いてきたわけじゃない。 凄い作品の後ろにはたくさんの没作品があったことだろう。 ただ、ま、世の中にはその範疇から外れた天才もいるだろうけどね。 で、そのおっさんはそういう努力をしないで歳だけ重ねてしまったんだろうなぁ。 年功序列という制度の悪いところでもあるよなぁ。
548 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 01:35:56.30 ID:62FFmlgo.net] なんかきもい
549 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 01:40:40.83 ID:x0qfwiEe.net] ┏━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ヽ,.-、, ' ________ さ い た ま 銘 菓 .┃ ┃‐(.゚∀゚)‐<風が語り掛けます _|_ ┬─ ┬─ .┃ ┃ , '`,、',、 二二二二二二二二 .| .ノフ ノ口 ┃ ┃∩( ゚∀゚),<うまい、うますぎる 食曼 豆頁 ┃ ┃ Y イ  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ (株)十万石ふくさや┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━┛
550 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 02:47:21.08 ID:lXZFJWwl.net] Android上で動かない言語って 次世代のカテゴリに含めても良いのだろうか・・・?
551 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 06:05:42.92 ID:jLKypH4t.net] >>533 過去のものの悪習を次世代言語はどう防止するのかを議論するのも大事では? 見やすいコードならPython、モナドで文脈を明示
552 名前:A意識させるHaskellとか。 >>523 が具体的事例を挙げれば議論のきっかけになるのではないかと。 [] [ここ壊れてます]
553 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 06:31:30.91 ID:gELNspyu.net] こんなこと言ったらお終いな気はするけど、日本じゃJavaとC#じゃね? 未来と言うより将来も安泰そうなの。 結局サポートする企業がどこまでライブラリやプラットホームカバーするのよ?ってのが日本じゃ強いよね。 自分で好きな言語のプラットホーム拡張保守やってる所ってあるけ? って、ソニーはC#でやってたか。
554 名前:デフォルトの名無しさん [2017/01/27(金) 06:43:37.24 ID:rENqMvh4.net] JavaはOracleが持ってる時点でもう
555 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 06:53:23.29 ID:gELNspyu.net] >>523 Haskellは副作用有無(入出力)の分割が徹底してるし、パターンマッチで特殊な引数の場合の返り値も徹底されるから保守性や使い回しはやり易い。 (例えばテキストに行番号入れるコード書いた後、さらに単語ごとに別の加工したい際、行番号入れるコードがそのまま流用出来る場合が多い。手続き型言語だと、関数(メソッド)内に出力処理を書いて再利用出来ないことが多い) コンパイラ言語なのにLLとどっこいどっこいの速度だったり、ライブラリがまだまだ揃ってないのもあるから実用かは微妙だけど、勉強する価値はある。 (LLのライブラリがCで書かれてることが多く、ライブラリ多用するとHaskellと速度差がほぼ無いし、LLはライブラリ多用するのが普通)
556 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 08:44:31.79 ID:0sZ+vQY8.net] >>540 C#、こないだ触ることになったんだけど、相当賢くなってるしね。 F#もあるし、悪いものでは無くなってきてる。
557 名前:デフォルトの名無しさん [2017/01/27(金) 09:54:43.96 ID:7atcBh1Q.net] >>540 なんだかんだphp使ってるとこ多くない? javaの案件は面白くない案件が多そう。scalaはまだ良さそうだけど。
558 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 10:19:03.13 ID:wVPMaiNQ.net] >>542 食えない言語勉強する暇があるブルジョア自慢乙
559 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 11:04:09.93 ID:0qUJ+35F.net] F#言語としては好きなんだけどイマイチ使いどころがないんだよな C#の代わりに使おうとすると何するにもひと工夫必要でじゃあC#使うわってなっちゃう
560 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 11:53:10.18 ID:tJxB3IWG.net] >>545 Haskellを次世代言語の位置づけにするのはおかしいが、可能性を 秘めているのはこの言語しかないのではないか。 C#は次世代の資格はあるが、もうほとんど死んでいる。
561 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 11:53:34.08 ID:0sZ+vQY8.net] >>546 うん、まぁRustと他の言語の組み合わせ程度にめんどくさいと思う。 他の言語に無い概念持ってる言語はその中で閉じといてもらうのが一番良い。いろんな意味で。
562 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 11:54:46.95 ID:0sZ+vQY8.net] >>547 今一所懸命に壊死したところ切り離してるよw 15年の負の遺産は相当。
563 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 12:15:02.65 ID:62FFmlgo.net] すべてF#でやれれば最高なのにって思う F#覚えたらC#書く気にならない
564 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 12:26:40.08 ID:xRTGaRf/.net] ゲーマー的にはC#はもう次世代じゃなくて現世代だな 次世代はRustっぽい
565 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 13:20:37.43 ID:QnhFowJV.net] >>551 Rustは次世代どころか死産だろ。 MSのTypeScriptとGoogleのGoとAppleのSwiftくらいじゃねーの生きてる次世代候補。 やっぱり資本金の差だわな。
566 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 19:55:10.59 ID:oQLdhHNU.net] >>547 死んでいるとは?
567 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 00:46:14.24 ID:W3Ygu+TX.net] >>552 どれもショボいな GroovyやRubyのパクリばっかり
568 名前:デフォルトの名無しさん [2017/01/28(土) 01:06:52.81 ID:+VKCGfwL.net] c++もgccがc++17をサポートしだしたようだしまだまだいくよー、ってかんじだな。
569 名前:デフォルトの名無しさん [2017/01/28(土) 01:09:22.32 ID:+VKCGfwL.net] rustはその書きづらさとかが何かadaを彷彿とさせる。 どっちもろくに触ってないからまゆつばですが。
570 名前:デフォルトの名無しさん [2017/01/28(土) 01:09:58.84 ID:7QikrX9R.net] C++ はEigenが仕様についてこれなくなり始めていることを除けば良い方向に進んでいるな
571 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 01:17:58.53 ID:VI/ruDwL.net] Prologが再評価される日は来るのだろうか
572 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 02:12:03.27 ID:XFq0DIM0.net] ねぇよ 関数プログラミング言語の一族の産まれた時点で終了 エピローグでも書いてろだな
573 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 02:36:54.12 ID:W3Ygu+TX.net] >>556 前はC++代替えとしてかなり期待してたけど なんかもうC++でいいかなって…
574 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 04:03:27.60 ID:RjLDEMKU.net] もう全部Pythonでいいよ
575 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 07:52:24.48 ID:5vZUVW53.net] >>558 最後に生き残るのは、PrologとHaskellだけだと思います。
576 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 08:23:29.25 ID:qS20CWWP.net] >>562 最後は単純なものに収束するのだろうから、Prologは有力だな。 この両方の時代は来るのだろうけれど、さらに20年以上先ではないか。
577 名前:デフォルトの名無しさん [2017/01/28(土) 08:36:19.21 ID:t4EEW1nJ.net] 無いわ。 出てから何十年たってると思ってんだ。 そんな時代がくるならとっくに来てる
578 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 10:03:41.39 ID:O6PqKCVh.net] 結局C言語に戻っちゃうんだよな。 そしてC++でいいやってなる。 C++ってある意味次世代言語だと思うんだけど。 こんだけ進化しまくってる言語他にない。
579 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 10:22:49.12 ID:e7B3+uux.net] ガラパゴス化
580 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 10:24:52.55 ID:e7B3+uux.net] 生き残るのはDSLだよ COBOLとか終わる終わると言われ続けてるけど案外長い気がしてきた
581 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 10:31:55.15 ID:W3Ygu+TX.net] >>567 別にCOBOLはDSLじゃないんですけど! DSLっぽい扱いなだけなんですけど!
582 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 13:33:57.48 ID:sj27+yiD.net] >>554 言語としてショボいかどうかと息してるかどうかは別問題だからな。仕方ない。
583 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 14:37:25.75 ID:uVQI7C3W.net] >>567 > 生き残るのはDSLだよ DSLというよりも応用分野を確保し独占状態にしてしまった言語が生き残る その言語を死滅させるには、その応用分野そのものが消滅するか、その応用分野の全てのコードを別の言語でリライトしなければならないから (後者はリライトのコスト以上に、リライト後のコードの信頼性をリライト前の旧言語のコード並みに向上させるのに要するコストが莫大で現実的に不可能) > COBOLとか終わる終わると言われ続けてるけど案外長い気がしてきた COBOLは正にその実例 FORTRANも科学技術計算を握ってるから強い(Cなどに多少は置き換えられたりしてるが、スパコン向けの本当に大きく重要な有償パッケージは FORTRANのままがほとんど、何しろ誰も全面的にリライトなんてバグ=計算値の間違いの発生が怖くてできない) 「古くから使い続けられている言語ほど今後も永く生き延びると期待して良い」というのがプログラミング言語の余命に関する確実性の高い法則 これは裏を返すと、 新しい言語ほど早く死滅してしまうと期待できる となる だから新しい言語が定着する可能性は現実には一つだけだ(但し、これは新言語が定着するための必要条件であって十分
584 名前:条件ではない) 今まで存在してなかった(少なくとも極く一部の専門家や好き者以外の人間にとっては)全く新しい応用分野と共にその分野用の言語として登場することだ その具体例としては、例えば以下の2つ Cが生き残ってて容易に死滅しそうにない理由はそれまでCPU毎にバラバラだった機械語(アセンブリ言語)で書くのが当たり前だった システム記述用として登場したから Javaが生き残ってるのは、ネットワークを超えて実行するプログラムという応用と共に登場したから [] [ここ壊れてます]
585 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 16:36:11.52 ID:XSc31UhP.net] でも僕COBOLもFORTRANも書きたくないです
586 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 17:11:37.48 ID:Y6DJH7el.net] 書きたくないやつは仕事を失う 耐えられた者こそが適正のある者
587 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 17:15:36.29 ID:0tDA2X/+.net] ナンキン
588 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 19:21:08.55 ID:5vZUVW53.net] >>563 5年くらいすると現在のOR的なAIが見切られて、いよいよ本命の 論理を軸とした知識プログラミングの時代が来るけれど、Prologは遅いから、 専用プロセッサが出てくるまでは本格化しない。やっぱり15年後かな。
589 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 19:34:55.34 ID:YCGMA1K1.net] >>574 15年なんてあっという間だよ
590 名前:デフォルトの名無しさん [2017/01/28(土) 20:56:30.54 ID:t4EEW1nJ.net] プログラミング言語専用プロセッサとか古い夢見すぎ。今までいくつの専用プロセッサが作られては捨てられてきたと思ってんだ
591 名前:デフォルトの名無しさん [2017/01/28(土) 21:31:46.52 ID:aj1kIEcQ.net] Lispマシン……
592 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 21:39:50.81 ID:qZyyQJ1b.net] 富士通のLisp専用のメインフレームとかあったよなあ
593 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 21:51:03.67 ID:JU7OuWYC.net] シンボリックス…
594 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 21:51:56.18 ID:VuG25nQb.net] 結局メモリ読み込んで演算してメモリに書き込むわけだから cに戻ってくるわけだよ。
595 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 21:54:11.85 ID:5vZUVW53.net] >>576 15年後には深層学習の延長で、大学生でもインテルやAMDクラスの設計が できるようになる。そういうメーカーは注文に応じて焼くだけ。
596 名前:デフォルトの名無しさん [2017/01/28(土) 21:56:11.24 ID:aj1kIEcQ.net] >>581 深層学習でCPU作るってどういうことだってばよ……
597 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 22:11:03.00 ID:5eYhXXZd.net] 15年後には Central Processing Unit なんてなくなってるんじゃないか
598 名前:デフォルトの名無しさん mailto:sage [2017/01/28(土) 23:05:42.85 ID:XSc31UhP.net] >>581 ワイのおちんちんもCPUにされそうです・・・
599 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 00:19:47.69 ID:cip5qUAM.net] IoT(Internet of Tinkos)時代の幕開けか・・・
600 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 07:39:32.16 ID:m5jrqXSZ.net] Prologって言語は速度が超遅いから今はマイナーだが 速くできれば、すぐにメジャーに復帰にするよ。15年どころか3年後には。
601 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 08:09:46.11 ID:rcxLcsaw.net] カットオペレーターが鬼門
602 名前:デフォルトの名無しさん [2017/01/29(日) 08:36:49.81 ID:uQxwW8BY.net] そんなに良いものならとっくに誰かが高速化に取り組んでるよね
603 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 09:45:13.15 ID:9yjQUvuF.net] どう書けるかも大事だが、何ができるかが重要だろ そのプロロロとかいうゴミは、いったい何ができるんだ? ハロワして終わりのPHP以下のゴミだろ?
604 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 11:23:49.24 ID:OetkT2qe.net] >>589 GeneXus Watson Pepper
605 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 12:14:43.50 ID:mgBdW0hY.net] DOMとJSONとJavaScriptの構文木のシステムをメガバンクみたいに統合できたらいいなあ
606 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 12:23:55.05 ID:e27+9zV2.net] clojureにはcore.logicってのがあってな
607 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 13:46:52.9
] [ここ壊れてます]
608 名前:0 ID:mgBdW0hY.net mailto: 括弧を省略できない言語は終わったんだ Haskellで省略された括弧を全部書いてみろ [] [ここ壊れてます]
609 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 14:42:14.41 ID:9yjQUvuF.net] なお省略しすぎて読めなくなるもよう
610 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 16:05:45.85 ID:l64DxDCa.net] >>589 アセンブラでできること以上のことはどんな言語でも実行不可能。
611 名前:デフォルトの名無しさん [2017/01/29(日) 16:39:24.28 ID:SZxfjGEN.net] F#はバージョンが5つぐらい進んだC#と思っていい
612 名前:デフォルトの名無しさん [2017/01/29(日) 16:42:43.91 ID:SZxfjGEN.net] >>307 F#使ってるやつはF#は C# を全てうわまってるって言い切ってるんだけどな 事実はそうじゃないってことかね
613 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 16:58:32.59 ID:FGqv7Eoq.net] LISP Prolog Haskell この三言語だけが生き残る。
614 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 18:44:33.64 ID:9yjQUvuF.net] >>595 ではそのプロロロ(笑)でWebアプリを作ってみて下さい
615 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 21:08:23.34 ID:ZEtActeB.net] >>597 上回ってはないだろ。
616 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 22:50:18.99 ID:Ocx7v7z5.net] PrologはCのインターフェイスから呼び出して領域特化の仕事するための言語で、製品内での位置はどっちかというとLuaに近い。 それ単体でどうこうやる言語じゃないだろ。次世代言語どころかそれ単体で議論する価値がない。
617 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 23:05:57.31 ID:Aj7K1/f5.net] そんな解釈初めて聞いたわ
618 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 00:46:30.51 ID:HnMNGh+y.net] Prologを妄想で語ってるやつ多すぎて笑た ただのDB性能依存なだけのパターンマッチ言語だから 実際さわってみ 時代遅れすぎて使えたもんじゃないから
619 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 02:32:32.81 ID:HbOHAf+Z.net] 動的言語でよくあるハッシュテーブルとクロージャがPrologにはない それは古いからではなくパターンマッチできなくなるから
620 名前:デフォルトの名無しさん [2017/01/30(月) 03:49:25.09 ID:XMGcU10o.net] いつまで次世代言語を語るスレで化石の話をしてるんだよ
621 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 04:54:24.86 ID:W8ulMPLc.net] パターンマッチングといえばEgisonはどうなん?
622 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 06:17:33.02 ID:iaipgYYu.net] >>603 「時代」は型推論かいw
623 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 09:18:10.87 ID:djGawl3P.net] F#って次世代ちゃうの
624 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 10:14:55.40 ID:iaipgYYu.net] 次世代言語という意味ではなく今後使われるであろう言語という意味だが、 Python Prolog Haskell Scratch だろう。それぞれ 多層学習 意思決定/論理 数学/型推論/遅延評価 初等教育(プログラミング) に使われる。
625 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 10:52:36.65 ID:HnMNGh+y.net] 謎のProlog押し
626 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 12:15:07.23 ID:HbOHAf+Z.net] 過去の流行が再現するループ 謎ではないがループを許したら旧世代と次世代の上下関係は壊れる
627 名前:デフォルトの名無しさん [2017/01/30(月) 12:32:28.19 ID:yNK3VZ2J.net] Prologは言わずもがなだけどEgisonも人工知能の実現を視野には入れているみたい 個人的にはHaskellで人工知能ができて主要言語に仲間入りしたら嬉しい
628 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 17:09:24.55 ID:fyhe5MSA.net] >>603 確かPrologは実用面ではUNIXでのmakeを高度化したようなアプリのインストーラの内部で様々な条件に対応したインストールを行うための スクリプト記述用としては現在でも使われているはず まあ普通のプログラムをあれで書く気はしないね、性能的にも処理の考えやすさでも logicとして考えやすいのは方向性のない(あるいは双方向と言い換えても良いかも知れない)関係のレベルであって 実際の処理プログラムで必要とされる入力から出力という一方向の流れはlogicとは縁も所縁もない概念で、 だからそういう方向性のある処理をPrologで書くとなると、カットを多用せねばならなくなってlogicとしての理解容易性が急激に失われる
629 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 03:09:27.57 ID:tYaUr3EC.net] >>613 どこから突っ込めばいいのか まず君が言ってるのは方向じゃなくて順次処理だろ そして順次処理と論理は別に背反しない Prologが論理的とでも言いたげだけども、ただ網羅性あるから使われてるだけで その実単なるオーバーロードの塊でしかなく、しかもそれを書くのは人間 実際の記述は論理どころか冗長性だらけ しかも性能も高くない ただのレガシーだよ
630 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 09:10:49.94 ID:qlhVwcaG.net] 化石の話はやめてください!
631 名前:デフォルトの名無しさん [2017/01/31(火) 09:22:33.04 ID:lkTuVnqH.net] そうだよ。早く永遠の次世代言語Haskellさんの話に戻ろうぜ
632 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 12:34:36.20 ID:JS6r4WTp.net] >>614 Prolog自体が論理式なのだから仕方がない。 網羅性とかオーバーロードとか曖昧な表現を使わないこと。
633 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 12:41:14.64 ID:yyJuX8zg.net] >>616 どこの17歳さんかと 2004年にghcのソース読みながら書いたHaskellのコードが 2014年に手も加えずに動作したときには感動した
634 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 13:15:48.55 ID:vxyHL6QY.net] Haskellを勉強してると、Prologでよくね?って思うこと多い
635 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 14:56:50.62 ID:tYaUr3EC.net] >>617 曖昧じゃないのに曖昧と詭弁を言わないこと
636 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 15:59:57.16 ID:1O9cc50/.net] Prologなんてマトモな入門書、教科書が無いじゃん
637 名前:デフォルトの名無しさん [2017/01/31(火) 16:10:38.41 ID:14v4i2eO.net] >>619 どの辺り?
638 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 16:44:27.23 ID:sDgEqzOm.net] >>621 The Art of Prolog https://mitpress.mit.edu/books/art-prolog
639 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 17:02:45.56 ID:JS6r4WTp.net] >>621 Prolog Programming for Artificial Intelligence (4th Edition) amazon.co.jp/dp/0321417461/
640 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 18:46:27.00 ID:JS6r4WTp.net] >>621 邦訳は 2th Edition のものだが、二分冊で出版されている。 「Prologへの入門」 amazon.co.jp/dp/476490165X/ 「AIプログラミング」 amazon.co.jp/dp/4764902540/ 入門書としてもこの二冊の本が一番評価されている。
641 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 20:27:29.03 ID:nadqMqy3.net] >>619 でもPrologにはカットがあるしモナドがないから Haskellの遅延評価はPrologのカットと同じ役割を持つ
642 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 22:52:22.12 ID:KtQaXPs7.net] Haskell Erlang なんて作られてから三十数年経ってる言語を次世代なんて。 LISP Prolog みたいなかってはメジャーだった言語を次世代言語候補扱いしたら 怒られるよ。 このスレおかしくないか。
643 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 23:02:13.55 ID:rB3HMGuL.net] >>627 正論禁止
644 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 23:19:45.21 ID:nadqMqy3.net] 確かに怒られる側よりも怒る側の方が正論っぽい だからいつもみんな怒ってるんだな
645 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 23:30:54.27 ID:sDgEqzOm.net] 既存言語に怒ってるエネルギーを次世代の新言語を創る作業に投入すればよいのに
646 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 00:49:18.38 ID:Hn+PaGAx.net] もうこれ以上言語いらねえだろ アホか
647 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 03:08:47.89 ID:AFQEQKMv.net] これが右上がりの言語を次世代と定義しようぜ i.imgur.com/ujNoggx.jpg Scalaは残念ながら次世代言語から陥落したようだ。
648 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 07:46:04.46 ID:Hn+PaGAx.net] >>632 あああああああああああああああああああああああああああああああ!!!!!!!!!!!(ブリブリブリブリュリュリュリュリュリュ!!!!!!ブツチチブブブチチチチブリリイリフ
649 名前:デフォルトの名無しさん [2017/02/01(水) 07:54:12.66 ID:6MDtUtj9.net] >>632 この統計正しいの? Scalaが人気すぎる気がするんだけど。イタリアでの人気が不自然に高いようだし
650 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 08:06:48.64 ID:aIK12EZW.net] 検索で他のが落ちたのは、他のはみんな大体習得したんでしょ
651 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 08:46:14.40 ID:JzrfAYDc.net] >>632 カテゴリでプログラミングを指定するのどうやるの?
652 名前:デフォルトの名無しさん [2017/02/01(水) 10:21:36.50 ID:sUfhjsu+.net] https://www.youtube.com/watch?v=quIHgwuF6r4&sns=em
653 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 21:40:31.66 ID:90VT0b4D.net] Elixirは流行らないと思う erlangってそんな悪い言語じゃないでしょ JavaやJavascriptはクソだからaltがはやるわけで、ベース設計がしっかりしている言語のaltは流行らない
654 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 21:44:24.53 ID:90VT0b4D.net] というかaltJSという考え方はない 性能が向上しないのに静的型付けをいくらしたところでシンタックスが冗長になることによるタイプエラー、実効エラーが増えるだけ そもそも型を間違えるような奴は馬鹿なんだよ、さらにもっとも重要なnullpoは型チェックじゃ捕まらん 性能目的以外で型を宣言する必要はない、これは動的をすこしでもかじってればわかること
655 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 21:52:51.62 ID:RPQD9uLI.net] Erlangがなくならない以上、elixirの実行環境はなくならない elixirは流行る必要はない 課題提出の集計をパイプみたいにポイントフリーで整理するスクリプトを作れた時点で彼の役目は終わった
656 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 22:13:40.70 ID:90VT0b4D.net] 俺はclojure使いだけど、ロマンを感じるのは兄弟言語のracket laat of usでもスクリプトとして使われたらしいね ノーティドッグ信者なので、ゲームアーキテクチャという本も持ってるがやっぱりc++は必須だとも書いている 個人的にはメイン言語clojure (ただしディープにやるならJavaに向き合う必要あり) 継続的研究対象lisp,haskell,racket パフォーマンスクリティカルなプログラム c,cpp かつて使っていた言語c# 公用語 javascript Javascript自体が動的な以上altJSを使う意味がない、functionをfnとか書けたらいいなってぐらいで、それだけのために言語としてラッパー噛ましますかって話 Alt Cが欲しいが、rustはパッと見た感じではC#とかわんなくね? 構文をScalaのような簡潔性を持たせただけ C#がダメなのは、 クラスネームが無駄に長いことが推奨されていること .netライブラリに付き合わされること てかオブジェクト思考のライブラリは基本的にドキュメントが貧弱過ぎるのでつかわなくなっちゃった でも結局rustは改良したといってもそれのサブクラスでしかないと思う、よって流行らない、それならDのほうがよほど可能性あるわ 次世代の言語、それはD
657 名前:デフォルトの名無しさん [2017/02/01(水) 22:21:34.40 ID:ciQGnh7G.net] 言語とそれ以外がごちゃまぜになってるぞ。 たとえば現状、altJSがJavascriptに翻訳されるからといって、 そのままスクリプトとして動作する環境やコンパイラが出てきたら新言語と認めるという立場だろ? C++を昔はCへ変換されてたし、C/C++はいまでもアセンブラへ翻訳するだろ。
658 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 22:30:30.50 ID:o164RxC2.net] Haskell嫌いなやつって数学嫌いなんだと思う
659 名前:デフォルトの名無しさん [2017/02/01(水) 23:07:25.28 ID:/u9dasnn.net] >>641 RacketとDが好きとは気が合うな
660 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 23:30:09.01 ID:Hn+PaGAx.net] >>641 マニアックすぎる
661 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 23:35:08.50 ID:I4hYXvB3.net] Racketなんて言語、B級グルメ好きの俺ですらはじめて聞いたわ。
662 名前:デフォルトの名無しさん [2017/02/01(水) 23:51:06.89 ID:/u9dasnn.net] Racketは"Lisp gui"で検索かけるとすぐに当たるからLispにアンテナ張ってるなら知ってもおかしくない言語 逆にLispに一切興味がないなら出会う機会は無い
663 名前:デフォルトの名無しさん [2017/02/02(木) 00:19:57.04 ID:ni6gL+6B.net] Racketは言語使用、ライブラリ、ドキュメント全て半端なく充実しているのに知名度だけが致命的に足りない謎
664 名前:デフォルトの名無しさん mailto:sage [2017/02/02(木) 07:10:10.84 ID:O2Px6xPF.net] >>641 ネイティブコードは型ない、お前の感覚は未熟 あとC++やってないやつがD出すとかわけわからん
665 名前:デフォルトの名無しさん mailto:sage [2017/02/02(木) 10:52:40.39 ID:XYLSZm2r.net] >>648 互換性じゃないかな 古いLispを捨てろ新しいLispを覚えろって言われたら 古い方の知名度は順調に下がるんだけど新しい方の知名度は上がらない
666 名前:デフォルトの名無しさん [2017/02/02(木) 12:49:26.74 ID:997LLvzK.net] >>650 Racketはschemeへの後方互換あるでしょ さらに言うとalgol60も使えるんじゃなかったか
667 名前:デフォルトの名無しさん [2017/02/02(木) 13:04:32.19 ID:Y5kXFMjA.net] >>634 >>632 パイの大きさは変わってないんだな だから変なグラフになる
668 名前:デフォルトの名無しさん mailto:sage [2017/02/02(木) 18:32:48.21 ID:xBx+Q4xD.net] >>643 俺だわ… 数学もHaskellもただただ面倒くさい
669 名前:デフォルトの名無しさん mailto:sage [2017/02/02(木) 18:36:57.76 ID:XYLSZm2r.net] >>651 scheme自体に互換性のないバージョンが何個かある そのうちの一個と互換性を持つか、全くの無関係を装うか どっちにしても詰んでるだろ
670 名前:デフォルトの名無しさん [2017/02/03(金) 01:19:44.40 ID:B2TgZG7L.net] >>651 Racketはschemeと決別して独自の道を歩むと決めたから、今はまだよくてもそれに頼るのはちょっとな
671 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 01:35:48.05 ID:gTPj6g+n.net] ここまで、Coqの話題なし
672 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 01:55:31.97 ID:8CU6Wj2k.net] Cock-sucking
673 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 05:28:31.24 ID:9JF21fic.net] 確かに、証明支援系のネタがないね。 ラムダキューブとの対応を考えると、 Lisp : untyped Haskell : typed (λ2, λω) Coq Agda : typed(λ2, λω, λΠ) てな感じで順当に進化してるように見えた。 この先には何があるんかな?
674 名前:デフォルトの名無しさん mailto:sage [2017/02/04(土) 15:46:03.29 ID:OEWGq6Bc.net] データもないのに推論だけで証明ができるというネタは現時点では異端 証明といえば多数決のように統計データで証明するものだ
675 名前:デフォルトの名無しさん [2017/02/04(土) 16:03:34.70 ID:yGLia+BU.net] データならあるよ。公理や推論規則というデータが
676 名前:デフォルトの名無しさん mailto:sage [2017/02/04(土) 16:44:43.91 ID:M9nvjW5A.net] 統計で証明って初めて聞いたわ。 あおる訳じゃないが、そういう使い方する分野があるのか?
677 名前:デフォルトの名無しさん [2017/02/04(土) 16:46:42.42 ID:e9aNESBj.net] リーマン予想も統計的には正しいらしい
678 名前:デフォルトの名無しさん mailto:sage [2017/02/04(土) 16:48:59.12 ID:jFsHbXy/.net] ツッコミ待ち?
679 名前:デフォルトの名無しさん mailto:sage [2017/02/04(土) 20:02:18.74 ID:OEWGq6Bc.net] 逆に、初めて聞いた日本語が見つかったら炎上する分野があることの方が問題なのでは
680 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 00:35:13.86 ID:EaWYUXzz.net] >データもないのに推論だけで証明ができるというネタは現時点では異端 数学者がお前んとこに釘バット持って走っていったぞ。 確かに物理分野とかだと理論に沿った物理現象を観測(統計データで見ることも含む)することで証明完了とするけど、 それと数学の「証明」は別モノで、いくらデータを数え上げても無意味だ。 んで型推論とかCoqの定理系はこの「数学の証明」に相当するもんだ。
681 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 06:26:09.68 ID:dAPLgvDP.net] >>558 PrologもHaskellも速度的なもので外されちゃうのよね。 コンピュータアーキテクチャと切り離されてるが故に。 そこが書きやすさの根源なんだが。 MSなりAppleなりが公用言語に指定した言語が勝ちって面は否めない。 Web系はともかく、何らかのOS上で動く言語は。
682 名前:デフォルトの名無しさん [2017/02/05(日) 06:45:50.36 ID:lVtt30wn.net] コンパイル、バイナリ化できれば言語と速度は関係ない。 処理系の最適化しだい。
683 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 07:25:52.43 ID:dAPLgvDP.net] >>653 Haskellは再帰で関数書くところから始めれば良い。 それがHow(どういう手順)では無く、What(どういう性質か)を書いてると気付くと一気にハマる。 リスト内包表記とsumでlength書くのも違和感なくなる。 (最近のHaskellは普通の再帰もループにするのでメモリの心配不要) length [] = 0 --空リストになったら0を足して終了A length (_:xs) = 1 + length xs -- 先頭から1を足して行って@ length xs = sum [1 | _ <- xs] -- 文字と同じ数の1を用意して、足し合わせる。 文字と同じ数だけ1を用意する処理を関数に括り出せば ones xs = [1 | _ <- xs] length = sum.ones カリー化の勉強にもなる。 どういう性質かで書くようになると、Haskell通してソートの動きなど、アルゴリズムの動きの理解が進む。 (どういう理屈で高速化してるか) そうしてから、手続き型でどうすれば配列で実現出来る?と考える感じで実用言語へ得た知識を持ち帰るのに良い。 (Haskellの中では速いけど、他の言語のが大抵速い) 触って損はない。
684 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 07:30:56.66 ID:ur3RCCjc.net] Haskell、速いんじゃないの? HaskellBeats CUsing GeneralizedStream Fusion て論文があるが、どうなんだろう。 読んだ人いる?
685 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 07:42:36.70 ID:dAPLgvDP.net] >>667 いいや。 関係ある。 細かく指示しないといけないという事は、最適化する単位が小さい。最適化しやすい。 PrologやHaskellは柔軟性があり過ぎて最適化し難い。 それはC++のSTLに似てる。 100倍コードが短くなるけど、遅くなる。 そもそも論理型も関数型もメモリ大食いな宿命を背負ってるので、メモリ速度が遅い今のアーキテクチャに合わない。
686 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 07:52:56.70 ID:dAPLgvDP.net] >>669 C始め、手続き型は普通に書いても速いけど、Haskellは普通に書くと遅い。 手続き型っぽくユーザーの方で書きかた変えて、リストもbyteStringなどの速い構造を使う。 だったら、最初から手続き型で書けば良いやんってなる。 Haskellは、普通の書き方と最適化する書き方で落差がありすぎる。 普通の書き方のコードの高速化が望まれる。
687 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 08:38:34.50 ID:WR2Bdndi.net] >>671 じゃあその論文に書いてあるのは、手続き的なコードということか。あとで詳しく読んでみる。
688 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 11:21:24.55 ID:cMmfZpdA.net] >>668 Haskellってやっぱ基本的にギュッって省略されてる感じで、返って分かりづらい、Rubyと同じ臭いがする これなら、OCaml・F#の方が、記述は長ったら
689 名前:しいが逆に分かりやすいと感じた [] [ここ壊れてます]
690 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 13:09:18.75 ID:39kPthL5.net] HaskellとかRustとかScalaとかそういう目新しいだけで何もできない言語をドヤ顔で使うのはただドヤ顔したいだけの無能な。 本当にできるプログラマはJavaとかC++とかPHPとかの「物が作れる」言語をひたすら極める。 お前らも遊んでないで勉強しろよ。
691 名前:デフォルトの名無しさん [2017/02/05(日) 15:06:44.63 ID:eh0DAHa0.net] 本当にできる奴はFortranを極める
692 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 15:08:48.15 ID:5fSxdbmG.net] いやForthだろ
693 名前:デフォルトの名無しさん [2017/02/05(日) 15:40:10.05 ID:ca5We8fF.net] Factorのまともなチュートリアルを教えろ
694 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 15:50:42.78 ID:uN/SMrch.net] >>675-676 Julia
695 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 16:25:03.68 ID:eIQFXmLo.net] 手続き型で書けば速くて関数型で書くと遅いってのは全く的外れ トレードオフを理解した上で状況にあった言語を選べばいい benchmarksgame.alioth.debian.org/u64q/which-programs-are-fastest.html
696 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 16:27:05.14 ID:eIQFXmLo.net] >>674 Scalaを目新しい言語に入れるな そしてC++とJava/PHPを一緒にするな
697 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 16:34:26.09 ID:Ijtu7jlP.net] >>674 Haskellが目新しいのですか。 大学ではずーーと昔から、Haskellの話題だらけですが。
698 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 17:04:47.17 ID:eIQFXmLo.net] Haskellは実際のアプリケーションに使われる事例が増えてきたのは最近だから そういう意味では目新しい言語と言ってもいいと俺は思うけど RubyはJavaより古い言語だけどRails以降に認知されるようになったのと似たようなもん
699 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 17:48:20.62 ID:mKg8Z6Nb.net] >>674 だいたい同意かな。 ただ新しい言語が何に気を付けてるのかを見るのは意味がある。 Rust がオブジェクトの寿命を気にしてたり、alias を嫌って = のデフォルト動作が move になってたり ってのは今使ってる言語でも意識はできるし。
700 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 17:58:10.61 ID:6tQdqPMe.net] 十人一束の安いプログラマ
701 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 00:05:14.66 ID:w4PqxpOt.net] >>674 PHPでできあがるのは糞の山だぞ 標準関数も文法も挙動も 何もかもが糞 C++やJavaと、PHPなんぞを一緒に語るな痴れ者
702 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 00:09:58.93 ID:5DOCNE2E.net] >>685 多分 >>674 の言う物が作れる言語って、金が稼げる言語の間違いなんじゃね? ドヤ顔したつもりで自分が1行いくらで稼ぐ系の安プログラマなのバラしてかわいそ。
703 名前:デフォルトの名無しさん [2017/02/06(月) 00:28:57.43 ID:MWJx5Fr9.net] >>670 コンパイラの自動最適化だ。 おなじ動作をするプログラムなら、 言語によらず最適化ののちにほぼ同速度になるはずだ。 アルゴリズム自体がおなじになるとして。 メモリ食い過ぎとかも最適化が足りてないだけだろ。 かなりいいコンパイラならC/C++やアセンブラなみになるはず。
704 名前:デフォルトの名無しさん [2017/02/06(月) 00:41:36.15 ID:SAGpF4BT.net] >>687 はずはず言うのはいいから実際の処理系の名前をあげてくれよん
705 名前:デフォルトの名無しさん [2017/02/06(月) 00:42:49.71 ID:PxvqegTw.net] . . . >悪質パクツイ垢(自称ハッカー)のコピーライティング特定されててワロた @copy__writing の中の人は東京都三鷹市の莉里子 https://twitter.com/copy__writing i.imgur.com/LyXsDj9.png i.imgur.com/nqT3xBN.png i.imgur.com/2FlhfLE.jpg https://www.mercari.com/jp/u/446591929/
706 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 00:53:20.06 ID:c0IrdF62.net] ―┼‐ ノ / | --ヒ_/ / \ヽヽ ー―''7 `」 ┼, 二Z二 レ / /´レ' \ ―7 ̄} | ー-、 / (__ (|フ) (__ノ _ノ ∨` ノ / / _ノ \_ ─┼- / | ‐┼- | ー|― ─┼─ | \ レ /  ̄Tー / ノ -─ (二フヽ \/ _ノ (二フ\ ヽ_ノ / 、__ i';i /__Y ||真|| /⌒彡 _ ||露|| /⌒\ /冫、 ) ・・・・・・。 \ || || ̄ ̄ ̄ ̄ ̄ ̄ ̄\ `./⌒ i ` /ゝ _,,..,,,,_ ||\`~~´ (十万石) \( > ('\\ ./ ,' 3 `ヽーっ ・・・・・・。 ||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄\`つ ⌒ _) l ⊃ ⌒_つ .|| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|| `'ー---‐ ( 'A) ・・・。 〃∩ ∧_∧ <⌒/ヽ___ /(ヘ)ヘ ⊂⌒( ・ω・) ・・・。 <_/____/ zzzz・・・ `ヽ_っ⌒/⌒c
707 名前:デフォルトの名無しさん [2017/02/06(月) 02:22:27.01 ID:MWJx5Fr9.net] >>688 有力HaskellコンパイラはGHCひとつくらいしかない気がするから いいコンパイラの比較対象がない。
708 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 04:01:30.95 ID:zsAHJXs9.net] >>691 GHCが公開されたのが、1998年でしたか。型推論とか言われだしたのは、 当然コンパイラ以後ですから、そういう意味では20年も経過していない。 次世代言語の候補になっても、不自然ではないかもしれない。
709 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 05:07:32.67 ID:zFZDUWfA.net] >>679 うん。 速度より保守性重視なら関数型も選べば良いのよ。 現役プログラマの先輩の言では、まず一つの言語極めて、プログラミング出来るようになったら言語を選んじゃダメだって。 その点でおいらは落ちこぼれ。 だからHaskellまで抽象化されないとクイックソートが何してるか分からなかったおいらが居る。 普通の言語で理解出来ないなら、プログラマになるべきじゃ無い。
710 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 05:12:14.70 ID:zFZDUWfA.net] >>687 ええと。 最適化するコンパイラ書くのもまた、プログラマなんだ。 Itaniumと言うIntelがx86互換性切り捨てたCPUがあって、コンパイラが優秀なら、すごく並列化出来る命令を切り出せたアーキテクチャ。 でも、コンパイラがそこまで並列化出来る命令を切り出せなくてポシャった。 いくらポテンシャルがあっても、複雑すぎるとコンパイラ書くプログラマがそもそも実装出来ない。
711 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 05:27:55.17 ID:zFZDUWfA.net] >>673 元が数学寄りだから短いけど、別に命名規則で長くしても良い。 実際使う関数さえ機能が分かりやすければ良い。 Hoogleで既存関数も何やってるか調べられる。 ruby,pythonだと手続き型なのでファイルはどんなに短く書いてもOpen、Close処理は書くけど、Haskellは書かない。 LL並みの短さでコンパイラ言語だが、今のところLLが(Cで書かれた)ライブラリ多用すると負ける。 だから、勉強だけして実用言語に持ち帰れと言ってる。
712 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 06:31:27.33 ID:zsAHJXs9.net] >>692 Prologは四十年くらい、仕様がまったく変化していないけれど、 Haskellは大きく変わっている。変わっている方が次世代という感じはするね。
713 名前:692 mailto:sage [2017/02/06(月) 06:34:03.23 ID:zsAHJXs9.net] GHC以外にHaskellコンパイラ開発しようという動きはあるの
714 名前:セろうか。 [] [ここ壊れてます]
715 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 10:09:40.36 ID:3ccyGMWG.net] >>692 Proloの言語仕様は変化していないが、作法は以前とは全然違う。 仕様を句構造に解析しておいて、そのまま述語として定義してしまう。 そういう方向。他のプログラム言語とは全然違う領域に踏み込んでいて、 相当に次世代。
716 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 12:33:27.82 ID:5rINm98G.net] move A to B. のCOBOLの世界に近いのかな。
717 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 17:49:07.32 ID:E9sN5WJf.net] 最適化してネイティブコンパイルすれば同等の性能になるなんて だれがほざいてんだ? CPUキャッシュのヒット率が全然違うだろ CPU内で完結してメモリをめったに読まないのが優秀な言語だ
718 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 20:36:16.98 ID:w4PqxpOt.net] よくわからんのだが 実用性と数学性を極めしScalaが次世代最強言語ってことでFA?
719 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 20:48:05.79 ID:mzYzOccO.net] Scalaはバージョン上がる度にぶっ壊れるジョーク言語だろ。
720 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 21:03:12.77 ID:keJvbtX0.net] 最強言語とか厨なこと言ってんなという普通の突込みがない。
721 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 21:29:01.36 ID:CnQFCCTc.net] Scalaの構文は吐き気がする あれは人間が読むものではない
722 名前:デフォルトの名無しさん [2017/02/06(月) 21:36:55.27 ID:JXLDZe92.net] >>704 REPL入力とソースファイルからの読み込みで受理する構文が異なるという、圧倒的欠点には吹いた
723 名前:デフォルトの名無しさん [2017/02/06(月) 22:18:58.67 ID:MWJx5Fr9.net] 最適化だが。 いまやC++もC#もプレイステーションもGPUドライバもDirectXもLLVM中間言語を使ってるぞ。 JavaやもとのC#も別の中間言語をつかうが これをLLVMに置き換えてLLVMコンパイラの十分よければ、 Java/LLVMもC#/LLVMもC++/LLVMと遜色ない速度になるはずだ。 LLVM Clang、PlayStation 4用コードを統合開始 | マイナビニュース news.mynavi.jp/news/2015/01/29/018/ Microsoft、LLVMベースの.NET/CoreCLRコンパイラLLILCを発表 https://www.infoq.com/jp/news/2015/05/microsoft-llilc-llvm-compiler Microsoft、LLVM/ClangベースのDirectXシェーダーコンパイラをオープンソースに2017年1月26日 https://mag.osdn.jp/17/01/26/160000 AMDがドライバを含めたGPUソフトウェアをオープンソース化 - PC Watch CLANGフロントエンド/LLVMバックエンドのインフラを利用 AMDのオープンソースコンパイラスタックは、CLANG/LLVMのオープンソースコンパイラインフラストラクチャの上に乗っている。 C++の単一ソースコードから、Heterogeneous Compute Compiler (HCC) C/C++コンパイラフロントエンドが中間コードに落とし込む。 LLVMバックエンドで、中間表現からGPUネイティブに最適化コンパイルする。 AMDは、KMDもオープンソース化して行くとしている。言い換えれば、GPUを丸裸にすることになる。 pc.watch.impress.co.jp/docs/column/kaigai/736647.html
724 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 22:43:21.44 ID:ZuA1TwNS.net] で、Haskell/LLVMも同じくらい速いのかっていう。 じゃ無ければ、関数型は今のコンピュータアーキテクチャに合わないから、手続き型より早く出来ないと言う私の持論は覆せない。
725 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 02:01:47.12 ID:WpBgUwwL.net] 何を持って関数型と呼んでいるかはしらないが手続き型がはやいのは確かだ 関数型の多くは不変的データ構造を前提としていて、できる限りデータコピーを避けるようにはなっているが、データコピーは発生するのでポインタ使ってメモリいじったほうがそりゃはやい 問題はそれで劇的に遅くなる
726 名前:のかという話と遅くなることを許せるかという話 関数型ユーザーは概ねそのコストを支払ってもよいとかんがえているし、払えないなら抜本的な改革を検討する 例えばGPUを操作する、メッセージキューによる並行化 リアルタイムシステムにおいては許容されるレイテンシやスループットを下回るとシステムとして使い物にならない だが良く考えてみたまえ、金融システムというのはそうしたものの最たるものなわけだ というか極端なこといえばメッセージキューがうまくまわるなら言語なんてなんでもいいわけですよ でもってメッセージキューを楽に構築するにはデータが簡単にconstructできるほうがいい メモリを操作するということは、データをコンストラクトして不要なデータをGCに投げ捨てる、の対極をいってるわけだ [] [ここ壊れてます]
727 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 02:16:47.09 ID:WpBgUwwL.net] つまり要求されるシステム特性によるとしか言いようがない いわゆるRESTをベースにプログラムを組めるなら、disruptorに代表されるメッセージキューを使うのが最速であるが、3Dゲームみたいな、UIスレッドに負荷が集中するような、副作用の大きいシステムを作成するときには、並行処理なんて無意味だということ OSが統括するUIスレッドやグラフィックボードが並列処理に対応してれば話は別だが、だからこそ3DレンダリングはCとCppの聖域なわけだ 要はmapしてreduceする処理に還元することが現代のアルゴリズムなわけだ そうできないなら、シングルスレッドでガリガリやるしかない そしてシングルスレッドができる処理の限界は、クロックとCPIで決まると、クロックは量子力学的な制約がかかっている以上、もはやCPUを叩いてどうにかする時代は13年前くらいに終わってるはずなんだけど
728 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 07:01:25.51 ID:hM98Yx7Z.net] >>708 何言ってんのかよくわからんなあ… 君が手続き型のが良いと言ってる内容は、さして苦労せずに関数型言語で実装できる つまり、どちらも扱える関数型から見れば利点になってない 本来の意味で比較するなら、手続き型の制約は、その順序性を必ず担保する必要があるので、簡約も最適化もできない つまり一般に関数型のが開発効率がいい
729 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 07:34:07.38 ID:hM98Yx7Z.net] >>707 例えばGHCだとしても、コア言語使えば速度も稼げるし、CよりLispのが速いなんてのもよくある話 結局その言語の実行環境と (低級な意味での) 実装するアルゴリズムの問題だと思うね 代表例としてCやFortranばかり出すから、手続き型が速いと感じるだけ 特にLLVMについては、手続き云々より静的型付けによる最適化のがよほど貢献してる
730 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 07:57:32.25 ID:21ebZDJJ.net] そこだよ。 何だよコア言語って。 CはCで速いのにHaskellはコア言語じゃ無いと速く無いのかよって話。 Cは入門書そのまま打ち込めば十分コンパイラが最適化するけど、Haskellはそうじゃ無い。
731 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 08:05:45.72 ID:jqoHFXiR.net] お前アセンブリ言語さんの前でも同じこと言えんの?
732 名前:デフォルトの名無しさん [2017/02/07(火) 08:12:21.57 ID:ZZufsVw2.net] ゲームプログラミング界の巨人、Tim Sweeneyが「未来のゲーム開発テクノロジー」を語る 超並列処理、次世代のゲームグラフィックスはソフトウェアレンダリングに回帰する 次世代を見据える上では、メニーコアのプロセッサを充分に活用できる大量のスレッドに分割されたゲームエンジンを作らなければならない。 しかし、現状でさえマルチスレッドプログラミングは開発の困難さが指摘されている分野である。 しかも、それを効率的にデバッグすることは非常に難しく、開発規模の拡大や期間の長大化を招いているのだ。 Sweeney氏は、これは現在主流の開発言語であるC++の手続き型言語としての特性に由来すると指摘する。 Sweeney氏に言わせるとそれは「シングルスレッドのプログラムをアセンブラで書くようなもの」であり、生産性が悪いのである。 Sweeney氏は、この問題を解決するためには、ゲーム開発言語として純粋関数型の言語が必要になるだろうと言う。 この種の処理系では、C++のような共有メモリのアクセスや、I/O操作は基本的に行なえない。 その引き替えとして、各関数のアトミック性が構造的に保証されており、安全に並列実行できるのだ。 しかも、コンパイラが対応さえすれば、関数を自動的に多数のコアに分散処理させることができるというスケーラブルな実行バイナリを作り出せる。 Sweeney氏は純粋関数型言語のもつ並列処理安全性に着目しており、将来的にゲームプログラミングはそういった処理系に移行していくべきだとした。 ゲーム開発のメインストリームたり得る言語はまだ登場しておらず、将来に期待しているという。 それにプラスして、Sweeney氏は現在のゲームプラットフォームハードウェアが複雑すぎることも指摘した。 もし、Sweeney氏のいう純粋関数型言語によるゲーム開発が実現したとして、それを基準とするならば、C++によるプログラム開発コストは マルチスレッド版で2倍、プレイステーション 3版において5倍、シェーダー言語で記述するGPGPU版において10倍かそれ以上にもなるという。 従って、メニーコア世代のプラットフォームに備えて、ゲーム会社は開発基盤を備える必要がある。 次世代のエンジンを開発するには5年くらいはかかるでしょう。だから、今はじめるべきなのです。 ttp://game.watch.impress.co.jp/docs/20080911/epic.htm
733 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 08:21:27.55 ID:oyZmvWF9.net] 結局いつの時代も性能と保守性のトレードオフを考えろって話だろ。
734 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 08:21:57.26 ID:Z8WP6lJH.net] 俺もそう思ってた、GPUに掛けちゃえばそれ以外の部分が遅くてもあまり関係ないからな。
735 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 08:27:26.29 ID:21ebZDJJ.net] アセンブリ言語は機械語と一対一だろ。 何言ってんの。 高級言語は一対一じゃないから最適化の話が出るんじゃ無いのか? 本当なら、Haskellだって参照透明性活かせば、コード上で計算結果出せるものはD言語みたいにコンパイル時に全部値に置き換えられるはずだが(Cも一部は最適化で値を直接埋め込むが副作用の為に単純なものしか置き換えられない)、そんなHaskellコンパイラは無い。 実装が難し過ぎて、そういう最適化が出来ないなら、机上の空論よりも実際に最適化できる言語が選ばれる。 Cだって、最初は最適化不十分で、アセンブリ吐いて最適化したり、キャッシュに収まるように書いたりという時代があった。 何だかんだで最適化技術の歴史の重みに勝てない。
736 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 08:41:12.90 ID:hM98Yx7Z.net] >>717 いやTemplateHaskellあるから OCamlも同じく
737 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 08:50:01.92 ID:hM98Yx7Z.net] あー簡約やインライン化の話か コンパイル時もされるぞ
738 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 08:51:42.62 ID:9tYUAY6s.net] 石器時代の環境でプログラミングを楽しみたい ブートローダは丸暗記して起動する度に スナップスイッチで打ち込むとか
739 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 09:00:39.46 ID:hM98Yx7Z.net] >>717 あと揚げ足かも知れないけど、ニモニックとマシン語は1対1とも限らない マクロアセンブラなどに限らず、勝手に変えたり最適化するのもあるから
740 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 09:15:27.43 ID:Z8WP6lJH.net] 最適化の重要性はコアを2倍に増やしてスケールできれば 処理速度も2倍だから昔みたいに意味ないんだよね。
741 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 09:16:28.11 ID:lG1uUc9b.net] はいぃ?
742 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 09:34:09.57 ID:vgi/AyaJ.net] >>714 goかElixirでできないのかな?
743 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 09:55:15.02 ID:eLJEaWcO.net] 2008年の記事かよ... カビくせえな
744 名前:デフォルトの名無しさん [2017/02/07(火) 10:08:27.72 ID:WNm+xswo.net] 2008年はまだコア数これからどんどん増えるはずだって時代だったからな。 それに彼は昔、当時としては凄く優秀なソフトウェアレンダラー書いた人だから。 結果は2012年に発表された最新のUnreal Engine4はC++で書かれたとさ。
745 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 10:08:59.30 ID:5WCc2ykt.net] 結局問題は今早いかどうかだよ。 Haskellは今、この瞬間にCより速いのか? そうでないならHaskellを使う理由はどこにもない。どこにもだ。
746 名前:デフォルトの名無しさん [2017/02/07(火) 10:09:56.06 ID:WNm+xswo.net] >>727 次世代言語を語る部屋なんだから今の話だけしても仕方ないだろ
747 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 10:22:45.70 ID:5WCc2ykt.net] >>728 使う理由はないってだけで、オモチャとして暇潰しに遊ぶことを否定してはいないんだがな。 領域によってはCに替わるとか寝言言ってることに対するツッコミしてるだけ。
748 名前:デフォルトの名無しさん [2017/02/07(火) 10:26:24.27 ID:pO8TZj/r.net] >>729 (次世代言語スレで)いづれ次世代Cに代わるかもしれないかもしれない という意見に、結局問題は今速いかどうかってヤバすぎん?
749 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 10:48:41.86 ID:5WCc2ykt.net] >>730 今LL言語レベルの速さのものが将来的に速くなってCにとって替わる目をどれだけ信じられるかって話な。 いずれ高速化するからって希望的観測を自分は信じてない。できるならとっくに高速化してる。 Haskellが次世代言語として実用化するならそれはCとは別領域の話になるんじゃねーの? 以前Haskellでハードウェア記述の話は聞いたことあって、ぶっちゃけそっちの方がNext Cより目あると思う。 実用化いつになるか知らんが。
750 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 10:48:42.62 ID:Z8WP6lJH.net] いまはCPUは複雑な分岐を担当してGPUが単純な計算をするから あまり速さは関係ないんだよね。
751 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 10:53:19.52 ID:Z8WP6lJH.net] ハスケルは複雑すぎて駄目だなC++と同じくらい複雑すぎて誰も流行らない。 関数型ならLISPがCのようにわかりやすくて良い。 CとLISPを組み合わせて使うのが良いと思うよ。
752 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 11:33:01.31 ID:zhY1djzZ.net] Cと組み合わせる構造は誰でもやってる ただし見えないように箱の中に隠されている 関数型という名称も箱の名前でしかない 中身を教えないための箱
753 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 12:34:44.05 ID:1OWKqI+v.net] >>731 >できるならとっくに高速化してる。 200人にひとりしか使えないプログラム言語のために、インテルや AMDが何兆円も掛けて、最適な石を作ろうとするものだろうか。
754 名前:デフォルトの名無しさん [2017/02/07(火) 12:47:39.04 ID:WNm+xswo.net] 汎用プロセッサ沢山積んで並列性高めようとしたlarrabeeポシャったじゃん。 上のTimの関数型言語に言及した記事もlarrabeeの発表あって、それの期待が高まってる時の記事やぞ。
755 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 12:58:52.16 ID:5WCc2ykt.net] >>735 つまり今後も劇的な高速化は見込めないってことだな。
756 名前:735 mailto:sage [2017/02/07(火) 13:09:28.22 ID:s4l5/kyE.net] >>737 何年先は知らないけれど速さというような単純なターゲットの問題は、 高水準の大学生なら多層学習で誰でも最適回路設計くらいできるような 時代が来る。
757 名前:デフォルトの名無しさん [2017/02/07(火) 13:32:13.80 ID:F4bjZe40.net] >>738 たまに2chでそれいってる奴いるけどソースあんの?
758 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 13:55:47.59 ID:5WCc2ykt.net] >>739 自分の見識が狭いだけだとは思いたいが、 ディープラーニングでハードウェア設計の論文は確かに見たことないな。
759 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 14:07:01.83 ID:42CRzycu.net] cppは結局、1core1PCのスタンドアローンのための言語でしかない メニーコア時代のゲームのグラフィックは、GPUの成長のおかげ 結局何が並列化できて何が並列化できないかわからない奴の最速理論は無意味なんだよ そんなに最速目指したいなら、intelのfortranコンパイラ買えばいい、自動で並列化してくれるらしいから
760 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 14:08:56.67 ID:42CRzycu.net] 最速目指すならアーキテクチャベンダが作ってるコンパイラ使って当たり前なんだよなあ
761 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 14:17:38.53 ID:5WCc2ykt.net] おうnVidiaがnvhc作ったら考えてやるよ。
762 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 14:58:00.38 ID:21ebZDJJ.net] 結局そこだし、時代はIoTでさらに貧弱なCPUが活躍する時代。 ITと相性の良いポストCとも言える言語が求められる。
763 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 19:50:20.98 ID:rnaKi3ZD.net] c++20とかの話しもいいの?
764 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 20:24:44.45 ID:oyZmvWF9.net] まあ確かにそこまで速くしたいソースが手元にあんのかっていうと 特になかったりはする。 てか本当に速くしたいならレイヤー低くしてでもそれなりのことはやるわな。
765 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 22:34:02.71 ID:hM98Yx7Z.net] >>733 C++舐め過ぎか、またはHaskellを勘違いしすぎ >>736 ポシャってるどころか今売れまくっとるだろ
766 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 23:59:20.16 ID:mio539hi.net] 手続き型が高速なのは、ノイマン型コンピュータを前提としているから。
767 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 00:14:23.00 ID:Ie+DQPxz.net] 奴隷を並べての一斉計算でシステムを作るなら。 速い言語は変わるだろうな。
768 名前:デフォルトの名無しさん [2017/02/08(水) 03:00:32.21 ID:r3HFKoMF.net] >>714 は2008年だが。 純粋関数型で順序、手続きがないことは、 同一ソースのままコンパイラの側の対応で シングルもマルチコアに対応できるというのは理屈として正しいし それ以外に有望な方法はないんじゃないか。 シングルもマルチもソースコードがまったく同一でいいという条件で。
769 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 03:27:00.81 ID:Nu2wobKL.net] 実際にはそうなってないのが理想と現実なのよね。。。
770 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 05:18:59.05 ID:/S15sASy.net] >>658 から>>659 までの空白時間と今の勢いにワロた。 速度はどうでもいいので、Coq、Agdaの先で表現力豊かな言語とかあるん? どうせやるなら最新のものに触れておきたい。
771 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 06:33:51.04 ID:TX+A2Z+7.net] >>751 なってるだろ 制約は強いがC++でさえある
772 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 08:30:59.39 ID:uiFBRwjo.net] ディープラーニングとかデータマイニングとか言ってるが、SPSSの中の人すら、セミナーで 「予測は予測、推定は推定」「当てずっぽうから『それなりのレンジ』へのチェンジ」「過去の真は現在の真とは限らない」「KKD(勘と経験と度胸)のパラメータ振り」 と正直な事言ってた。 定理証明系の言語は石の開発には確かに役に立つと思うけど、 それ以上は不要だと思うよ。
773 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 10:14:09.19 ID:uXviz4nm.net] 書きやすいとかメンテしやすいとかの完全に作り手側の都合で、 速さを犠牲にして使い手側に不都合を押し付けるエンジニアの風上にもおけないようなクズばっかなのかこのスレ。 作り手の都合を使い手にしわ寄せさせるクズはエンジニアを名乗るな。
774 名前:デフォルトの名無しさん [2017/02/08(水) 10:23:05.69 ID:3ajnzt+4.net] 書きやすさ、メンテしやすさは普通にソフトウェア自体の品質に直結するから、その批判は的外れな感じがするね。
775 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 10:36:33.53 ID:cVkmV9gd.net] コストを無視するエンジニアはエンジニア失格だろ
776 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 10:45:10.66 ID:/S15sASy.net] エンジニアという単語やC言語などを自身を同一視するのを止めて、 もっと肩の力を抜いて、新しい可能性を楽しめばいいのに。
777 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 11:02:18.55 ID:6U9fBvBV.net] >>755 書きやすさとかメンテしやすさはコストに直結する。 速さより、コスト重視の使い手の方が圧倒的に多いが。
778 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 11:08:51.59 ID:uXviz4nm.net] そうか。エンジニアって職業そのものが変化してんだな 今のエンジニアは自分の仕事を楽にしたいから製品の品質を下げますとか平気で言うんだな。 俺の知ってるエンジニアは、製品の品質には妥協せず、それで増えるメンテ工数もパシッと実力でねじ伏せたもんだが。 これも時代か。
779 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 11:24:16.20 ID:0pdT/sv9.net] エンジニアーは本物のプログラマーじゃないからな。
780 名前:デフォルトの名無しさん [2017/02/08(水) 11:27:06.85 ID:3ajnzt+4.net] そうですね。そんなエンジニアばかりであれば一つのCPU命令すら妥協せずフルアセンブラで書かれたソフトウェアがその他の言語で書かれたソフトウェアを実力でねじ伏せてる世界があったんでしょうね。
781 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 11:29:32.03 ID:6U9fBvBV.net] いつから、プログラマを名乗らないエンジニアなんて種族がでてきたんだ。
782 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 11:30:51.08 ID:/S15sASy.net] >>754 周りが不要と思っているものに投資しとくのはビッグチャンスかと。 普通の奴らの上を行け、だっけ?
783 名前:デフォルトの名無しさん [2017/02/08(水) 11:32:18.41 ID:k7ksM0Re.net] >>764 じゃあやれば(笑)
784 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 11:43:45.36 ID:/S15sASy.net] >>765 もうやってるよ。で、上の質問なわけだ。 CoqよりAgdaの方がシンプルなのでそちらを進めてるのだけど、 その先が既にあったらイヤだなと思った。
785 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 12:03:20.46 ID:MFe8SiQW.net] 次世代言語候補がCoqとAgdaというなら納得ではあるが。 1990年代の"Z"を思い出すなぁ。集合論なんて何のと考えていたの だけれど、さっぱり頭に入らなかった。
786 名前:デフォルトの名無しさん [2017/02/08(水) 12:09:46.75 ID:k7ksM0Re.net] >>766 大変失礼した
787 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 12:51:48.92 ID:XyA6SYml.net] >>755 書きにくい保守しにくいレベルのものでビジネスに直結するような代物作るなよ たいていそういうのは書き手自体が無能で、工期不足でUIUXが犠牲にされるんだよ、ポトペタくん 設計センスがないから、アーキテクチャの都合でUI決めるわけだ わかりやすい例はexcelフォームだよ
788 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 12:54:17.69 ID:XyA6SYml.net] はっきりいうがわかりやすいドキュメントをかけない奴はビジネス適性も設計センスもない
789 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 13:21:32.03 ID:0pdT/sv9.net] 本物のプログラマは仕様書を書かない
790 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 13:25:46.66 ID:LV5N7Ks6.net] ats2 は ml と rust と agda を足して 2 で割ったような理解不能言語
791 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 13:33:37.39 ID:ZP7mUzC3.net] そもそもエンジニアなんて別にそんな誇り高い呼び名じゃないし なんで選ばれしプログラマーみたいな定義になってんの
792 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 16:19:25.95 ID:fGXhImwi.net] チェンジニア
793 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 17:46:03.28 ID:/S15sASy.net] >>767 やはり、有力候補といった感じですかね。 2013年のそっち系の数学の教科書を見るとCoqとAgdaが言及されているので、 現状の最先端と見ていますが、どうかなと。
794 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 18:24:02.08 ID:uiFBRwjo.net] >>764 データマイニングに投資する、と決めること自体が、勘か経験か度胸とも。 Prologで良いじゃん、と言う話やらRで良いじゃん、と言う話をはねのけてコストかける意志的な
795 名前:話。 [] [ここ壊れてます]
796 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 19:58:21.05 ID:/S15sASy.net] >>776 これで飯食ってるわけではないので、そこまで必死ではない。 哲学的な何かやりがい感じられて、やってて楽しいのが重要。 旧体制の巨人言語に最先端の尖った言語で挑戦してるっていう設定も厨やハッカーっぽくていいじゃん。 次世代言語スレなのだから皆こういう意識と思ってたが違うのかな?
797 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 20:49:13.83 ID:0pdT/sv9.net] Coqは依存型を超えた高階型が使えてHaskellの100倍凄いよな。 遅延評価もするかしないかも選べるし最強の関数型言語と言っても過言ではない。
798 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 20:56:20.62 ID:+f0LmjaI.net] swift入れてくれよ goってなんか危ないバイナリ混じってんでしょ それ聞いてやる気が起きない
799 名前:デフォルトの名無しさん [2017/02/08(水) 21:07:31.81 ID:k3GtP4PI.net] Haskellでも依存型が使えるようになるらしいよ 2018、2019年辺りから
800 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 21:10:38.79 ID:TX+A2Z+7.net] >>760 昔からそうだが 金も出ないのに要件以上の事をやるのは、単なる馬鹿
801 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 21:30:52.04 ID:0MDQAzJA.net] goはGoogleが全部支配してる言語ってだけで良識ある人は全力で避ける
802 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 21:32:31.61 ID:m2cf+jJp.net] F#ってどう思いますか?
803 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 21:53:11.81 ID:saIve44q.net] google先生は飽きるとバッサリ切り捨てるからねえ
804 名前:デフォルトの名無しさん [2017/02/08(水) 21:59:43.88 ID:pR9qFxBQ.net] 誰が使ってんの状態のDartですらまだほそぼそとメンテされてるんだぞ!
805 名前:デフォルトの名無しさん [2017/02/08(水) 22:01:53.39 ID:pR9qFxBQ.net] と、気になってgithub見に行ったら2ラストコミット2時間前だった。思ったよりかなり活発なのね。
806 名前:デフォルトの名無しさん [2017/02/08(水) 22:04:16.61 ID:gd77Yna+.net] F#すこ
807 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 22:35:09.63 ID:ZP7mUzC3.net] Dartは普通のaltJSとしてむしろGoより人気あるイメージあった 対抗馬TypeScriptくらいだし
808 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 22:37:11.52 ID:0MDQAzJA.net] F#はMSに首輪つけられてる身分からすれば良い言語なんじゃね?
809 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 23:21:58.93 ID:b6dR+iVQ.net] まあ go くらいのシンプルな言語なら google が手引いてもメンテくらいできるだろ。
810 名前:デフォルトの名無しさん [2017/02/08(水) 23:49:14.35 ID:r3HFKoMF.net] 関数型の実装は難しくない。関数型は簡単な言語ともいえる。 言語はどこまで小さくなれるか - (unlambda|iota|jot) のすすめ 「言語設計者たちが考えること」の言語設計者たちが考えた、複雑で豊穣な言語に日々触れていると、ときおりその逆も考えずにはいられません。 言語は、どこまで簡潔になりうるのか、と。 小さな言語の代表としては、Brainf.ckがあげられます。 最もタメになる「初心者用言語」は Brainf*ck!といわしめるほどのものであり、 実際言語処理系の演習などではこれはネタではなくベタと言っても過言ではないのですが、命令8つとはいかんせん多すぎます。 実際これを減らすというのもまた esoteric linguists の愉しみの一つで、元祖BFほど美しく見えないのは、「命令を無理してまとめている」ところにありそうです。 それでは。他に手だてはないのでしょうか? 希望の光は、命令型ではなく関数型の方からさしているように見えます。たとえば、SKI combinator calculus。 これを使うと、ラムダ計算を、S, K, I という三つの関数に集約することが出来ます。 これに関数の適用を加えた4つのシンボルがあれば、チューリング完全な言語を実装するのに充分ということになります。 これを実現したのがUnlambdaですが、余計な関数も数多く入っています。 そこから不要なものを取り除き、純粋化したのがLazy Kです。 コンパクトなのは仕様だけではなく実装もそうで、JavaScriptであれば以下で全てです。 S = function(x){return function(y){return function(z){return x(z)(y(z))}}}; K = function(x){return function(y){return x}}; I = function(x){return x}; unlambda = function(str){ return (function(a){ if (!a.length) throw 'syntax error'; return { s:S, k:K, i:I }[a.shift()] || arguments.callee(a)(arguments.callee(a)) })(str.replace(/[^`ski]/g, '').split('')); }; blog.livedoor.jp/dankogai/archives/51524324.html
811 名前:デフォルトの名無しさん [2017/02/09(木) 00:10:31.53 ID:lnTHGhne.net] >>788 そうなのか。Goの方がおれの観測範囲では見る方だし、Dockerとかにも使われてるしメジャーかと思ってたわ。 ちなみにGithubのスター数 Dart SDK 979 coffeescript 13693 TypeScript 18833 typescriptの対抗馬coffeescriptじゃね?エディタ的にも。
812 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 00:12:34.54 ID:eJKwaunX.net] バカな私に関数型は無理な気がする
813 名前:デフォルトの名無しさん [2017/02/09(木) 00:13:24.51 ID:lnTHGhne.net] おまけ、 GoのGithubでのスター数 24498
814 名前:デフォルトの名無しさん [2017/02/09(木) 01:15:02.70 ID:/fB7Lbok.net] >>789 Monoあかんか……
815 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 01:50:19.00 ID:bk38Uo9V.net] Goで作られたのは出来のいいやつが多い印象 clojurescriptも入れてくれ 6762
816 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 04:13:32.99 ID:SonJzAjc.net] >>793 どこがそう思った? むしろ下手なLLよりも覚える事少ないと思うが。 学習するだけなら、ほぼ算数/数学と同じ。 代入とかオブジェクト作ってnewとか、コンピュータ都合の概念は無いと言うか、型ぐらいなもの。 用語にビビってるなら、怖がる事ない。
817 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 07:06:30.83 ID:f+azW8iy.net] 型だって、どちらが先か分からんが型理論という形で論理学や数学に合流しているよ。 オブジェクトうんぬんは知らない。 もしかして圏論のオブジェクトと関連するんかね?そうは見えないが。
818 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 07:17:40.39 ID:gkU41vRr.net] >>798 C++/Java系のはSimulaが語源 最初から複雑な仕組みだったし、全然関係ないぞ というか、あのクラスや継承の仕組みのどこで圏論と思ったんだ
819 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 07:30:29.58 ID:ZDdUJ5Qr.net] 数学との関係は 型=プログラムの仕様書=定理で、値=プログラム=証明 という関係だよな 定理を証明した瞬間プログラムが完成している凄い関係なんだよね。
820 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 07:58:57.08 ID:f+azW8iy.net] >>799 皮肉で書いたんだが。 既にある全然関係ない用語をよく使うなぁと。
821 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 08:05:13.55 ID:7uQf4n0A.net] 関数型信者ってなんでこんな押し付けがましいん?
822 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 08:59:47.75 ID:ZDdUJ5Qr.net] オブジェクトは昔から普通の英語の言葉だろ。
823 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 10:12:27.85 ID:X3gAJ9Ta.net] 関数型言語とか言ってるやつは某毛の壁と同水準の頭脳の持ち主だから触らないのが一番いい
824 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 10:43:40.77 ID:qVFFfrqq.net] 何を押し付けるかにもよるな 関数型じゃなくて静的型を押し付けると支持率が下がらない
825 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 11:41:13.14 ID:X3gAJ9Ta.net] 強い静的型付けをいかにも関数型の恩恵みたいに言うやつに、 Javaですら型推論がないだけで普通に強い静的型付けだって言うと決まって顔ひきつらせるの笑える
826 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 12:33:05.97 ID:qVFFfrqq.net] 恩を感じたら負け、顔がひきつったら負け、笑われたら負け でも、型推論がないだけなら負けじゃない 一体何の勝負をしているんだ
827 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 12:53:34.71 ID:aq6OLK4H.net] 関数型で強い静的かたづけがどうこう言ってる奴は型システムと関数型が直交している概念だと理解していない 型システムはむしろオブジェクト指向のほうがややこしい いわゆるきょうへん性はんぺん性の話はオブジェクト指向でも出てくるだろうしな
828 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 12:55:49.56 ID:aq6OLK4H.net] 関数型を叩くときに決まってけのかべを持ち出す奴は気持ち悪いデザパタを何個か知ってるだけでプログラムをかけないし、デザパタの適用範囲も理解できていないだろうね Cすら通っていない気がする
829 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 13:24:20.98 ID:/miB3JEc.net] おまえら煽りあってばっかりやなw
830 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 13:40:38.39 ID:dzc+/x52.net] 関数型なんて簡単やん関数作ればええだけやし モナドとか圏論とか数学じみたクッソ煩雑な概念必須なのHaskellくらいでしょ
831 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 14:08:16.34 ID:xprSmyqC.net] 再帰処理が苦手な人は多いからな
832 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 14:29:45.94 ID:X3gAJ9Ta.net] >>811 Scalaも必要になってるんだよなこれが。
833 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 15:03:52.72 ID:rFsWpsiI.net] >>811 必須じゃないよ。 分からんでも使えるけど、分からないからモヤモヤするから勝手に挫折するだけ。 すごいH本で大分モヤモヤする人少なくなった。
834 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 18:47:14.33 ID:gV98R3Qz.net] >>801 > 皮肉で書いたんだが。 > 既にある全然関係ない用語をよく使うなぁと。 横レスだが、オブジェクト指向の源流はSimulaだがSimulaでは確かobjectという言葉は使用していなかったはず(classとinstanceは使ってる) objectという用語を使いだしたのはAlan KayらによるSmalltalkの初期バージョンあたり(-72ぐらいかな)だろうが 彼らが"object"という言葉を使った時には数学の圏論なんて全く視界にはなかっただろうね 単にコンピュータの中で仮想的な世界を直感的な形で容易に操作できるように(つまり小学生でも習得できるように)作り、 その仮想的な世界での操作対象を「対象」つまり"object"と呼んだだけだ、だって一般用語の意味での「対象」"object"をコンピュータの内部に作り それらを画面上にマルチウィンドウなどのマニュアルを熟読しなくても直感的に習得可能な形で提示し操作するのを目指したのだから そもそもオブジェクト指向が誕生した時代には、ほとんどのソフトウェア屋は数学なんて興味はなかった 数学の圏論なんてので基礎づけがどうしたこうしたなんてのはずっと後の話だよ 数理論理学者が新たな論文を書くネタとして型理論を橋頭保にして大量に計算機科学に参入した1980年代後半以降からだが categoryやらfunctorやらという言葉を(理論方面の研究者でなく)一般のソフトウェア屋の少なからずが口にするようになったのは ここ10年ぐらいじゃないの? 少なくとも世紀が変わってからだ というわけで「既にある全然関係ない用語をよく使う」というのが"Object-oriented"界隈での"object"の使用(「既にある」は圏論での使用)を 指しているのならば、その批判は全くの的外れです OOの連中は"object"という用語を日常用語としての意味で使ったのであって連中には数学など眼中になかった (そもそも圏論なんてのも90年代以降になるまでは理論計算機科学者ですら関心を持っていたのはかなり少数だったし 数学でも代数幾何とか
835 名前:代数位相幾何とか一般代数(universal algebra)など、かなり限られた分野の研究者以外は abstract nonsenseとして敬遠あるいは軽蔑されていたのだから) [] [ここ壊れてます]
836 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 18:49:00.45 ID:gV98R3Qz.net] >>815 の補足 失礼、紛らわしいので以下のように言葉を補い訂正しておく 誤> OOの連中は"object"という用語を日常用語としての意味で使ったのであって連中には数学など眼中になかった 正> OOを創始した連中は"object"という用語を日常用語としての意味で使ったのであって連中には数学など眼中になかった
837 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 19:18:51.18 ID:f+azW8iy.net] >>816 勉強になった。 ガキの頃に見た岩波の数学辞典がガチガチの圏論ベースで書かれていたから、 理論科学系の人間には常識だったと思ってたが違うのだね。
838 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 20:44:11.62 ID:mW4P8Un/.net] >>815 OO の "object" って何だ?って所のモヤモヤ感がすっきりした。アリガd
839 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 21:14:53.16 ID:f+azW8iy.net] >>816 今、辞典を見返してみたが、そうでもなかった。 第二版第一刷が1968年で載ってるなってくらい。 紛らわせてすまない。
840 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 21:28:36.71 ID:Q39QXQMs.net] object指向なんじゃなくて、subject思考なんだよ 俺が言ってることがわかる奴は、object指向も関数型もわかっている
841 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 21:30:06.23 ID:Q39QXQMs.net] object指向主義者は、subject抜きで、形式言語は成立しないとかんがえているだけなんだよ
842 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 21:37:16.22 ID:UTxumv29.net] またくだらんテクニカルターム論になってるな。
843 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 22:03:59.55 ID:f+azW8iy.net] >>820 objectといった時点で主語はあくまで操作者で、むしろobject=データに働きかける関数型のイメージであり、 いわゆるobject自身がsubjectで何かするというのがobject指向ということでおけ?
844 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 22:53:39.96 ID:gkU41vRr.net] すごくざっくり言えば ステートフルがオブジェクト指向 ステートレスが関数型 データを数人で囲んでリンチし続けるのがオブジェクト指向 データを大勢で大玉送りしてネチネチいじめていくのが関数型
845 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 23:12:14.47 ID:+psfLY/9.net] 関数型って流行るの? オブジェクト思考からパラダイムシフトするの? 勉強する価値あるの?
846 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 23:18:52.57 ID:gkU41vRr.net] >>815 いんや、Simulaはコンセプトからして思いっきりオブジェクト指向だし オブジェクトって単語もクラスなどの説明に多用してるよ Smalltalkもオブジェクトという概念の再解釈ってだけで、源流はSimulaと言っていいでしょ
847 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 23:27:43.80 ID:gkU41vRr.net] >>825 人数や流行りが重要ならC、Java、JavaScriptあたり極めとけば? どれも馬鹿にするやつ多いが、奥は深い 中途半端にかいつまむのが一番いけないよ
848 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 23:30:29.54 ID:f+azW8iy.net] >>825 まずは触ってみると良いかと。全然違う感覚で楽しいよ。 プログラミングHaskell(Graham Hutton)が薄くて、 しかし基本は押さえてていい気が。 hugsではなくghcが主流なので注意。
849 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 23:36:42.34 ID:gkU41vRr.net] ぶっちゃけ、今からHaskellはオススメしない stack不安定だし、まともに使えないパッケージ多すぎる
850 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 23:41:42.73 ID:jcuzgsFP.net] >>825 Javaもラムダ式取り入れたし多少はね
851 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 23:51:18.99 ID:f+azW8iy.net] 確かにstack不安定ですね。 でも雰囲気をつかむのなら、やはりHaskellが良いのではないかと。 別にHaskell続けなくても考え方を持ち帰るのはいい経験になるのでは? 他人の意見に惑わされず、まず自分で触るのが大事かと。
852 名前:デフォルトの名無しさん [2017/02/09(木) 23:55:08.80 ID:Jh/6F1Jd.net] >>829 Stack不安定は同意だけど、何がおすすめなの?
853 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 00:01:40.00 ID:5MVdS2z+.net] >>832 Scala最強電鉄
854 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 00:17:36.10 ID:2oDNuzZU.net] 関数型の言語じゃなくても最近の一般的言語で こういう書き方してるやついたらそりゃないっしょって思う var arr = [["x",1],["y",2],["z",3]] var result = {} for(i=0;i<arr.length;i++){ result[arr[i][0]] = arr[i][1] } //-> result: { x: 1, y: 2, z: 3 }
855 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 00:24:28.11 ID:fUC4e4v0.net] LINQもある種、関数型への歩み寄りだよな
856 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 00:45:51.11 ID:sIFP3alf.net] >>834 別にそりゃ無いよとは思わないが… 回すとmapは遅いもの もし元データ表現を言ってるなら、制約で冗長に書く事はサーバーサイドjsだと結構あるよ
857 名前:デフォルトの名無しさん [2017/02/10(金) 00:51:09.50 ID:Nrgs4Acd.net] >>834 Rubyの場合: [手続き型プログラミング・スタイル] arr = [[:x, 1], [;y, 2], [:z, 3]] result = {} arr.each do |(key, val)| result[key] = val end # result --> {:x => 1, :y => 2, :z => 3} [関数型プログラミング・スタイル] arr = [[:x, 1], [:y, 2], [:z, 3]] result = arr.inject({}) { |hash, (key, val)| hash.merge(key => val) } # result --> {:x => 1, :y => 2, :z => 3} 参考: Rubyによる関数型プログラミング www.h6.dion.ne.jp/~machan/misc/FPwithRuby.html この文書にある「列挙オブジェクトからハッシュを生成する方法」を参照
858 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 01:06:01.01 ID:2oDNuzZU.net] >>836 最適化が必要なケースだとか性能超重視のシステムでコーディング規約でしばってるようなケースは別よ 一応確かめてみたけどFirefoxだとmapのほうが若干速い Chromeだとmapが異常に遅い https://jsperf.com/native-map-versus-array-looping
859 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 01:15:08.04 ID:6n4BenjP.net] そういうの見ると無駄にわかりづらくしてるだけだな関数型って思ってしまう
860 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 01:16:56.57 ID:2oDNuzZU.net] >>837 arr = [[:x, 1], [:y, 2], [:z, 3]] arr.to_h => {:x=>1, :y=>2, :z=>3} Ruby好きだわ
861 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 01:17:00.79 ID:sIFP3alf.net] >>838 これ逆じゃない? Firefoxだけmapが異様に速い pushにからくりがありそう
862 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 01:18:40.24 ID:8nnnziXA.net] >>837 Rubyみたいな欠陥言語は出してくんなよ。 列挙子は割と遅いし、空配列とマージって発想はキチガイ沙汰。それが当たり前だと思ってるならもはやキチガイそのもの。 回す前に長さわかってんだから、その長さの配列くらいつくれるだろ。 なんとか型スタイルの問題ではなく、カーゴカルトそのもの。なんとか型を真似してみました、こんなコードだよね、みたいな無様な事はホントやめて。 議論の邪魔。
863 名前:デフォルトの名無しさん [2017/02/10(金) 01:19:48.77 ID:Nrgs4Acd.net] >>840 おぉぉ、いつの間にやらメソッド Hash#to_h が追加されていたんですね 情報thanks!
864 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 01:21:22.89 ID:8nnnziXA.net] >>840 頭おかしいわ
865 名前:デフォルトの名無しさん [2017/02/10(金) 01:22:09.65 ID:Nrgs4Acd.net] >>843 を訂正 X:メソッド Hash#to_h O:メソッド Array#to_h
866 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 01:27:06.72 ID:sIFP3alf.net] >>838 どうやらFirefoxはmapで、事前に領域を予約してるみたい なので、pushがボトルネックで遅いだけ 下の例の通り、ちゃんとnew Arrayしてforで回すとmapより速くなる https://jsperf.com/map-vs-native-for-loop/7
867 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 01:31:56.38 ID:sIFP3alf.net] >>838 あとちょっと誤解があるようだけど、 データ表現云々というのは、サーバーサイドJavaScriptだと、 引っ張ってくる元データの制約で、冗長な抽出コードは書く事がよくあるって意味だよ コーディングルールとかじゃなくて
868 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 01:42:45.21 ID:2oDNuzZU.net] >>843 古いバージョンならHash[arr]でいけるよ
869 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 01:49:13.94 ID:2oDNuzZU.net] >>846 その例で見ても俺の環境だとChromeのmapはfor-loopより95%以上遅くて jQueryよりも遅いくらいだしなんか問題があるんじゃないかな Firefoxのmap/for-loopの差(俺環で8%)のほうが普通だと思う
870 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 05:21:19.45 ID:x+RHeUvW.net] >>825 流行らない。 でも、遅延評価のHaskellは良い経験になる。 例えば [[1,2,3],[4,5,6],[7,8,9]] ってデータ作るのに、 手続き型だと二重ループと代入使う。 Haskellだと [1,2,3]:[1+3,2+3,3+3]:[1+3+3,2+3+3,3+3+3] = [[1,2,3],[4,5,6],[7,8,9]] って性質使ってtake,iterete,map使って書いたり、多分他にも書き方ある。 iterateみたいな無限関数使う経験は貴重。 iterate f x = x:iterate f (f x) って一行だけの停止しない関数。標準で使えるが、自作も出来る。takeとかが無いと停止しない関数とか面白い。 二重ループ処理も関数としてバラして再利用出来るのかと感心したし、逆に二重ループも代入も使えないから頭使った。 でも、プログラマとして大事な何かを得た気もする。 (気がしただけかもしれないが) take 3 $ iterate $ map (+3) [1,2,3]
871 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 05:27:53.31 ID:x+RHeUvW.net] あ take 3 $ itetate (map (+3)) [1,2,3] だったorz
872 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 07:11:07.98 ID:DVfbLU0l.net] 細かいけど、cons使うなら右端はリストのリストかな。
873 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 09:14:27.82 ID:iFUFe9wv.net] >>850 勉強したって流行らなければ時間の無駄じゃないの プログラムなんてお金になってなんぼでしょう
874 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 09:55:14.86 ID:OEqNc6jK.net] じゃあ、マイクロソフトが作ってるC#とかF#いう言語が一番金になるからそれ使え。
875 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 10:27:26.49 ID:WtkyQY/r.net] >>826 Simula 67 は「オブジェクト」と「クラス」という言語機能を提供した初めての言語ではあるけど、 Simula 67 がオブジェクト指向というのは後付け。 特に「クラス」に着目し、これを抽象データ型(簡単にはユーザー定義型)に応用したのがストラウストラップの C++ で 特に「オブジェクト」に着目し、これをメッセージの受け手として用いたのがケイの Smalltalk-72 。 のちに後者の Smalltalk も Simula 67 スタイルのクラス(具体的には継承機構)を Smalltalk-76 から採用するに至り、 両者とも「(継承付)クラス」と「オブジェクト」を有し、理解が足りないと静的か動的かくらいの差しかわからなくなってしまったため、 出自も目的も異なる二人の“OOP”の解釈がが混同され混乱が生じた。
876 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 10:34:42.65 ID:VL68/4tY.net] 関数型でコード短く分かりやすくなるとかほざいてるアホは、それでCやJavaと同じ性能出してくれ。
877 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 10:37:15.55 ID:VL68/4tY.net] 訂正 C、百歩譲って少なくともJavaとおなじ性能。
878 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 10:46:38.55 ID:8U0cA5Uo.net] その辺は言語やコンパイラの完成具合による 昔はJavaだってCと比べればミジンコみたいなものだった 理論的にはScalaはJavaと同じ性能 RustはC++と同じ性能を出せる
879 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 10:50:26.2
] [ここ壊れてます]
880 名前:6 ID:Wf2kRBSt.net mailto: 性能って何を指してるのかわからんが 速度のことならpython全否定かよ [] [ここ壊れてます]
881 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:01:44.89 ID:VL68/4tY.net] >>858 HaskellやOCamlがC++と同じ性能出るって話はとんと聞かんがな。出て数年の言語って訳でもなかろう。 Scalaは言語自体が破綻してるから知らん。 >>859 LL言語とコンパイル言語いっしょくたにする論点反らし乙
882 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:05:06.32 ID:gInMRNOI.net] パフォーマンスクリティカルな部分は、関数内部では参照透過性を破棄して外部からは参照透過に見えるように設計すりゃいいじゃんって思うけどダメなん
883 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:12:58.55 ID:VL68/4tY.net] >>861 それでC++並の速度出るならこんなにdisってないんだよな。 HaskellのSTモナドに芸術感じたのは否定しないが芸術の域を出ないしな。
884 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:14:34.97 ID:FJ3G7akv.net] 関数型言語は巷のIT土方には使いこなせんからw
885 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:17:35.65 ID:Wf2kRBSt.net] >>860 いや関数型=コンパイル言語じゃないし… LL、関数型、コンパイル言語はそれぞれ別の性質の話だしどれが対義語ってものでもないから全然噛み合ってないぞ
886 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:29:24.62 ID:OEqNc6jK.net] そんなに速度重視したいなら手動でHaskellのコードをCにトランスレートすればいいはなしだろ
887 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:32:09.86 ID:E8u1TJrq.net] オールアセンブラ書けば爆速
888 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:33:57.62 ID:VL68/4tY.net] >>864 んじゃ訂正というか具体例にする。 HaskellやOCamlをもてはやしてる奴は、Cほどとは言わんまでもC++、さらに譲ってもJavaくらいの速度出してくれ。 コンパイル言語なんだからハードルはこの辺だろう。 でなきゃこれらの言語は実用に耐えない玩具ということを否定できないぞ。 F#はC#並の性能出るらしいが上限が.net依存だから比較できん。
889 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:38:51.16 ID:VL68/4tY.net] 毎度「そんなに速度が欲しけりゃアセンブリ書いてろ」っていう奴いるけど、 最近のCは人間がアセンブリ書くより速いし、関数型言語が遅い弁解にはなってないよね?
890 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:42:02.18 ID:4wNIZ7mB.net] >>583 言語は流行らないが、機能は流行る。 先取りして概念や使い所に慣れておけ。
891 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 11:47:45.91 ID:4wNIZ7mB.net] >>856 短いのと速いのは関係無いよね? Haskellは遅いとも。 だから、関数型は勉強はしておいて、仕事は手続き型が良い。 関数型の機能を取り入れて行ってるから尚の事。
892 名前:デフォルトの名無しさん [2017/02/10(金) 11:55:51.72 ID:vz9eAXX1.net] なんでコンパイル言語なら速くないといけないの? Haskellが遅いのはリスト使ってるからだし、Cだってリスト使ったら遅い それでもHaskellがリスト使うのはその方がイミュータブルなプログラムが速くなるからだ まさかイミュータビリティは不要なんて言い出すわけ? それともイミュータブルでもミュータブルな操作並みに速くないと許せないの?
893 名前:デフォルトの名無しさん [2017/02/10(金) 11:56:59.97 ID:vz9eAXX1.net] あとHaskellは基本BigIntなのもあったな
894 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 12:19:32.33 ID:4wNIZ7mB.net] >>852 itetateは関数と値を受け取って、リストを返す関数なので、値がリストなら、リストのリストが返ってくるので、これで間違って無いですよ。
895 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 12:36:54.80 ID:DVfbLU0l.net] >>873 そこじゃなくて、真ん中の[1,2,3]あたりね。
896 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 13:37:29.21 ID:B/694aWe.net] ああ、確かに。 Consである必要なかったですね。
897 名前:デフォルトの名無しさん [2017/02/10(金) 13:39:49.21 ID:Yjlp1QL8.net] >>792 coffescriptはオワコンじゃなかったっけ?
898 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 14:11:40.80 ID:r29H8jjf.net] >>855 Smalltalk信者? Simulaはsmalltalk初出以前の言語標準にobjectがコンセプトと明記してるよ そのレスの内容思いっ切り間違ってる
899 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 14:13:29.40 ID:l8wsYG39.net] そもそもHaskell自体を実務に使うつもりで勉強する奴なんか殆ど居ないだろう。 だけど考え方は応用が利くので皆やるわけで...
900 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 14:15:21.10 ID:sIFP3alf.net] >>867 なんか勘違いしとるなコイツ OCamlは普通に速いぞ
901 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 14:18:11.46 ID:sIFP3alf.net] >>849 jQueryの方は見てなかった Chromeのmapが遅いのも確かのようだね
902 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 14:36:09.82 ID:NRmEQgqe.net] >>879 整数がライブラリ噛まさないとビット数足りなくて、そのライブラリが遅くて使い物にならんかったんだがな。 それとも今はまともに速度出てくれるんかね?
903 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 15:22:35.86 ID:jEE+Gxi+.net] なんかオブジェクト指向についていけなかったコボラーみたいに見える 関数型の考え方は手続き型にも役立ってるけどな
904 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 16:34:47.43 ID:sIFP3alf.net] >>881 具体的にどれ? Javaと比べて遅いってんだよな?
905 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 17:50:11.42 ID:WtkyQY/r.net] >>877 > objectがコンセプトと明記してる とまあ件の混同と混乱は、こんなふうに「(クラスや)オブジェクトを使いさえすればオブジェクト指向」と信じて疑わない オブジェクト指向の本質を理解できないOOP難民を量産してしまった ストラウストラップ(と同時期に似たようなアイデアを出した人たちの)“OOP”は、 クラスを使って抽象データ型を実現し、型安全なプログラミングやそのサポート ケイの“OOP”はメッセージングをメタファーとし、動的結合を徹底させるプログラミングやそのサポート、と本質が違う ダールらもSimulaを発表した後に前者のアイデアに気づいたが、最初から狙ってSimulaを作ったわけではない
906 名前:デフォルトの名無しさん [2017/02/10(金) 18:05:32.66 ID:Yjlp1QL8.net] >>877 smalltalkのooとsimulaのooは概念の出自が違う
907 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 18:13:39.09 ID:rXluJnty.net] Haskellについては、鯖サイドに向いてる気がするので、Yesod本の日本語訳出せばそこそこ人気出そうだけどね。 小規模ならLLで良いけど、大規模になって来るとコンパイル終わったらほぼバグ無しってのは凄い強み。 元々、凡ミスバグも手続き型より出しにくい。 無限リストとかが、長さが分かりにくいWebデータのコードをスッキリ書けそう。 (元はParl5インタプリタを本家より早く完成させたのが注目された理由だった) コード量と速さはLL並みなのに、頑強さと並列しやすさは全然違う。 注目集まったら、最適化の進化が早まらないだろうか。。。 アプリも昔のがっちりコード依存のGUIじゃなく、XAMLやHTML/CSSと組み合わせる形なら速度気にしないアプリなら開発効率良いんだろうなって思う。 (だからF#の地位向上には期待してる) 英語出来ないのがつくづく悔やまれるよ。
908 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 18:20:55.48 ID:R5OtDkdz.net] >>883 どれもなにも標準のInt32とInt64。
909 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 18:31:24.42 ID:K96nxyp6.net] >>884 あのねえ、狙って作ってるから、Simulaはobject中心のコンセプトと明記してるわけで そもそも発表した後に言語標準に追記したとしても、Smalltalkより出自は早いから、間違いだよ SmaltalkのOOの概念は知ってるし、否定しているのでもない OOというアイデアを最初に作ったのが、アランケイかのように言ってるから、それは大間違いだぞと言ってるまでだよ
910 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 18:47:41.82 ID:686NvPbu.net] むしろこうやって2者を区別できてないと決めてかかって、仮想敵を叩き始める人間を量産したのが、Smalltalkの悪いところ Smalltalk自体が害悪と言っていいかもな
911 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 19:32:02.73 ID:QwZMX6+7.net] で、OOが2種類ある原因はなんなのか? 静的型と動的型のせいでしょ 直交性なんてないよね
912 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 20:43:29.26 ID:87WOJqFm.net] >>890 アラン・ケイは別に静的型には反対していないよ 彼の望む遅延結合性の邪魔をしない静的型なら歓迎するはず d.hatena.ne.jp/katzchang/touch/20080807/p2
913 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 20:55:14.84 ID:87WOJqFm.net] >>888 いや、だからその「オブジェクト中心」とかいうのをOOPとするのが間違っているんだってわかんないかな アイデアが提出されたのの早い遅いではなくて、抽象データ型のOOPとメッセージングのOOPはそもそも考え方が異なる 早い遅いで言ったら、抽象データ型のOOPの方がダールやリスコフが早く気づいた分、メッセージングのOOPよりも早い >>889 でも実際に区別できていないわけだし…
914 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 21:42:59.21 ID:rXluJnty.net] smalltalkとか懐かしいな。。。 Boolもオブジェクトだったっけ。 (1>3) then: [Workspace display: 'No! 3 is Big!!'] else: [Workspace display: 'Yes. 1 is Small.'] もう十年以上前に触ったきりだからうろ覚えだけど、こんな感じだっけ。 メソッドチェーンが文章的になるの嫌いじゃなかった。 Squeakとかだとコード上のオブジェクトだけでなく、動いてるアプリにもどんなクラスやメソッド持ってるか聞けたり、コード見たり、弄って変更したり出来てたね。 リアルタイムのOS育てゲーム。 上で騒いでるのは静的型言語でも動作中のアプリにクラスやメソッドを聞けて、コード変更と、更新したらすぐに動作に反映出来れば良いって事かな? アサートとかでメタプログラミングも出来るようになってきたし、コンパイル速度もDelphiみたいに速いのもあるし、コンパイラ内蔵実行ファイルとかでサポート出来なくはなさそうだけど、出来ない方がコード資産守れるから会社じゃ採用されなさそう。
915 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 21:48:40.84 ID:1t5JET4K.net] 関数型は確かにコードが短くなるがわかりやすくはならないだろう 短いということは、それだけ文法に暗黙の了解が多いということだ このような代物は背後にある考え方とそれによるメリットだけ頂いて、残りは捨てるのが正解 つまりJava8が正しい
916 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 21:53:27.37 ID:rXluJnty.net] それは関数型、手続き型じゃなくて、クラスやメソッドの命名規則の問題。
917 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 21:59:35.05 ID:87WOJqFm.net] >>893 プロトタイピングでは威力を発揮するので、動作を検証できたら即座に実戦に投入できるという点に惚れ込んで ALLSTOCKERを作っているスタートアップの人たちはSmalltalkを採用しているね https://medium.com/@newapplesho/%E3%81%AA%E3%81%9C%E6%88%91%E3%80%85%E3%81%AFsmalltalk%E3%82%92%E4%BD%BF%E3%81%86%E3%81%AE%E3%81%8B-%E3%81%9D%E3%81%AE2-smalltalk%E3%81%AE%E8%89%AF%E3%81%95-7a3af3cc5823#.8tm02xv3o
918 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 22:00:19.12 ID:1t5JET4K.net] >>895 関数型の利点は短く書けることだと街宣している人間がたくさんいるじゃないか 彼らは命名規則の話なんて一切していないぞ
919 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 22:13:12
] [ここ壊れてます]
920 名前:.95 ID:sIFP3alf.net mailto: >>894 短く済むってことは、良く抽象化されてるって事 つまりそれだけ生産性も高い 文法的に短い事が悪だとかいう考えは改めた方がいいんじゃないか? ただのコードゴルフとは言ってる意味が全く違うからね [] [ここ壊れてます]
921 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 22:15:03.55 ID:rXluJnty.net] >>896 海外じゃ実戦投入してる会社があるのは当時も聞いてた。 でも多数派では無い。 それぞれ会社の価値観に違いはあっても良いが、それが多数派になるかは別問題。
922 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 22:18:07.57 ID:5MVdS2z+.net] >>876 オワコンだよ TSでES201Xと同等の文法+αが使えるのに、 わざわざゴミ屑みたいな新しい文法覚える必要ない
923 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 22:19:27.86 ID:sIFP3alf.net] まさかコードの抽象化そのものを否定するプログラマがいるとは思わなかったな Javaも資産使ったコードは短くなるだろ それと一緒だよ
924 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 22:19:31.11 ID:5MVdS2z+.net] >>894 わかりやすいと思うけど filterとかreduceとかmapとか、自前でforやif組んで書きたいか?
925 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 22:30:41.26 ID:87WOJqFm.net] >>899 おっしゃるとおり もっとも、多数派が正義かっていうとそれも別問題だけどね
926 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 22:39:50.78 ID:sZ6PQDwZ.net] map, fold, filterなどは確かにわかりやすいけど、 再帰的定義は小一時間考えてやっと分かるときがある。 慣れなのかな。
927 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 22:48:55.57 ID:1t5JET4K.net] >>898 抽象化はやればやるほど良いってものでもない 関数型言語は総じてやりすぎでわかりづらい >>902 そういうわかりやすいものは奪っておいて有用に使うのが良い
928 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 22:53:56.20 ID:5MVdS2z+.net] >>905 奪うってなんや おまんは盗人か?
929 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 23:02:03.46 ID:rXluJnty.net] >>897 例えばsum関数ってあるじゃ無い? これって手続き型ならLLでも静的型言語でも基本変わらんよね? (最近はメソッドに関数渡せるようになってる言語増えたから特に) んで、関数型言語だと単純なところだとループを再帰で書くから、計算中の値を蓄える変数が一個減る。 ループ命令書くのも減る。 sum [] = 0 sum (x:xs) = x + sum xs (昔はスタック消費してたが、近年こういう単純な再帰なら、裏で末尾再帰に変形してループに変換してくれる) 次に、じゃあsumの掛け算バージョンが欲しいとする。 Haskellだとproductって関数だけど、言語によって違うのに注意。 product [] = 1 product (x:xs) = x * product xs はい完成。なんだけど、別にこれで関数型が短いって言うわけじゃない。 sumとproductは構造が似てる。 そこで構造を関数に括り出す。 foldr f n [] = n foldr f n (x:xs) = f x (foldr f n xs) -- 演算子は特殊な関数で、(+)みたいに書くと2引数の関数になる。 んで、この関数化した構造を再利用する。 sum xs = foldr (+) 0 xs --普通は末尾再帰の構造を関数化したfoldlを使う。 product xs = foldr (*) 1 xs 最後はsumの最後の引数と、foldrの最後の引数が同じだからカリー化で見た目の引数を省略できる。 sum = foldr (+) 0 product = foldr (*) 1 まあ、カリー化が確かに意図を読み取りにくくするかもだが、そもそもLLっぽく対話環境使って単体テストする時に型を調べれば一発で引数何個で、どんな型を求めてるのか分かるし、不満ならトップ関数の型だけ明記しても良い。 カリー化禁止にしたって良い。 ループ構造も関数化して再利用出来るのが大事。
930 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 23:13:38.42 ID:T/QWskV3.net] なるほど さっぱりわからん
931 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 23:15:34.04 ID:5MVdS2z+.net] わからンゴ
932 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 23:16:19.38 ID:1t5JET4K.net] >>907 正直読む気も起きない
933 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 23:26:19.31 ID:Ks8UPeAC.net] この程度が分からないとか抽象化を云々する以前だろう…
934 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 23:31:17.10 ID:rXluJnty.net] 悪かった。 んじゃかい摘んで。 ループとかの構造を関数化して再利用できる。 他にも色々あるけど、分かりやすいのがこれ。 LLにも似たことが言えて、こっちはジェネリクスっぽい事が、元々型がないからダックタイピングで同じ事が簡単に出来る。 (代わりに型安全性が失われてる)
935 名前:デフォルトの名無しさん [2017/02/10(金) 23:34:06.32 ID:Nrgs4Acd.net] >>904 >再帰的定義は小一時間考えてやっと分かるときがある。 いや、再帰的定義は手続き型と関数型のどちらでも難しい ただし関数型言語や関数型の影響を受けた言語だと、 配列/リスト/辞書/集合といったコレクションの操作は map/filter/fold といった標準ライブラリ関数が提供されている だからコレクション(という抽象データ型)を扱う多くの局面では、 (いちいち再帰的定義をするわけでなく、 もちろん>>834 のようにループでゴリゴリ書くわけでもなく、) 豊富なライブラリ関数を活用して簡潔なコードを表現できる
936 名前:デフォルトの名無しさん [2017/02/10(金) 23:46:05.61 ID:Nrgs4Acd.net] >>905 >抽象化はやればやるほど良いってものでもない >関数型言語は総じてやりすぎでわかりづらい 世の中で普及しているのは大半が手続き型言語だから、 日常的に手続き型言語で思考している人にはわかりづらいかもね 発想を手続き型脳から関数型脳へ転換するという大きな壁が立ちはだかる 例えば某純粋手続き型スクリプト言語の例: LLにおける関数型プログラミング echo.2ch.net/test/read.cgi/tech/1345123070/70-71
937 名前:デフォルトの名無しさん [2017/02/10(金) 23:52:38.73 ID:xAAuNbhK.net] >>910 馬鹿かよこいつやべえな
938 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 23:59:05.09 ID:1t5JET4K.net] >>912 作る分にはなかなか良さそうだが、そのコードを半年後に見ても理解する自信はない こんなにまで抽象度を上げなくても、少し妥協して具体的に書いておけば後で助かる ID:rXluJntyが後者より前者のコードの方を早く理解できるのなら何も言えない >>914 別に超える必要もない 良い所だけ取って残りを捨てるだけで済む そのスレで言えば>>79 と同意見だな
939 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 23:59:56.21 ID:rXluJnty.net] 一応言っておくけど最近の手続き型でもFunc型の導入でループ構造の関数化と再利用は出来るんだよ? ただ、演算子は関数として扱われないのでラムダ式必須だったりするだけで。 んで、関数型言語はまだまだ抽象化の機能がある。 それらがどんな形で入るのか待ちながら先取りして勉強しておくと将来有利になるし、今も関数型言語だと裏で勝手にやってる事を自分が気をつける事で実践出来るものもある。
940 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 00:09:19.50 ID:uRBrgRbG.net] >>916 えとね。 構造を関数化してるから、関数名から構造が読み解けるのよ。 耳慣れない関数名だから慣れてないだけで、慣れればむしろ読み易い。 ぶっちゃけ関数合成とか$でカッコを省略とかはメソッドチェーンと思って良い。 と言うか、忘れても他人でも理解する為のドキュメントだろ。 書かない時点でブラックかグループ開発してない。 いくら仕様をそのまま書き下せるって謳い文句の関数型や論理型でも、規模がでかくなりゃドキュメントくらい書くだろ。
941 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 00:20:17.16 ID:PF8ePb43.net] 慣れれば読みやすいとかドキュメントがあれば誰でも理解できるとか言い出す人と、 YESハイブリッドNO関数な俺は永遠に平行線なのでもうやめよう おそらく分かり合ってしまうと天変地異が起こる
942 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 00:22:14.72 ID:ria0yk5C.net] >sum [] = 0 >sum (x:xs) = x + sum xs この手の言語見たこと無かったらこれが関数定義してるってこと自体がわからんのよ (x:xs)でパターンマッチしてhead|tailに分割してることもわからない そういう状態だとさっぱりわからないほうが普通だろ まそういう人こそ関数型を学んだほうがいいと思うけど それも扱ってるドメイン次第じゃないの
943 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 00:26:19.59 ID:0GjTSBdX.net] filter処理を filterと書くか、tempListとforとifを書くか map処理を mapと書くか、tempListとforとifを書くか 半年後見て、どっちがわかりやすいかなんて ひとめりょうねんやろ
944 名前:デフォルトの名無しさん [2017/02/11(土) 00:32:28.22 ID:bFcm8Xsz.net] >>912 >LLにも似たことが言えて、こっちはジェネリクスっぽい事が、 >元々型がないからダックタイピングで同じ事が簡単に出来る。 LL という言葉が Python/JavaScript/Ruby といったスクリプト言語を 指しているのなら、その認識は誤っている これらLLはどれも関数型言語の影響を受けて (>>913 でいう) map/filter/fold に相当するライブラリ関数を標準提供している だから(その適性度に差異はあるとしても)関数型プログラミングを実践できる またダックタイピングに関しては、LLコミュニティ全体で邪道と共通認識されている (現在の)LLの特徴の一つは動的型付けであるけれど、データ型を無視する ダックタイピングは嫌われている(その場限りの使い捨てプログラミングであれば許容されるが,,,) ジェネリクスやダックタイピングといったデータ型(or 型システム)に関する概念と 手続き型/関数型という計算モデルに関する概念は直交するものであり、ごっちゃにすべきではない
945 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 00:33:39.15 ID:ria0yk5C.net] 個人的に関数型の良さは 小さな関数を合成してパイプラインを作れるところだと思ってる
946 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 00:45:25.28 ID:z0i3VjKa.net] >>894 本来プログラムは短くかけるもんなんだよ コードが長くなる理由の大半は 型推論のない静的型宣言 融通の聞かないジェネリクス ローカル変数の定義、束縛 関数名が長い 引数が長い ライブラリ使用時の作法、データ制約にたいする適合 ラッパークラス 汎関数使用に制約がかかっている マクロの使用に制約がかかっている データ型を宣言するたびに自分で使わない関数をインプルメントするということがビジネスを度外視したドカタ行為であると理解してからOOPを使おうね 次コードが遅くなる原因
947 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 01:02:29.08 ID:ria0yk5C.net] >>924 >データ型を宣言するたびに自分で使わない関数をインプルメントするということ ん?意味が分からん
948 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 01:15:27.54 ID:z0i3VjKa.net] コードが遅くなる原因 アルゴリズムが悪い アルゴリズムが悪いと思っているが高度なアルゴリズムを設計実装できない ディープコピー 安全性(バウンダリー、オーバーフロー) ガベージコレクション メモリアロケーション 配列を使わない (ポインタを集約しない) 二分平衡木など木構造を使いこなせない マルチコアを活用しない 非同期処理を活用しない IO待ちネットワーク待ち 関数型というのはコンピュータアーキテクチャを知らなくてもかけるようになっているが、何がドメインにおけるbyrefつまり変更しうる点なのか、何がbyvalつまり本質的に不変な値であるかを考えずに書くということはない 何が並行的に処理できて、何が並行処理できないかも概ね予想がつくようになっている 大量のrefオブジェクトが、相互に結び付き合って動的に変化していくようなプログラムはcでかくほうがいい それは明らかに並行処理不可能で、ポインタによる大量のref宣言がないとガベジコレクトあるいはrefにたいする参照コストが高くつくからだ 一方でそれ以外の分野、たとえば給与計算システムを書くにあたって命令的プログラミングは保守の足かせにしかならない なぜならば命令型になじめば、必要以上にrefオブジェクトを定義するからだ 関数適用による遅延評価よりも、ポインタ変数の書き換えのほうが、常に高速であるというのだから、仕方のないことだ
949 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 02:21:40.45 ID:Xp+0sQ+z.net] >>905 なんか駄目プログラマっぽいな 抽象化は手続き型でコードをライブラリにして使用する、というだけでも起ってる事だよ それとも、使い方を知らないから不要とでも言うのか?
950 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 02:26:38.98 ID:PF8ePb43.net] >>927 やりすぎが良くないというだけで別に抽象化を否定していない 可読性を損なうほどの抽象化なんてドブに捨てたほうがよい
951 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 02:34:57.87 ID:PF8ePb43.net] 誰もが知っているDRY原則でさえ、時としては不正解になりえる 俺と同じ意見を拾ってきた postd.cc/on-dry-and-the-cost-of-wrongful-abstractions/ http://プログラマが知るべき97のこと.com/エッセイ/共有は慎重に
952 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 02:57:37.46 ID:Xp+0sQ+z.net] >>928 手続き型は冗長すぎて可読性を損なうからダメだ、と言うのと同レベル そちらの言う関数型云々という主張はそれ以前の話だと思うが そしてDRY原則が抽象化であるというのが解釈間違えてるよ 抽象化という作業には適切な取捨選択という意味もあるから
953 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 03:06:25.79 ID:Xp+0sQ+z.net] というかDRY原則とか久々に聞いたな 少し和んだ
954 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 03:17:56.37 ID:Xp+0sQ+z.net] >>925 ドカタ用のOOPはAdhocな実装しかできないのを言ってるんじゃないの 汎用型の操作を挿入したくても、合わせるために後から基底クラスやインターフェースぶっこむとか無茶できないしな
955 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 03:20:13.58 ID:uRBrgRbG.net] >>928 それは自分でコントロールすればいいだけで、関数型言語を否定する理由にならない。
956 名前:デフォルトの名無しさん [2017/02/11(土) 03:38:55.41 ID:1GGXJcPM.net] >>921 それ単にライブラリ使うか自前で書くかの違いしか言ってないよね。
957 名前:デフォルトの名無しさん [2017/02/11(土) 05:08:14.46 ID:R87vRIPm.net] >>886 perl5じゃなくてperl6な
958 名前:デフォルトの名無しさん [2017/02/11(土) 05:18:05.14 ID:R87vRIPm.net] >>907 言語仕様で再帰はループ最適化されるようになってるの?でなけりゃちょっと、、、
959 名前:デフォルトの名無しさん [2017/02/11(土) 05:31:02.37 ID:R87vRIPm.net] >>914 関数型がわかりずらいってことは無いと思うが、抽象化のやりすぎが害ってのは程度や周辺の環境にもよる。 実例では、昔bazzarって分散バージョン管理システムがあって当時はgit, mercurialとならんでvcs御三家だった。 UTF-8対応とかsvnからの移行のしやすさとか他より進んでたけど、過度の抽象化・内部隠蔽やりすぎて速度出ないわ複雑化したちゃったわで廃れた。後年中の人が反省してた。 速度については実装言語がpythonってこともあったけど、同じくpython使ったmercurialよりも廃れるのが早かった。
960 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 07:08:44.79 ID:UbYHAA6y.net] >>907 非常にわかりやすく説明されてますね。 (+) (*)だとまだfoldのありがたみが分からない人がいる気がするので、λ式を使う例も挙げると、 例えば数値リスト中の最大値を求めるには、 foldl (λx ->λy-> if x < y then y else x) 0 とすればいい。 ループって、i -1の時点での結果(上のx)と、iの要素(上のy)をゴニョゴニョするパターンが多いから、 それらをfold(foldr、foldl)でまとめとこう、ということ。 上の右端の0は、i=0での初期値(最初のx)。 最初はうっ、となるかもしれない
961 名前:けど訓練だわね。 xがi - 1の結果、yがiと見ながらやる。 慣れるまでは全部λ式で理解した方が迷わないと思う。 [] [ここ壊れてます]
962 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 07:33:46.72 ID:4lMkkL1V.net] 最近プログラミングを始めた初心者なんだけども プログラミング言語ってのは万能では無くて それぞれ用途によって成り立ちが違うものだと理解していたんだけども違うの? それぞれの分野でいろんな方面に(意図的に)特化された言語が出てきてて それが次世代の言語なんだと思ってた 同じ分野の言語ならともかく 違う分野の言語同士の優劣を議論しても無意味な気がするんだけど… 的外れな事言ってたらスイマセン…
963 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 08:12:27.67 ID:JyXRsfxl.net] 正論言うのは初心者だけか。
964 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 08:16:38.80 ID:uRBrgRbG.net] >>935 プログラミングから離れて久しいのでうろ覚えだったん。。。 ご指摘感謝。 >>936 5年くらい前までは再帰はスタック消費するからと入門用で、実際には末尾再帰を書いた。 当時もリストを受け取ってリストを返す関数は遅延評価のお陰?でループになってたけど。
965 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 08:20:55.94 ID:uRBrgRbG.net] >>922 関数型もLLも手続き型のコンパイラ言語より短いのと言われるので、短い理由が意図を圧縮(高い抽象化)とは違うと言うのを伝えたかった。 ご指摘の通り、関数型由来の機能が多いからだが、これはコンパイラ言語にも入ってるので、違いと言うとそれぐらいかと思って。
966 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 08:30:07.41 ID:uRBrgRbG.net] >>939 特定分野のはある意味圧勝してるのであまり話題になりませんね。 ここで議論されるのは応用範囲が広い事を前提に作られた汎用言語が多いです。 なので、生産性重視か、実行速度重視かのバランスや政治的理由(どんな企業がバックに付くか)でしばしば論争になります。 仕事に使うだけなら流行りの言語でいいですが、いち早く波に乗りたいならどんな言語か?と。 個人的には言語自体は流行らなくても、オブジェクト指向ならsmalltalk。関数型ならHaskellを学んでおくと、突き詰めた先に何が待ってるかが見えて勉強になると思ってます。 ただ、突き詰め過ぎて実践より研究向きなのであくまで勉強用です。
967 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 08:48:31.39 ID:4lMkkL1V.net] SIの営業を10年位やってまして 自分の売ってる物をちゃんと理解したくて 数年前から暇を見つけては独学で勉強してるんですが サーバインフラ周りはひと通り理解した(つもり)ので プログラミングを始めた感じです ひとまず書籍が入手しやすいpythonをやってますが 同僚のSEに他にどんな言語勉強したら良いか聞いたら 「現状ならjavaやるべきだけど多分衰退するから もっと先を見据えるなら他の言語やっとけ」 と言われまして次世代言語について調べてる次第です いろいろあってどれが良いのかさっぱり判らんです…
968 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 09:07:44.10 ID:xeNWfnm4.net] 言語なんて少ししかないんだから思いついたら全部やればいいんだよ そうすることによって異なる言語間でで共通した部分が浮き出てきて 新しい概念何て何もないんだ、組み合わせが違うだけなんだということが わかるんだよね。
969 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 09:18:04.26 ID:uRBrgRbG.net] >>944 SEさんはご自分の立場視点で言ってますが、営業が覚えるべきは自分の会社のサービスは何に役に立つか?どんな強みがあるか?です。 プログラミング言語ではありません。 そのサービスがどう言う仕組みで動いてるかを学ぶにしても、ネットワークの仕組みとか、そう言う概要的なもので良いはずです。
970 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 09:20:33.72 ID:iADUiS1q.net] >>945 言語なんか少ししかない
971 名前:ニかどんな観測範囲で生きてるんだよ [] [ここ壊れてます]
972 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 09:24:36.21 ID:xeNWfnm4.net] 宇宙に存在する原子の数に比べていってるんだよ。
973 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 10:07:36.85 ID:Xp+0sQ+z.net] >>939 無意味ではないよ むしろせっかく各言語の使用者が集まってるのに、議論を放棄する方が勿体無い 例えば初心者なら、学習コストについては興味あるだろう? 虚無主義こそ無意味
974 名前:デフォルトの名無しさん [2017/02/11(土) 10:57:18.09 ID:1GGXJcPM.net] ループに展開されることを期待して再帰書くってなんか負けてるよね。 最初からループ書けよって思っちゃう
975 名前:デフォルトの名無しさん [2017/02/11(土) 10:58:15.33 ID:R87vRIPm.net] >>944 俺はpython好きじゃないけど、pythonの選択は良いと思う。 javaは日本の場合は、お役所案件とかクソ面白くない仕事したいとか他に選択の余地が無いからしょうがなくやる感じ。 ブロックが波カッコの方が好きなんだけどなぁ。 pythonはエコシステムがそろってきててポジティブフィードバックができてきてるからそのまま深めるといいと思うよ。 俺も主要linuxディストリブューションのデフォルトpythonが3系になったら真面目にやり直そうと思っている。
976 名前:デフォルトの名無しさん [2017/02/11(土) 11:01:59.47 ID:R87vRIPm.net] >>950 再帰で書いた方がスッキリ書けるのもあるから、そういうのでスタック消費気にせず書けるようになると嬉しいよ。
977 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 11:15:25.28 ID:U4DU79V8.net] 再帰はスタック無駄消費するしフローチャートに起こしにくいしでいいことがないので、レビューで出されたら突き返してる 末尾再帰がループに最適化されるなら初めからループで書けばいい話だしな。
978 名前:デフォルトの名無しさん [2017/02/11(土) 11:21:17.30 ID:vYnF6jq+.net] 953は高齢おっさん
979 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 11:23:43.12 ID:OKIE+D8i.net] >>944 これからの時代は知能プログラミング、知識プログラミングになっていきますから、 そういうものに向いていて、最先端のものが次世代プログラム言語です。 ところが、現在この分野で主流のPythonはMITで流行っていたから現在も 使われているだけで、特別理由があってのことではありません。 LISPやPrologも旧世代の言語で次世代というようなものではありません。 現在、その芽もないという状態だと思います。強いてあり得るとすれば、 Haskell。
980 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 11:26:38.99 ID:U4DU79V8.net] >>954 せめて内容に反論してくれ……
981 名前:デフォルトの名無しさん [2017/02/11(土) 11:29:16.75 ID:fyD8uwxk.net] 最適化してくれるんなら再帰で書くだろ、普通。 なんのための高級言語なんだよ。
982 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 11:45:29.33 ID:bKkZmPiT.net] コンパイラの挙動を意識せずにプログラミングできないものか
983 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 12:04:05.35 ID:U4DU79V8.net] >>957 書き手のミスで末尾再帰でなくなった時になにも言わずにスタック使った再帰に変わるのは危険だろ。 なら初めからループで書いた方が間違いが起こらない
984 名前:デフォルトの名無しさん [2017/02/11(土) 12:20:17.71 ID:C+/v5lR8.net] なんでわざわざ次世代言語スレに古いおっさんが湧くんですかね……
985 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 12:24:49.75 ID:xeNWfnm4.net] 古いオッサンはフローチャートが大好きだからすぐわかるな。
986 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 12:28:02.82 ID:Xp+0sQ+z.net] 再帰の危険性はまあ同意するけど フローチャートは無いわ 無いというか引くわ
987 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 12:28:40.99 ID:cPTgzj2b.net] >>953 末尾呼び出しが最適化される文脈なら、 コードとフローチャートは一対一で対応すると思うぞ >>959 それは書き手の問題でループでもバグは生まれる
988 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 12:52:34.51 ID:qQmrAco8.net] ふ、ふ、ふ、ふろーちゃーとwww コード書くのにふろーちゃーと作ってる化石発見wwww
989 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 12:54:30.58 ID:0GjTSBdX.net] 次世代言語スレでフローチャートなんて単語がびっくらポンと飛び出るとは思わなかった
990 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 13:00:04.46 ID:z0i3VjKa.net] >>944 システムインテグレータなら業務システムうってるわけだ
991 名前: しかも開発したいわけじゃなく売り物の勉強がしたいと それならJavaでいいんじゃないの たぶんもの自体がJavaでかかれてるだろうし、Javaは業務システムでの公用語みたいなもんだ 同僚SEが何を持って次世代としていて何故Javaを終わった言語とよんでいるかによるね 個人的にjavaがダメなところを指摘すると、OOPを強制するところだ、OOPはたいして役に立たない上無駄な構文を沢山導入する、これらはコンピュータのためのものであって、顧客や人間のために用意されたものじゃない それでも個人的にはjavaをオススメする あと関数型言語を少し勉強する (haskell,ocaml,clojure,scala) 個人的には同じjava系言語のclojureかscalaをオススメする これらの言語はJavaを簡単に呼び出せる 何故関数型を勉強すべきか 1.顧客が必要としているものを記述する上でもっとも短い表現を考えることになる、そしてそれはコンピュータで動作する 2ドメインにおいて不変なものと可変なものの見極めをするようになる、それは要件定義においても、データベース設計においても有効 pythonもスクリプトとしていい言語だからそれでもいい ただし2.を真剣に考える助けにはならない それを補う意味でもエリックエヴァンスのドメイン駆動設計も一読をオススメする、これは業務システム設計の本だがOOPと関数型の架け橋たりえる内容を含んでいる、ただ独特な用語が多過ぎて初学者には難しいかもしれない 個人的に関数型が好きなのは、用語の定義づけ、概念の適用範囲が割と明確だから、設計にも活用しやすいことだ、ここで学んだことをもちろんCやC++でも使えるようになる 要は人間様のために書くのかコンピュータ様のために書くのかということを分けて考えられるようになる [] [ここ壊れてます]
992 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 15:16:27.69 ID:2PZ2/Gs1.net] >>950 手続き型でも再帰の方が一般に読み易い。 だけど再帰はスタック消費するから敬遠されてた。 Haskellも最初はそうだったけど、今は違うし、関数型の再帰は上でも言ったけど、ループを関数として括り出して再利用出来るのが良いのよ。 最近のLLやC#でも同じ事出来るけど、演算子も関数ってのが効いててHaskellのが自然に書ける。 遅延評価で無限の数列や無限に繰り返す関数を扱えるのも大きい。 ファイル処理とか大活躍。 この辺はHaskellだと自然だけど、手続き型はFunc型やイテレータ、エナメレータとかって新しい機能の追加で対応してる。 関数型は数学的な関数+データ構造+副作用のある関数ってだけの知識が、手続き型だとどんどん覚えることが増える。 ハイブリッド言語になる程そうなる。
993 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 17:37:28.50 ID:ria0yk5C.net] >>944 自分でプログラミングできるようになりたいならPython続ければいいと思う 業務システムで役立つ概念とか考え方を学びたいなら>>966 の進めてるDDD本を読んでScalaかF#勉強するのが現状ではオススメ ただ営業ならプログラミングを勉強するよりコードを書かない”SE”がやってる仕事を勉強したほうが100倍役立つと思うよ
994 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 17:44:38.51 ID:ria0yk5C.net] >>939 超正論 コンテキスト次第でどの言語がいいのかは変わってくる
995 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 17:56:01.24 ID:2PZ2/Gs1.net] 営業なら社長さんか、社長の考え知ってそうな上司から、どんなシステムの使い方を想定してるのか、今後どう進化させるつもりか聞いた方がいいんじゃないかな。 言語って結局アイデア実現させる道具で、より使い易いのが出たら移り行くものだし。 トップがどんなアイデア持ってるかが重要だと思うの。 (もしくはアイデア担当者)
996 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 18:24:10.77 ID:v4Iby9pe.net] フローチャートがだめな根拠が「古いから」だけでは差別だからな 数学的根拠が欲しい そうやってフローチャート叩きを利用して関数型が勢力を拡大してる
997 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 18:29:53.26 ID:ria0yk5C.net] 何のためにフローチャートを書くのか、もしくは昔は書いてたのか自問したほうがいいかも
998 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 18:32:20.85 ID:Dru7rPMr.net] 関数型でもフローチャートは有効だけど データフロープログラミングなんてその最たるものじゃね フローチャートの逆は、GUIに代表されるイベントプログラミングでしょ よくUMLのクラス図だしてフローチャートはオワコンだって言ってる奴がいるけど、そいつはuMLすらしらないから放置していい
999 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 18:36:52.20 ID:jrzBmbad.net] > フローチャートの逆は、GUIに代表されるイベントプログラミングでしょ そうなんだよね、イベントループからコールバック関数に処理が移る過程を フローチャートでどう表現すればいいのか分からなくて、独自のチャートを 追加して誤魔化したっけなぁ…
1000 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 19:43:22.33 ID:QWfOXaMD.net] 基本はBASICだよ
1001 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 20:02:46.46 ID:qQmrAco8.net] >>971 書く時間が無駄だから!!
1002 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 20:07:11.81 ID:4lMkkL1V.net] 仕事から帰ってきたら物凄いレスついててびっくりです みなさんありがとうございます pythonをやってみての印象は「何でもできるんだなー」という感じでしょうか ひとことで言うなら「汎用的」というのがしっくりきました だからこそ思うのですが、こんだけ汎用的に使えるのに 何で他に多数の言語が存在するのかが不思議でならなかったです それで他の言語はどんな感じ何だろうかと思って同僚に聞いた答えが>>944 ですね そういった経緯で色んな言語について調べてたのですが 次世代の言語はjavaやpythonといった現行の汎用的な言語に関数型言語をミックスしたものかその逆かっていう印象です ひとことで纏めるとそんな印象なんですが、軽く仕様を見るとそれぞれ全然違うんですよね… goやrust辺りは何となく理解できなくも無さそうなんですが scalaで「えっ?」てなって、haskellで「???」ってなって、 erlangに至っては理解することを諦めました… 唯一理解できたのはerlangのvmに魅力を感じてelixirを作ってしまったという人の心境だけでした… 仕事で使う訳でも無いですが、pythonを書いてるのは純粋に楽しいです 将来的には起業とか考えてるので仕事で使えそうな次世代言語も勉強してみたいですが、 まだ時期尚早(私の能力的に)なんだろなと痛感してたりします まずはpythonを自由に書けるようになってからjavaとhaskellを勉強してみようかなと思います いろいろなアドバイスありがとうございました
1003 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 20:16:03.84 ID:2PZ2/Gs1.net] Erlangはそんな難しい印象なかったが。。。 Prolog由来の大文字がウザかっただけで。 Haskellは基礎を学ぶならプログラミングHaskell。 んで、モナドとはなんぞや?を理解したいならすごいH本へ進むと良いよ。 初心者はむしろJavaとかよりHaskellのが算数・数学に近いから馴染み易い。 Javaから行ってもいいけど、Haskell覚える時はJavaは一旦忘れて、数学をプログラミングに広げたのがHaskellだと思えば良い。 (実際、紙と鉛筆があればプログラミングと動作の確認ができる)
1004 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 20:28:42.84 ID:C+B9fCOA.net] フローチャートが描かれていたのは、紙に書いて専業のパンチャーに 打ってもらった時代の名残り。今はエディタを操作する速さにチャート 編集がついていけなくなった。 フローがわかりにくい部分のみをチャートに書き出すのはありだろうが そもそもそんなコードは書くなっていう
1005 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 20:41:24.76 ID:v4Iby9pe.net] >>979 その理屈だと、キーボードとコマンドの速さに、タッチパネルとGUIがついていけない
1006 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 20:43:04.84 ID:7Nq7SR91.net] >>978 >初心者はむしろJavaとかよりHaskellのが算数・数学に近いから馴染み易い。 これ、自分もそう思ってて、 会社の初心者のエンジニアにこう吹き込んでプログラミングHaskell渡したら、 舐めてんのか的なリアクションだったわ。 実績ある?布教したいので、うまいやり方を教えて欲しい。
1007 名前:デフォルトの名無しさん [2017/02/11(土) 20:49:32.91 ID:WuFir4ww.net] 次世代言語はいつまで経っても次世代のまま。 SwiftやKotlinの様な中庸な言語の方が余程将来性ある。
1008 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 20:50:51.13 ID:2PZ2/Gs1.net] それはもう、エンジニアとして初心者でも、それなりに手続き脳に固まってるんだと思う。 手前勝手だが、パブーにHaskell入門以前ってepubの本置いてるので、使えると思ったら読ませてみて。 (パブー Haskell で検索) あんまり純粋関数型言語ってブランドに振り回されてもいけないと思う。
1009 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 20:52:11.41 ID:Dlx8qt0u.net] 初心者なら環境作りも楽で強力なIDEの恩恵が受けられるF#がいいと思うなあ もっと関数型について深くまなびたいとなったらHaskellやってみない?という流れが良いんじゃないかな HaskellはHello,Worldまでが遠すぎるから初心者にはどうかなあ
1010 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 20:55:58.54 ID:2PZ2/Gs1.net] え、JavaやPythonの環境構築と変わらんが。。。 あれ出来なかったらプログラマ以前の問題。
1011 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 20:56:30.71 ID:Dlx8qt0u.net] いやプログラマじゃなくて初心者の話でしょ
1012 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:04:17.29 ID:2PZ2/Gs1.net] >>982 Haskellは永遠の次世代言語何だろう事は承知してるが、学ぶべき言語である事に変わりはない。
1013 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:07:57.21 ID:2PZ2/Gs1.net] >>986 全くの初心者も一応?想定してるので無問題。 あれで拒否られたら、ただの食わず嫌い。
1014 名前:デフォルトの名無しさん [2017/02/11(土) 21:08:58.10 ID:0eM0mGZz.net] Haskellは言語仕様は好きだけど、学べるまでが遠い Stackがもっと整備されるまではコンピューター初心者に勧めるものじゃない
1015 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:11:13.26 ID:Dlx8qt0u.net] いやまあ環境構築の部分は別にそこまでこだわらなくてもいいんだけど 要はより簡単に始められて、簡単に出力するプログラムもつくれて、間違いもIDEに指摘してもらえるってこと HaskellはHelloWorldまでに学ぶことが多いから初心者に向くのかなあと思ってね
1016 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:15:17.00 ID:2PZ2/Gs1.net] なぜstack。。。 そこまで応用出来んでも、十分既存の言語使うのに役立つ知識を吸収出来る。 アルゴリズムをコード丸暗記馬鹿とかに効果覿面。 (おいらの事だ)
1017 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:15:25.18 ID:v4Iby9pe.net] 初心者に静的型付けを布教するな Java初心者にはジェネリクスを教えないし C++初心者にはCを教える
1018 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:16:47.99 ID:9jDGkB4H.net] エディタを、Haskell用に補完も出来る、コンパイルも出来る、バッファ内でghiが動くように持ってくだけでも一苦労だわ。
1019 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:20:21.10 ID:Xp+0sQ+z.net] 純粋関数型と言うが、よく考えたら結構ひどい宣伝だな 真面目に製品レベルで組もうとすると、traceやunsafePerformIOが増えてくし そこまで行かずとも、IOUArrayとか使ってるだけでIOだらけになって、純粋って何だっけとか思い始める
1020 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:21:28.63 ID:2PZ2/Gs1.net] >>990 それこそ、Haskell知ってる人(>>981 )が身近に居るなら、その人に聞けば良いじゃない。 それでなくてもHoogle教えれば勝手に調べられるし。
1021 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:23:10.42 ID:Xp+0sQ+z.net] >>993 leksahとか使ってあげてよ…
1022 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:24:23.52 ID:7Nq7SR91.net] >>983 ありがとう、見てみるよ。
1023 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:27:00.53 ID:7Nq7SR91.net] >>995 いや、解説するまでもなく、渡して一時間でごめんねー自分そこまで賢くないから、 ごめんねー、 と、ややおこで返却された。
1024 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:27:29.82 ID:2PZ2/Gs1.net] >>993
1025 名前:待て待て、ただの学習用になぜそこまで環境整える。 普通に好きなエディタでいいよ。 何も本格的に使う訳じゃない。 良い概念覚えて知ってる言語に活かせってんだろ? [] [ここ壊れてます]
1026 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:30:05.06 ID:0GjTSBdX.net] 「フローチャートは時代遅れの厄介者」 1975年初版発行の『人月の神話』より >1975年 >1975年 >1975年 わかるか?
1027 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています