1 名前:デフォルトの名無しさん mailto:sage [2015/09/30(水) 10:56:12.10 ID:U+dh/xlD.net] 前スレ 【JavaScript】スクリプト バトルロワイヤル51【php,py,pl,rb】(c)2ch.net peace.2ch.net/test/read.cgi/tech/1438094104/
110 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 09:14:21.36 ID:gCkyElll.net] Smalltalkのセレクタ見てたら主語はともかく動詞ってのはどうかと思うけどな 動詞のようなものもあるけど他の多く(?)は何と言うんだろなこういうの 例: www.gnu.org/software/smalltalk/manual-base/gst-base.html#Array add: value ←動詞 atAll: keyCollection ←atって何だっけ? copyFrom: start to: stop ↑こういう複数のやつだとどう考える?fromとtoは無視して動詞と言い張る? value ↑こういうのはメソッドじゃないから動詞じゃなくていいとする? それとも都合よく(get value)みたいなのの省略だと考える?
111 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 09:50:58.72 ID:BaxKs2Tu.net] >>110 >>98 を全否定しているわけではないのだから、まあ、落ち着こうよ。 Object は Object でも、OOPのOは文法要素の目的語であるところのOとは別だというだけ。 とりあえずまず、発案者のアラン・ケイの言う>>100 の参照先をベースに話を進めないか? もしどうしても Smalltalkをベースにしたいなら、やはり彼の書いた The Early History of Smalltalk gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html の 「By this time most of Smalltalk’s schemes had been sorted out …」のあたりからがいいだろう。 Smalltalk はちょっとかじったことがあるから、彼の文章でわかりにくいところがあったら訊いてください。
112 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 10:10:59.25 ID:YhiK7HuV.net] Smalltalk系の「オブジェクト」とは「ソースではない」という意味だ ソースをemacsで書いてコンパイルする言語とは違う emacsがなくても動的にメソッドを追加したりできる
113 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 10:17:49.04 ID:BaxKs2Tu.net] >>98 派がリンク先にアクセスしたら死ぬ病気の人だといけないので、>>100 の参照先をコピペしておくよ。 ▼新しいアイデアを学ぶとはどういう事か? このような柔軟な機能はどれだけ複雑である必要があるだろうか? 文法上は決して複雑で無くてもよい。 なじみ深い英語の語順である主語、動詞、目的語(よく前置詞や、たまに暗黙の主語を伴う)があれば 全く十分だ。オブジェクト指向の言い方で言うと、主語はメッセージのレシーバであり、文の残りはメッセージだ (ここでは「動詞」を強調※して書く)。これで次のような読みやすい形式になる。(※強調は _ でくくった) 3 ‘this is some text’ pen _up_ 3 _+_ 4 3 _*_ ( 4 _+_ 5 ) car _forward by_ 5 {1 2 3 4 5 6 7} _collect_ [ n | n _odd_ ] _Repeat_ (1 _to_ 100 _by_ 2) _do_ [ ******* ] そして大切なのは、この単純な決まりに従って必要なだけ新しく読みやすい記法を作る事が出来る事だ。 これは、ユーザが文法と意味の関係を一つだけ念頭に置いておけば良い事を意味する。 レシーバ メッセージ -- レシーバが意味を把握している事を意味する。 という事で、オブジェクトはただネットワーク上のピア・ピア・サーバのように考えられ、使われると考える。 (これは偶然ではなく、六十年代後期におけるARPAnet から Internet にかけての開発にさかのぼる アイデアを起源とする)。 従って、動的なオブジェクト指向プログラミングを行うという事は通信しあうオブジェクトでシステムを設計し 構築する事になる。もしもわたしたちのオブジェクトシステムの内部がそれ自体オブジェクトから出来ている とすれば、必要な構造上の知識は全て知っている事になる。
114 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 10:35:30.54 ID:a474rjS3.net] 確かに、本当に通信し合うオブジェクトを扱うErlangは大規模なサービスで使われてるね 昔はマイナーだったけど、やっぱり本物は残るんだね 一方ニセモノのオブジェクト指向のSmalltalkは死んだね
115 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 10:56:29.02 ID:YhiK7HuV.net] Smalltalkはコネがない 大抵の言語はC言語のコネがある ErlangはPrologやSQLのコネがある?
116 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 11:19:27.13 ID:BaxKs2Tu.net] >>115 現在よく使われ名前が知られた言語等との“コネ”ということなら、Smalltalkにはないはずですよ。 なにせ作られたのが、ここでコネ元として挙げられているC言語と同時期の1972年頃ですから。 強いて挙げればSIMULA67、LISP、Logoですが、これらが今よく知られ使われているかというと 難しいところです。
117 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 11:31:04.82 ID:BaxKs2Tu.net] >>114 ちょっとググればわかりますが、Smalltalkはまだ死んではいないようですよ。 Squeakやそこから派生したPharoなどのコミュニティは比較的活発ですし、 ゼロックス謹製のSmalltalk-80の直系であるCincom社のSmalltalkでVisualWorksという 商用の処理系もあるようです。ファンお手製のGUIを持たない変わり種のGNU Smalltalkや altJSとしてのAmber Smalltalkもあるようです。 もっともアラン・ケイはもうすでにSmalltalkへの興味を失っていて、Rubyの生みの親のMatzにも そんなことを漏らしていたようで、Smalltalk(er)を目の上のこぶみたいに煙たがるMatzが大喜びする 一幕もあったようです。www.rubyist.net/~matz/20060608.html ちなみにアラン・ケイはGUI付きのOSを2万行程度で記述できる次の言語の実験に取りかかっているようです。 「Smalltalk 勉強会@名古屋 STEPS プロジェクトご紹介」 d.hatena.ne.jp/propella/20091219/p1 「STEPS プロジェクトご紹介その2」 d.hatena.ne.jp/propella/20111022/p1
118 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 11:50:07.59 ID:N9hEQVX6.net] > GUI付きのOSを2万行程度で記述できる次の言語の OSを作る人は極僅かなんだから、別の研究すればいいのに。 にしても、OSは行数2万行です。ただし言語にドライバが含まれています。 とかそういう落ちだったりしてw
119 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 12:03:22.06 ID:BaxKs2Tu.net] >>118 > OSを作る人は極僅かなんだから、別の研究すればいいのに。 OSを含め、自分たちが利用するソフトウエアの仕組みを知り、自由に改変・拡張でき、 できれば最初から作り上げることすらできる世界が彼の理想であり、主張するコンピューターリタラシーな わけですから、そこはDynabook、その暫定OSとしてのSmalltalkのときからぶれていませんね。 > ただし言語にドライバが含まれています。とかそういう落ちだったりしてw リンク先を読んでもらえばわかりますが(他人のリンク先読むと死ぬ病気の人?^^;)、 ミソはPEGベースのパーザーでDSLを手軽に作れるようにして、階層的にコードの抽象度を上げるところらしいです。
120 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 12:31:43.88 ID:BaxKs2Tu.net] >>112 > Smalltalk系の「オブジェクト」とは「ソースではない」という意味 気になったのでちょっと調べてみましたが、Smalltalk のオブジェクトは、SIMULA67の言語機能としての オブジェクトから来ていて、そのSIMULA67のオブジェクトは、ホーアのレコード・オブジェクト archive.computerhistory.org/resources/text/knuth_don_x4100/PDF_index/k-9-pdf/k-9-u2293-Record-Handling-Hoare.pdf [PDF注意] 1. Basic Concepts 1.1 Objects and Records. A fundamental feature of our understanding of the world is that we organise our experience as a number of distinct objects (tables and chairs, blank loans and algebraic expressions, plynominals and persons, transistors and triangles, etc); and our thought, language, and actions abased on the dsignation, description, and manipulation of these objects, either indivisually or in relationship with other objects. のオブジェクトから来ているので、C言語とかのオブジェクトの意味合いよりは、文字通り「物」としての オブジェクトに近いみたいですね。
121 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 12:46:45.96 ID:N9hEQVX6.net] >>119 > ミソはPEGベースのパーザーでDSLを手軽に作れるようにして、階層的にコードの抽象度を上げるところらしいです。 いえ、そんなのはどうでもよくて、ドライバを誰が作るのかって話ですね。 ドライバの行数はOSに含まれています。 あと言語が多くのライブラリを提供するのであれば、 そりゃOSの行数は減るでしょう。
122 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 12:53:29.51 ID:YhiK7HuV.net] >>120 we organise our experience as objects and language オブジェクト != 言語 という前提があるよね
123 名前:110 mailto:sage [2015/10/15(木) 13:23:04.01 ID:E/Ij5YUU.net] >>111 > >>98 を全否定しているわけではないのだから、まあ、落ち着こうよ。 > Object は Object でも、OOPのOは文法要素の目的語であるところのOとは別だというだけ。 なんか人違いしてない?>>98 を否定もなにも 俺はむしろ目的語のOのほうがなじみが無いんだが かつてぼんやりobj.methodを主語+動詞みたいに考えてた けど今はobj.methodはやっぱ単にobj+methodだなって思うだけ あえて言うならobjが主語ってのはまだわかるが…ってのが>>110
124 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 17:17:29.28 ID:BaxKs2Tu.net] >>123 それは失礼いたしました。 唐突に Smalltalk のコードをひっぱり出してきて疑問符を連発されていたので てっきり >>98 派がファビョってきたのかと勘違いしました。ごめんなさい。
125 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 17:25:35.28 ID:BaxKs2Tu.net] ちなみに念のため、アラン・ケイはメッセージ式 rcvr msg の msg が動詞でなければならないとは ひとことも言っていないと思いますよ(>>113 )。SVO の S を rvcr、VO 以降を msg に当てはめると すっきり書けて読みやすい、というような趣旨のことはいっていますが… ですから、メッセージが atAll: keyCollection でも copyFrom: start to: stop でも value でも、必ずしも動詞のみでなくても、さらに動詞が含まれなくてもかまわないと思います。
126 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 17:35:42.93 ID:BaxKs2Tu.net] >>125 メソッド名をどのようにしたらよいかという観点からは、ケント・ベックがいろいろと試行錯誤しているので 興味のある向きは彼の著作を読んでみると面白いかと思います。 「ケント・ベックのSmalltalkベストプラクティス・パターン―シンプル・デザインへの宝石集」 www.amazon.co.jp/dp/4894717549 同書原書のドラフト 「Smalltalk Best Practice Patterns Volume 1: Coding」 stephane.ducasse.free.fr/FreeBooks/BestSmalltalkPractices/Draft-Smalltalk%20Best%20Practice%20Patterns%20Kent%20Beck.pdf [PDF注意] 同書をJava向けに書き直したもの 「実装パターン」 www.amazon.co.jp/dp/4894712873
127 名前:110 mailto:sage [2015/10/15(木) 18:47:55.64 ID:USDIK8mq.net] >>125 > ですから、メッセージが atAll: keyCollection でも copyFrom: start to: stop でも > value でも、必ずしも動詞のみでなくても、さらに動詞が含まれなくてもかまわないと思います。 うん。メッセージ、という表現だけで十分だと思う 英文法をモデルにするより巧妙な抽象化だと思う そこにどんな品詞が来たって平気だし 実際すでに来ちゃってるんじゃないのかな obj.methodのmethod部分にすらも
128 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 19:45:08.84 ID:whFEoHyO.net] アランケイの妄言なんかどうでも良いだろう 普通メソッド名は動詞にすることが多いんだから、動詞的な何かでよいだろう 実際に実行するわけだからイメージと合う ところで実際に実行するのはコンピュータなのでオブジェクトを主語に見立てる必要性はまるで無い 「オブジェクトが実行する」と考え直すことで、何か問題が解決されるわけでもないし、 静的メソッドやC/C++に見られるような何にも属さない普通の関数は、 オブジェクトが無いのに、一体誰が実行していると考えればよいのか? という新たな問題を生み出すだけなので 単純に、実行するのはコンピュータでオブジェクトが実行する内容を知っている とでも考えておけばよいだろう 実際のコンピュータの動作に則した考え方なので、破綻が無い
129 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 19:57:15.22 ID:whFEoHyO.net] オブジェクト指向はオブジェクトが自身の振る舞いを知っている、という考え方をする 実際に振る舞いを実行するのはコンピュータとかCPUとかスレッドとかの外的なもので問題なく 単にオブジェクトは自分の振る舞いを知っていさえすればよい
130 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 19:58:24.13 ID:J9V5fg8t.net] uyが昔書いたrubyのOSはコア部分2000行です 2万? バカには無理
131 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 20:45:22.36 ID:J9V5fg8t.net] PHP7が従来のPHPの2倍速になってるらしいけど 他のLLが速度そのままなら今って速度的にはPHPが一番速いんじゃ? 執拗にrubyを回避してPHPばかり高速化させてる池沼エンジニアたちの正体って何なの?
132 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 20:56:47.79 ID:6DA7kr5U.net] >>130 uyってまだいたのか
133 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 21:12:30.81 ID:J9V5fg8t.net] まだいたよ 自分がプログラミングの勉強しているときに 散々お前らが間違った知識を2chに垂れ流していたせいで プログラマクラスタの勝ち組ではなく 世界全体クラスタの勝ち組になりつつある uyにはプログラミングをファッションとして行う程度の余裕があるのです
134 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 21:15:13.49 ID:28aQIEIe.net] >遠隔操作で縦列駐車も、三菱電機が自動運転システム 三菱電機が電機メーカーならではの自動運転を実現しました >自動運転技術に電機メーカーも参入、「未来の車」課題は? https://youtu.be/KJp_gCLCJHU 三菱とかトヨタとかGoogleとか自動運転テクノロジーに使われるプログラミング言語ってやっぱり組み込みだからC言語とかなのかな? まあこういうのってソフトよりハード技術の方がより重要なんだろうけど
135 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 21:16:55.47 ID:YhiK7HuV.net] >>129 オブジェクトは自身の振る舞いを知っている 関数も自身の振る舞いを知っている オブジェクト指向は「関数は低レベル」という考え方をする 高レベル関数とか発明したらキャラが被るから関数はあくまで低レベル
136 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 21:19:09.27 ID:whFEoHyO.net] それがなにか?
137 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 21:30:07.99 ID:N9hEQVX6.net] > オブジェクトは自身の振る舞いを知っている 果たしてそうだろうか? 例えば、紙があったとする。 紙は自分の振る舞いを知っているのだろうか? 水に濡らすと→柔らかくなる 火をつけると→燃える 針で挿すと→穴が空く 折り曲げると→紙飛行機になる 違う折り方をすると→兜になる これらはオブジェクト自身が知っていることなのだろうか?
138 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 21:40:36.50 ID:7x3qta5X.net] >>137 少なくともオブジェクト自身の性質に由来する現象だろう 意識の有無は無生物主語だらけの英語ワールドでは問題にならない
139 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 21:57:23.96 ID:YhiK7HuV.net] >>137 振る舞いへのポインタを保持とか、低レベルな言葉を使ったら死ぬ病気なので
140 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 22:01:06.60 ID:whFEoHyO.net] いやむしろ>>137 は有る程度正しい考えなのでは? コンピュータやプログラミングの基本は数値計算だけど、 足し算を考えた時、例えば1+2で、1や2自身は足し算についてのルールを知っている必要が有るのだろうか +という演算子が足し算の性質を知っていて、1や2に適用した結果、足し算の法がうまれ、 自身と他の整数の間に関係性が生まれ、整数の性質が浮かび上がるのではないだろうか ある物の性質というのはいつも相対的で、その物そのものだけで勝手に決定されるものではなく、 他の物との相互作用の結果として、周りから与えられるものではないだろうか 例えばuyが自分自身の性質を決定するために 「世界全体クラスタの勝ち組になりつつある」と明言したとして(>>133 )、それに何の意味が有るだろうか uyの社会的立ち位置は、uyが決める事ではなく、他の人との相互作用の結果として 周りから、社会から、与えられるものではないだろうか しかし、オブジェクト指向では >オブジェクトは自身の振る舞いを知っている と考えるのが前提なので、今回はあえて言及しなかった マルチメソッドではもうちょっと違った見方も出来ると思うが殆ど採用されてないね
141 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 22:05:02.72 ID:N9hEQVX6.net] >>138 確かに分子、原子レベルで見たら、 オブジェクト自身の性質だろう。 だが、オブジェクト自身の性質にもとづき 物理法則に従って、変化は起きる。 この物理法則というのは、オブジェクト自身が持っているものだろうか? 例えば、質量はオブジェクトの性質だろうが、 そこには速さを加えた時の運動エネルギー、 つまり「物体の運動エネルギーは、物体の質量と速さの二乗に比例する」 という法則はオブジェクトが持つべきものだろうか?
142 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 22:14:14.69 ID:whFEoHyO.net] マルチメソッドがあれば、>>141 みたいな人も納得させられるオブジェクトの理論体系が出来上がるんだが これはこれでカプセル化や組み合わせ爆発や実行速度なんかで問題が有るんだよね だから殆どの言語がシングルディスパッチというのもあるし 日本人は農耕民族で土地とか利権に拘る縦割り行政主義だから、そのほうが分かりやすいってのもある >物体の運動エネルギーは、物体の質量と速さの二乗に比例する これはつまり物理法則とかの法のようなものが働いて 相対的にオブジェクトの性質を決定付けているという考え方 法のようなものは手続き型言語では関数なので マルチメソッドで method( obj1, obj2 ) として、obj1とobj2の間の関係を決定する事ができれば、 他者との関係に基づいて性質が決定するっていうノリが実現できるので >>141 のような人も納得なわけだ こういうのを機能主義という 機能=function=関数 だからね
143 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 22:17:44.71 ID:whFEoHyO.net] しかしそういった言葉遊びはともかく、 当面はRuby3.0にどういった形でどの程度のデキの静的型が導入されるかだな どう考えてもうまくいきそうに無いが、matzがやるといっている以上はやるのだろう
144 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 22:28:40.59 ID:gTKnbHZq.net] > matzがやるといっている以上はやるのだろう え…Matzがやると言ったことで放棄されたor放置されているものはかなりあるぞ… 「オープンソースで前に進むためには燃料が必要」と言ってるぐらいなんだから、 ただの燃料ぐらいに思っておかないと
145 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 23:06:58.05 ID:J9V5fg8t.net] 型を入れるコンセプトが 速度を上げる事なのか コードセキュリティの為なのかだよ 後者だったらいらね
146 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 23:33:19.63 ID:mn0BrUjG.net] 速度は結局エンジンに書けた労力しだいとmatzは言ってる。 動的型でもV8は速いし、そのV8の資産と経験を十分に活かせるはずのDartは 結局当初の目的の2倍高速を実現できずに敗れた。 そして何よりも、機械が出来ることは全部機械にやらせて人間は楽をすべきという Rubyのポリシー上、多少早くなるからという理由で型を入れるということは絶対にしない。
147 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 23:49:48.72 ID:XerH+8kv.net] >>145 速度を上げるためという名目でやるが 実際に一番有効活用できるのは可読性の向上だろう。 コメントで型を書くよりも、コードで型を書いたほうが 同期が取れるし正確になる。
148 名前:デフォルトの名無しさん mailto:sage [2015/10/15(木) 23:54:07.96 ID:whFEoHyO.net] 機械ができることは全部機械にやらせて人間は楽すべき、なレベルで 型チェックをコンパイラに任せつつ、柔軟性を確保するには、 ジェネリックなどの機能が無いと上手く機能しないわけだが、用意できるのか心配だね C#も割りと早いバージョンで実装してたし 結局Javaもジェネリックを導入したし 静的型には必要な代物なのだろう C言語レベルの柔軟性の無い静的型に不満があってRubyを動的型にしたわけだから 今更C言語レベルの柔軟性の無い静的型を導入したら最早意味が分からないことになるしな
149 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 00:05:31.68 ID:N+EJJaaq.net] 静的型の観点から言えば、型はなるべく書くべきってことになるし Rubyに静的型が導入されたら、やっぱり折角導入して、そういう機能があるわけだから 可読性や安全のためにも型はなるべく書くべきって事になると思うんだけど そういう要求に答えつつ、今までのRubyの世界観も維持するためには 相当柔軟性の高い凝った静的型システムが必要だと思うんだけど どういうものを出してくるか楽しみでは有る 少なくともジェネリックは欲しいところではある
150 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 00:15:13.00 ID:VBzgHbv/.net] いまごろになって静的型を入れるんだから、 C#等から古くさいジェネリクスをパクるより Haskell等から型クラスをパクってほしい
151 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 00:28:18.89 ID:+z0qI3+p.net] 速度を上げたいだけならprivateメンバのみ静的型という手があるが
152 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 07:20:28.43 ID:EA3T5rKJ.net] 自己満足の議論だね
153 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 07:24:30.36 ID:yoBqthc9.net] Smalltalkに静的型チェックを導入したStrongtalkは速かったが、あれの速さは 後にJava HotSpotやJSのV8で使われた爆速のVM技術を彼らが持ってたからで 静的型チェックの有無とは無関係だった。 今のRuby開発陣に、機能を削らずにRubyをこれ以上速くするのは無理じゃないかな。 まして、型推論なんて機能を追加した日にゃ、再び爆遅処理系に後戻りするのは必至。
154 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 07:26:41.14 ID:pM+jfY6O.net] Rubyの問題はクラスの実装方法にあるので、 静的解析の可能な仕様に変更するならそれはもはやRubyと全く互換性のない別言語 従って「Rubyに静的型を導入」という前提は無意味である はい終了
155 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 09:21:29.48 ID:Wb9pxNM+.net] 静的型付と静的解析は関連はしているが必要・十分の関係ではないでしょ。
156 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 13:17:02.59 ID:3DK9u+XT.net] おっRuby談義熱くなってきたね やっぱこうでなくっちゃね、なんせ唯一無二の世界で通用してる国産言語なのだからさ
157 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 13:30:03.77 ID:l04muiBk.net] 果たして通用しているんだろうか?
158 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 16:04:11.56 ID:4XmsRPEG.net] 作業効率化において現状これに勝てる言語はまだない 何の言語で開発するにしても必ずrubyは連れ歩く まさかこのスレでmakefile使ってる奴なんていないよな?
159 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 16:16:40.86 ID:l04muiBk.net] makefileも使ってる(正確にはあるだけど)よ? このスレが対象にしてる言語だけじゃ仕事にならないカテゴリなんでね
160 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 21:33:20.74 ID:+G3m5iUJ.net] githubのatom有能杉内? 今日terapadを窓から投げ捨ててきたよ
161 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 21:44:24.38 ID:pM+jfY6O.net] さすがにそれはatomが特に有能というよりまともなプログラミング用エディタを使ったことがないだけでは
162 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 21:57:07.09 ID:ZoTRSHay.net] まともなプログラミング用エディタというのは デフォルトでプログラミング用に最適化された エディタであって欲しい。
163 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 22:22:34.47 ID:C0FkHDSz.net] 普通に考えたらEmacsかViの二択だよなぁ
164 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 22:35:29.05 ID:ZoTRSHay.net] EmacsもViもキーバインドが特殊すぎて。
165 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 22:37:30.93 ID:C0FkHDSz.net] >>164 それだけテキスト編集に特化してるんだよ つまり慣れれば最強ってこと
166 名前:デフォルトの名無しさん mailto:sage [2015/10/16(金) 22:44:20.85 ID:f/Epc6uW.net] >>161 atomが良いとか好きとか普通にいえばいいのに、有能とか違う意味の言葉を使ってしまう そういう現象もあるらしい
167 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 00:02:19.39 ID:mzjdQH44.net] >>165 それは違う。 viは開発者が当時使っていたキーボードにカーソルキーがなくて 代わりにjkhlに割り当てられていただけ emacsは単なるアルファベットの頭文字 配置に意味があるわけじゃない。
168 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 01:00:49.82 ID:OT5GhlDm.net] 今の配置を変えればもっと良くなるか悪くなる 悪くなったら元に戻せばいいだけなので必然的にメリットしかない これは偶然ではない
169 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 01:19:12.33 ID:kV08E+NU.net] vi好きです。他のエディタを使う事が出来ないカラダになってしまいました
170 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 01:43:03.31 ID:97BJbcDl.net] sublimetext一択でそ
171 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 01:44:43.56 ID:FN3G7dO/.net] vimと普通のwinメモ帳系のエディタだな emacsはメモ帳系が使えなくなって仕事に支障をきたすのでやめた
172 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 10:08:12.92 ID:OT5GhlDm.net] 問題があるとすれば、デフォルトより良い設定を自分だけの秘密にするのは何故か その設定が良いという証拠が見えないから 証拠を見せるには初期設定から全てやり直して見せるしかない つまり、証拠はないけど良いってこと
173 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 10:54:12.76 ID:6bVjpFvg.net] 今度はエディタの話か ひとそれぞれって答えが妥当なものばかり
174 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 11:25:24.16 ID:KBdUYWvy.net] 熟練者にとっては人それぞれでいいんだよ。 自由にカスタマイズすればいい。 初心者の取っ掛かり、一番初めのスタートラインだけは 高い位置(つまりカスタマイズ無しでも使いやすい)で 共通化してくれ。
175 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 11:27:44.54 ID:u6HpNLYA.net] >>174 EmacsもViもこれだけ普及してしまった以上、もういまさら無理だよ
176 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 12:23:26.01 ID:KBdUYWvy.net] >>175 嘆かわしいことですね。 誰かEmacsやviに代わる端末内で動作する エディタ作りたいって人いないかなぁ。
177 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:01:30.96 ID:u6HpNLYA.net] >>176 EmacsやViは普及してるので、何か新しい言語なりが出てきても誰かがソッコーで 対応してくれる 利用者の多さが利便性の向上につながり、さらに利用者を増やすという循環が できてしまってるからね いまからこれを覆そうとするには相当機能的に優れているか、相当金をつぎ込むか どちらかじゃないと無理だね
178 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:13:26.97 ID:KBdUYWvy.net] > 何か新しい言語なりが出てきても誰かがソッコーで対応してくれる syntax highliterなら、ライブラリがありますよ。
179 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:18:28.66 ID:u6HpNLYA.net] >>178 EmacsやViでプログラミングしたことあるなら、そんな個別の事柄を挙げても何の意味もないことは すぐに分かりそうなものだが…
180 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:21:30.72 ID:wx6tLFnT.net] というより俺はそもそも>>176 が何を言いたいのか分からない emacsやviに不満を持つ奴ってどんな夢のような高性能エディタ使ってんだろう?
181 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:29:33.14 ID:KBdUYWvy.net] >>180 重要なのは"高性能"エディタじゃないよ。 使いやすいエディタ。
182 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:32:05.22 ID:u6HpNLYA.net] >>181 エディタに何を求めてるの? プログラミングやるなら高性能は使いやすさに直結するんだけどさ プログラミング以外のエディタの話だというなら、スレ違いじゃね?
183 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:33:52.66 ID:ceT/tJ4E.net] >>181 ちなみに>>176 本人? 本人じゃないなら答えなくていいけど 使いやすいエディタって例えば何?
184 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:34:43.12 ID:KBdUYWvy.net] >>182 学習コストの低さ。 いくらエディタが高性能でも、その機能を使うまでの 学習コストが高ければ、使われなくなる。 高性能であることは当たり前で、それをどれだけ 簡単に使えるかが今の時代で要求されているレベル。
185 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:35:45.79 ID:KBdUYWvy.net] >>183 Sublime textやAtom
186 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:40:52.02 ID:u6HpNLYA.net] >>184 > 高性能であることは当たり前 残念ながら、この当たり前を実現できているエディタがEmacsやVi以外にほとんどないのさ なぜならば、両者には長い歴史があってノウハウも豊富で、かつ多くの利用者がよってたかって プラグインを開発してきているから 後発のエディタはその歴史と利用者の2つの壁を超えなければならず、無理ゲーとなっている
187 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:41:08.63 ID:m81ysFVA.net] viってカスタマイズとかいらなくね emacsは必須だろうが
188 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 15:48:50.56 ID:tbAeg9G6.net] >>185 > Sublime textやAtom レスとん! へー聞いたことすら無いけどemacsより使いやすいのか 機会があったら触れてみるわ
189 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 16:09:39.79 ID:KBdUYWvy.net] >>186 たいしてプラグインなんか使ってないだろw 使えない部分を、まともにするものか、 専門ツールに任せろよ的なことばかりだろ?
190 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 16:10:25.80 ID:KBdUYWvy.net] そもそもプラグインが大量に必要な時点でおかしいんだよね。 全部標準搭載すればいい。
191 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 16:13:28.83 ID:u6HpNLYA.net] >>189 AtomやSublimeTextもプラグイン前提のエディタなんですがそれは?
192 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 16:15:19.04 ID:0GQ640b+.net] >>187 viもキーボード配列に因縁をつけられるのでカスタマイズ機能は役に立つ 因縁をつけられるまでがUXです
193 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 18:54:21.75 ID:/7+5znpF.net] >>184 その理屈、いまだにCOBOLを使い続けていたり頑なにオブジェクト指向から目を背けていたりする連中と全く同じなんだよな 目先の仕事に追われて効率化のための投資をしない、典型的な無能
194 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 19:18:33.62 ID:pib/Nfzj.net] >>193 まったくだね。いつまでも古い言語(道具)を使ってないで もっと効率化したものに乗り換えよう!
195 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 20:48:11.04 ID:6bVjpFvg.net] 道具って人とか熟練度で使いやすさは違うと思うが
196 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 20:50:08.57 ID:XvNYZLvx.net] やはりプログラミング向けエディタと言えば補完機能が大事では?
197 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 20:57:04.41 ID:uNJQ9dbe.net] 未来永劫その時俺が望む機能が完成した形で目の前にある事が保証されるのならば 馬鹿馬鹿しくて学習の為のコストなんかかけてられない だけどその望みを実現する事が不可能である事が分かっているから コストをかけても全てを支配下におけるツールの使い方を学習する
198 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 20:59:52.51 ID:pib/Nfzj.net] 学習コストをかけるかどうかじゃなくて、 学習コストが高いのが問題って話なんだけどな。 目的はどちらでも達成できるなら、 学習コストが低いほうがいいのは当たり前なわけで。
199 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 21:08:44.70 ID:uNJQ9dbe.net] >>198 で、その学習コストが低いやつは、俺が望む機能をいつでも提供してくれるのか?
200 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 21:11:01.56 ID:pib/Nfzj.net] >>199 学習コストが高くても、俺が望む機能をいつでも提供してくれないので、 それはなんの反論にもなってない。
201 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 21:12:07.24 ID:uNJQ9dbe.net] >>200 > コストをかけても全てを支配下におけるツールの使い方を学習する
202 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 21:18:02.91 ID:pib/Nfzj.net] 全てを支配下におけるツールは存在しない。はい論破w
203 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 21:18:39.87 ID:mlPlTlFa.net] >>200 またまた、本当は望みの機能なんて無いくせにw
204 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 22:01:35.64 ID:u6HpNLYA.net] >>193 その分野で代替のものがないならば、そうするしかない 科学技術計算でFORTRANが未だに現役なのも、FORTRANに代わるものがないからだ 過去に蓄積された膨大なノウハウやライブラリが他を圧倒している以上、それを使うのが最も 問題を解決するのにふさわしいと思われているから現役なのだ エディタも同じで、学習コスト云々の前に、自分の開発効率を最も高めてくれるのはどれだ という観点で物事を見なくてはいけない その結果選ばれるがEmacsであり、Viなのだ 学習コストの低さがご希望なら、最初はAtomとか使っておけばいい 優秀なプログラマならそのうち自然とEmacsやViに興味が移るよ
205 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 22:17:21.19 ID:6bVjpFvg.net] 自分の開発効率を最も高めてくれるのは、自分にあった道具 人によってはatomかもしれないし、vimかも知れない 学習コストを考えるかどうかもその人の状況での話で、お前らの都合で決める筋合いではない
206 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 22:21:07.78 ID:HjqN8fv+.net] 学習コストってのを大袈裟に数えすぎじゃね?w 気持ちよく使えるくらいまで学習するとして 比較した場合、三日と三年みたいな深刻な差はねーだろ?w 実質、せいぜい倍くらいのもんじゃねえの? そして最大でも30時間くらいありゃマスターじゃねえの? 学習コストを大袈裟に言うひとは ここらへんをハッキリさせたくはないんだろうけど
207 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 23:37:15.94 ID:0GQ640b+.net] 学習コストを時間であらわすのは人月の神話と同じ ここがム板じゃなかったら気付くまでに何年かかっただろうか
208 名前:デフォルトの名無しさん mailto:sage [2015/10/17(土) 23:40:29.71 ID:wBRaFA3P.net] じゃあ学習コストは何であらわして比較するの? 学習コストの低さに拘ってる人いるけど
209 名前:デフォルトの名無しさん mailto:sage [2015/10/18(日) 00:30:19.03 ID:JFtsAugF.net] プログラミング初心者でもMacVim使いこなせますかね?
210 名前:デフォルトの名無しさん mailto:sage [2015/10/18(日) 00:49:24.92 ID:EztmzLmu.net] >>209 Vimぐらい有名ドコロであれば、慣れれば問題なくいけると思うよ