1 名前:デフォルトの名無しさん [2017/08/28(月) 21:53:37.12 ID:5I+bTEeA.net] ※前スレ 次世代言語議論スレ[Go Rust Scala Haskell]第5世代 mevius.2ch.net/test/read.cgi/tech/1497311647/
92 名前:デフォルトの名無しさん mailto:sage [2017/08/31(木) 23:07:03.73 ID:J2aSRpVx.net] >>89 「抽象度」という概念を知らないのね 1. x^100 + 9x^7 - 3x^2 2. x to the hundred plus nine x to the seventh minus three x squared. 「どっちが抽象度が高い?」と言うのと 「どっちがより具体的な意味を持つ(もしくは持たない)?」と言うのとは意味が違うんだよ
93 名前:デフォルトの名無しさん mailto:sage [2017/08/31(木) 23:16:39.69 ID:+TmXt6Nx.net] まぁつまり、読みやすさ・機能・シェア・WORA、すべてを兼ね備えたコットィンが最強ということだね
94 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 00:44:11.29 ID:R253OLB+.net] >>92 その1と2って表意文字と表音文字には対応しないよね? 表意文字と表音文字の抽象度云々論じるなら例えば 2a. x to the hundred plus nine x to the seventh minus three x squared. vs 2b. xの百乗足す九xの七乗引く三の自乗。 になるけどこの2a vs 2bの文字レベルの抽象度の差とやらは1 vs 2a/2bの表現レベルの違いと比べたらあるとしても誤差レベルじゃないか? 俺には2aと2bは全く等価に思えるんだが、、
95 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 01:32:05.15 ID:l17yIu6s.net] 抽象度(抽象的)は普遍的に与えられるものだと思うの。 >>89 が聞いてるのは抽象的とは何か また2つのモノが与えられた場合の抽象度の比較についてだと思うの。 >>92 はそれに対して 答えてるだけだと思うの。 そしてそれは 普遍的に決まるので正しいと思うの。
96 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 04:10:50.99 ID:A4rxsWGh.net] >>94 “アラビア数字、その他の数学記号は、代表的な表意文字である” https://ja.wikipedia.org/wiki/表意文字 情報密度が高いと言えば理解してもらえるのかな? 2bを全部平仮名にしたものと比べれば一目瞭然でしょ んで情報密度の違いは抽象度の違いによる結果だから
97 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 06:55:07.96 ID:9fFcfHIv.net] 抽象度が高いと情報量は少なくなるだろ たとえば写真は具体的で情報量が多い 漢字もアルファベットより具体的だから 一字あたりの情報量は多いが 覚える必要がある字数は多くなる
98 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 07:57:22.32 ID:Xtw6aZxr.net] 1平方メートルの絵と1秒の音は比較できないんだが 抽象化()で単位をあやふやにすれば比較できるのかな
99 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 08:40:04.85 ID:sKG/CNAU.net] 俺もそう思う 基本的に抽象度が上がれば情報量は下がっていくものだと思う プログラミングやってれば経験するものだと思うが Object型は抽象度が高いが型に関する情報量はほぼ無い
100 名前:デフォルトの名無しさん [2017/09/01(金) 10:35:11.06 ID:aCeisBp6.net] >>99 よう、オフィスマ。元気かい?(笑)
101 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 11:48:31.76 ID:d9WpXGRQ.net] 具体的なほど高いのは選択情報量で、抽象的なほど高いのはその系が持ってる平均情報量かな 具体的な実装が隠蔽されているほど抽象化の度合いが高いという意味で、 漢字は2バイト(以上)を1文字に「抽象化」していて、 1文字あたりの「情報量」はアルファベットより多い
102 名前:デフォルトの名無しさん [2017/09/01(金) 12:00:35.64 ID:+7mPWp0H.net] >>101 ママンにパンツ洗ってもらったか?(笑)
103 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 12:28:42.01 ID:GWPC4pz1.net] この抽象論議はなんか意味あんの?
104 名前:デフォルトの名無しさん [2017/09/01(金) 12:36:09.46 ID:XfLLwzvm.net] どぴゅっ(笑)
105 名前:あ mailto:sage [2017/09/01(金) 13:02:30.04 ID:8i7au6Vc.net] 2バイト以上を一文字に抽象化、ってのもわからんけど。 「筆や指、ヘラ、ナイフなどを使い、油性の絵の具を、板や布、紙など平面に、芸術性のある意匠を表現すべく塗布したもの」を「油彩画」と記載できるのは、情報密度が高く(3文字)抽象性が高い(『など』、を特定出来ない)と表現するならわかるけど、 英語でも「oils」、くどい奴でも「oil paintings」だし、抽象度や情報密度としてはあんまかわらんかと。 単に抽象度をあげると情報密度が下がるという訳ではなく、用途に対した適切な情報密度を提供するために抽象化するのかと。 情報量は減るけど情報密度が上がる方向に持ってくのが抽象化で、両方下がるのは標本化みたいなやつじゃない?
106 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 13:21:48.04 ID:CfoCWIuq.net] >>96 をまとめると、 数学記号は表意文字。つまり 1. x^100 + 9x^7 - 3x^2 は表意文字の例。 2a. x to the hundred plus nine x to the seventh minus three x squared. は表音文字の例。 2b. xの百乗足す九xの七乗引く三の自乗。 は表意文字の例(かな混じってるけど) 2c. xのひゃくじょうたすきゅうxのななじょうひくさんのじじょう。 は表音文字(2bを全部平仮名にしたもの) かな? 1の数学記号が抽象度高いのは分かる。 で、2bと2cくらべて一目瞭然って何が? どっちも1に比して恐ろしく冗長だな、としか思わんが。2bの表意文字も2cの表音文字も。 要するに文字が表意か表音かは抽象度とは関係ないということではないか?>>96 の当初の主張「漢字など表意文字は表音文字にくらべて抽象度が高い」とは裏腹に。
107 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 13:28:37.46 ID:iX3HKziQ.net] 抽象の解釈で揉めるとか草
108 名前:デフォルトの名無しさん [2017/09/01(金) 14:21:49.79 ID:5cPRuFJx.net] __ / /⌒ ヽ / / ( )'゙ヽ. _/ . /iー-‐'"i ,; / i ! ( ヽ. ) ノ/ .:/ (\.゙ヽ_(_/,イ/ i ! (\\_,_)' ノ (\\_,_,)' i ! l ,i\ ヽ、 ! あ”っー あ”っー あ”っー あ”っー あ”っー し'
109 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 14:22:05.77 ID:9fFcfHIv.net] 抽象ってのは不要な情報を捨象するんだから 情報量は少なくなるに決まってるんだよ 必要な情報だけ抽出することで 量より質を求めてるわけであって
110 名前:デフォルトの名無しさん [2017/09/01(金) 14:24:39.67 ID:rDYiQT91.net] __ / /⌒ ヽ / / ( )'゙ヽ. _/ . /iー-‐'"i ,; / i ! ( ヽ. ) ノ/ .:/ (\.゙ヽ_(_/,イ/ i ! (\\_,_)' ノ >>109 (\\_,_,)' i ! l ,i\ ヽ、 ! あ”っー あ”っー あ”っー あ”っー あ”っー し'
111 名前:あ mailto:sage [2017/09/01(金) 14:43:14.24 ID:8i7au6Vc.net] >>107 いいんでないの? 数学に強いであろうHaskellerさんなら、標本化と抽象化、情報量と情報密度を語ってくれるだろう。 きっと。 次世代じゃない、とか、文字数の関係、とか言って議題を恣意的に絞った罰に相応しい流れだと思うが。
112 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 16:08:33.34 ID:iX3HKziQ.net] はいガイジ
113 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 18:54:24.75 ID:SQFm1IPC.net] どの言語でも最低限、実装しなきゃいけない 言語仕様ってできないものなのかね printf()みたいなのとかですら 言語ごとに"微妙に"違ってて いちいち覚えなきゃいけないのって アホらしくない?
114 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 19:01:13.70 ID:9fFcfHIv.net] 言語を超えた共通規格を制定すると 数年も経つと想定されてない 技術が出てきて負の遺産になりそう
115 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 19:02:03.36 ID:GWPC4pz1.net] そんなもんだろ。 print 文を本当に統一するとしたら一番、低レイヤーな扱いしてる c に合わせるしかない。 てか統一厨ってなんで分かれてるのかについてほんとに思考しないよな。
116 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 19:09:57.94 ID:9fFcfHIv.net] 共通規格って使わないものを入れるとムダだから どうしても後追いの追加しかできなくて そうすると時代遅れの規格になる MSやグーグルやアップルみたいな大企業は それを無視して需要のある新言語を作るだろうし だから今の現状がこうなってるんだろう
117 名前:あ mailto:sage [2017/09/01(金) 19:22:19.70 ID:8i7au6Vc.net] Cに合わせると、そもそも標準出力って何?って話に行き着いてそこからの話になるので誰も幸せになれんぞ。 標準出力がない環境やら、sprintfとかは普通のlibcではでか過ぎるとか話とか、ファイルシステム?そんなのねえけど?みたいなめんどくさいのを経ての仕様策定になる。 どっかで線引かないと仕方ないけど、その線は言語次第で決めざるを得ない。 Rustの「マクロで展開」もありだろうし、GoやらPythonの「だいたい付いてるけど、それが動く環境以外ではそもそも動かない」もありだし、 Scalaとか古いPascalみたいな「VMが動く環境では動きますけど?VMポートしてよね(笑)」みたいなスタンスもアリなんだから。 仕様や規格って「守らなくてもそれで良い。むしろ守らないほうが(うちのシステムでは)確実に早く動く」って奴が絶対出てくるから、どれだけ未来の事考えて準備しても無駄。 今要るものを今要る範囲で作るのがいいんじゃねえの? 過去と今を見ずに未来や次世代の話する奴にろくな奴はおらん。
118 名前:あ mailto:sage [2017/09/01(金) 19:24:24.40 ID:8i7au6Vc.net] 「次世代じゃないので外した」なんて、次世代全く見てないって事。
119 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 19:58:18.00 ID:9fFcfHIv.net] JavaScriptができてから ES2015が出るまで20年も掛かってるから 各言語共通規格なんて100年掛かっても できるかどうかってところだろ
120 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 20:08:14.74 ID:sKG/CNAU.net] そんなことよりはライブラリやモジュールの統一フォーマットが欲しいところ どんな言語からも、どんな言語で書かれた関数でも、呼べるってやつ どんな言語は言いすぎだが、大体のメジャー言語は似たような着地点に落ち着いてるし このような重大なことは無理やりにでももっと黎明期に決めておくべきだったな 標準入出力用意しておいたので後は好きにしてくださいってのはちょっと
121 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 20:13:11.99 ID:SQFm1IPC.net] 違う違う 個々で独自な処理なんて いくらでもしたらいいけど 最低限、(例えば)printfって打てば 文字列出力するのは 保証しとけって話
122 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 20:16:06.24 ID:sKG/CNAU.net] ただしそれをやると、野良言語が沢山できる可能性もあるんだが つまりはライブラリは標準仕様に準拠しているので ライブラリは揃ってますんで 是非俺の糞言語を使ってくださいっていう しかし今みたいにライブラリの互換性を盾にして 既得権な言語が常に上位に固定されて全くシェアが変動しないのも不健康 何の言語で書かれていてもかまわない、どうせ好きな言語から呼び出して使えるから ってなってれば良かったんだが 移植とかマジ馬鹿らしいし
123 名前:あ mailto:sage [2017/09/01(金) 20:17:44.92 ID:8i7au6Vc.net] >>120 JVMか.netで動く言語でも使えば? どんな環境で動くかも決まって無い上にさらに言語の定義すら無いとなると、呼び出せる訳ないかと。 あとは別プロセスとして通信するか。 >>121 文字列って何?パスカル文字列?ヌル終端?エンコーディングは?出力って何? って話じゃん。独自の処理ではないと言いながら、既に充分独自の話。
124 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 20:23:19.04 ID:SQFm1IPC.net] だから終端文字がどれかなんて どうでもいいのよ 対応する事を仕様にいれろって事
125 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 20:24:36.88 ID:sKG/CNAU.net] >>121 そのようなことは正にどうでもよいだろうというのが俺の意見 言語の多様性の観点からも、そんなことを縛っても意味はない それよりは、どんな言語からでも、どんな言語のモジュール(ライブラリ)でも 呼び出せるって方が重要だと思うよ もしそれが出来てれば、君は延々と自分の好きな言語だけ使ってれば良かったかもしれないし そうじゃなかったとしても、どの言語からでもCのprintfが簡単に呼び出せるんなら 君の願いは達成するんだろう?
126 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 20:31:30.03 ID:sKG/CNAU.net] >あとは別プロセスとして通信するか。 それも構わないと思う 通信のフォーマットが統一されてれば 後は処理系がそれに対応すればよいんじゃないかなー RDBとのやり取りも、それですれば良かった話 さらにはネットワーク越しに呼び出したり そういう標準が一つ欲しかったね、って話 今更遅いが
127 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 20:33:28.04 ID:Nyb1QLRU.net] J S O N R E S T
128 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 21:07:30.99 ID:Xtw6aZxr.net] 商売なら有料版と無料版を統一するわけがない 趣味で作るならユーザーの願望よりも作者の都合が優先される
129 名前:あ mailto:sage [2017/09/01(金) 21:26:53.26 ID:8i7au6Vc.net] >>124 アホか。対応する事を仕様で決めるためには、何に対応しないといけないか定義出来てないと、対応しようが無いだろう。 何をどうしたいのかわからん。俺ラッパー一枚で済むんじゃねえのそれ。 >>126 今までもCorbaとか色々あったけど、結局は一番無難かつ使われてるHTTPになるんだろうなって感じかな。 前にも同じ発想を書いた気がするけど、なんだかんだでこなれてるし、いつ使うねんと思ってたし、RFCにも「どっかで役に立つ」みたいな記載されてたUPGRADEのおかげでWebSocket使えたりしてるし。 もうちょい早く、なら処理系で対応するよりOSに頼った方が良いんだろうな。UNIXドメインソケットとか。
130 名前:あ mailto:sage [2017/09/01(金) 21:30:39.30 ID:8i7au6Vc.net] 124みたいな奴が書いた酷いCがあったはずだと思って探したらすぐあったわ。 www.pro.or.jp/~fuji/mybooks/cdiag/cdiag.8.2.html もう20年以上前になるのか。歴史は繰り返すんだな。
131 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 22:23:07.64 ID:4l9jDYBk.net] >>130 糞ワロピオ あんたただの気狂いなだけじゃなくて物知りやね
132 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 22:26:00.55 ID:o/CD7d/B.net] ガイジID:SQFm1IPCの言いたいこと全く理解せずにディスったり謎リンク貼ってるガイジ本当に草だ……w ガイジVSガイジって感じやね
133 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 22:35:14.33 ID:9fFcfHIv.net] でもまあ共通規格を立てようって発想自体は まっとうな意識ではあると思うよ HTML5とJSに人が集まってるのも 今一番の共通規格っぽいからなんじゃね?
134 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 22:36:34.19 ID:4l9jDYBk.net] >>132 ID:SQFm1IPC「ぼきプェチピィ〜しか書けましぇ〜ん 他の言語もプェチピィみたいになればいいと思いましゅ、アヘアヘ」 こうやろ ガイジウムとりすぎか?
135 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 23:26:12.33 ID:GWPC4pz1.net] >>133 そりゃブラウザっていう共通実行環境があるっつーのに、 各々のメーカーの都合で規格がずれてるって状況があるからでしょ。 なんもないところにとりあえずグローバルな規格作ろうとか誰かの自己満足にしか ならんことを言い出すからバカにされるんだよ。
136 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 23:51:48.74 ID:sKG/CNAU.net] その前にHTML5やJSが他の言語と、例えばCのprintfと仕様が同じになってるとか そういう他言語を意識したつくりになってるってわけじゃないから今回の件では不適切な例だよ どう贔屓目に見てもHTML5とJSは他の言語とは違った異質なもので ぜんぜん寄せてきてないよ こういったものを例に挙げて肯定的にとらえる文体なら よりいっそう各言語で共通の文法〜〜は要らないってことになる これは意訳すれば全部Javaで書けばよくね?って言ってるようなもので 他言語を巻き込んで文法を共通にするとかとは反対のベクトルの意見に見える 文法に共通な部分を持たせるっつっても、使用感だけの問題であって PythonでRubyのコードが走るようになるわけじゃないし 大体のメジャー言語はC言語の文法に寄せてきてるから その意味で特に不満はないな 細かな仕様が違うのはそりゃ当たり前でしょ 言語として最低限サポートしなければならない仕様を作って それを満たしていればC上でもJava上でもPython上でもRuby上でもPHP上でも とりあえずは動く、っていうなら、有りかもしれないけど、あり得ないでしょ 全然違った概念とメカニズムで動いているのに
137 名前:あ mailto:sage [2017/09/02(土) 00:17:53.83 ID:LCAfPD7A.net] >>131 これ、確か本で読んだと思う。確かに10代だったかもしれん。 >>132 伝わってるやつが居るのに、まだお前は馬鹿な事言いづけるのかなぁ。
138 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 00:20:54.65 ID:qZ0SgL8Y.net] >>137 おまえがID:SQFm1IPCの言いたいことを全く理解してないんだよ おまえだよおまえ
139 名前:あ mailto:sage [2017/09/02(土) 00:30:19.85 ID:LCAfPD7A.net] >>138 どー言うこと? 要は、puts("文字列"); 程度のコードはどの言語でも寸分違わぬ同じ動きをすることによって、学習コストを下げたい、って話だと受け取ったが。 そして、それは無理、言語の良いところを殺す。極論は>>130 。こんなことするならPascalで書けと。 そもそもさー。"文字列"がすごい、ものによっては言語設計の軸になりうるものなのに、「文字列を出す程度の関数」が低レベルで各言語共通にできる訳ないっしょ。
140 名前:あ mailto:sage [2017/09/02(土) 00:30:51.41 ID:LCAfPD7A.net] >>138 まー、代わりに説明しといて。あとで読むわ。
141 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 00:45:41.97 ID:DpVc64wR.net] クライアントの統一が無理でもサーバーは統一できるんじゃないかっていう安心感 を土台にして成功したのがJS C++がCを土台にしたみたいに
142 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 00:58:02.21 ID:qZ0SgL8Y.net] >>139 なーんでそこまで分かってて 『「文字列を出す程度の関数」が低レベルで各言語共通にできる訳ないっしょ。』 なんてレスが出来るのかわからん。 あとこの文脈でおまえがどういう意味で「低レベル」という単語を使ってるのかわからん 少しのズレ承知でありたいていに言えば、こいつは「内部でどういう動作するかなんてどうでもいいからとにかく、端末のある環境なら、putとかではなくprintfと書けば端末に表示することを保証しろ」と言ってんだよ
143 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 01:04:47.83 ID:qZ0SgL8Y.net] 本当に>>129 で言う「俺ラッパー一枚で済む話」なんだけど、それを現実に実行してしまうと、それこそ>>130 の記事のコードの出来上がりだから「最初から統一していて欲しい」と願うんだろうなきっと
144 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 01:13:52.49 ID:je61f8uF.net] >少しのズレ承知でありたいていに言えば、こいつは「内部でどういう動作するかなんて >どうでもいいからとにかく、端末のある環境なら、putとかではなくprintfと書けば >端末に表示することを保証しろ」と言ってんだよ だからそのことが否定されているのでは? 何言ってんだ?
145 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 01:18:08.23 ID:je61f8uF.net] エスペラント語みたいなものだな まぁ無理だろう それより通貨を行き来できるようにする方が良い
146 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 01:18:25.67 ID:qZ0SgL8Y.net] >>144 だからただID:SQFm1IPCを否定するレスには俺は文句つけてないだろ?俺もID:SQFm1IPCはガイジだと思うし。 いつまでも「低レベルで」とか「文字列の仕組み」とか言ってる奴はおかしいって言ってるんだ
147 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 06:19:16.76 ID:WzdBIuT6.net] はいはい、一通りの文字列入出力関数も覚えられないバカは プログラマにはならないほうがいいと思いますよ。
148 名前:あ mailto:sage [2017/09/02(土) 07:07:42.32 ID:LCAfPD7A.net] >>142 ムリだよ。 多少のズレがある時点で仕様では無いし、言語仕様レベルから>>130 の無茶苦茶感出てくるぞ。 低レベルってのは、ごめん、いつもこれ伝えづらいな。 システムコールとか呼ぶようなオペレーション、かな。 ちなみに、putsではなくて、printfなら、フォーマットはやるんだよね?Cの形で。
149 名前:あ mailto:sage [2017/09/02(土) 07:30:58.56 ID:6K7Z1T4/.net] >>146 文字列の仕組みは知らないと今時の言語でも辛いだろ。 そんな事気にした事もないなら、一生気にしないだろうけど。
150 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 07:42:43.45 ID:ekcXroij.net] 俺、20年プログラム組んでるけど 文字列未だに理解不能(笑) utf8だったり、sjisだったり c#になってからstringが なんの文字コードで扱ってるかまったく理解してない sjisのファイルから読み込んだ文字列と utf8のファイルから読み込んだ文字列とか c#のstringではどうなってるか知らんw どの段階かで変換されるのか保持されるのかわかってないw 日時の文字列のカルチャとかいうのもよくわからない 無指定だとos依存になってバグるし じゃあc#のstringって何使われてるの? osに依存するの?とかマジよくわからん 初心者スレで聞いてみたかったw
151 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 08:18:23.67 ID:qZ0SgL8Y.net] >>148 確かにprintfのfはフォーマットのfだったと思うけど、Fortranではprintでフォーマットもするんだし、言語仕様レベルで滅茶苦茶は言い過ぎでしょ そりゃfはあったほうがいいと思うけど、fがないと言語仕様レベルで滅茶滅茶ってことはない そして、厳密な名前にしたことで得られるメリットより、全部printにしたことによる学習コストの低下を優先しろとガイジID:SQFm1IPCを主張するんだよなあ
152 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 08:20:49.80 ID:qZ0SgL8Y.net] まあID:SQFm1IPCはなんでfがついてるのかも知らなかったと思うけど、それは「文字列の仕組み」と連呼して彼に伝わるものではないし関係ないな
153 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 08:24:13.11 ID:WzdBIuT6.net] 文字列の実装を隠蔽できていない言語はクソ
154 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 08:25:33.52 ID:VfNRhazy.net] けっきょく、みんな近視眼的に言葉尻を捉えてるだけで この話題の本質わかってないのなw
155 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 08:30:19.62 ID:qZ0SgL8Y.net] >>154 なんかよくわからんけど、エンジニアガイジと話すと撹乱されて本質が見えなくなる。多分普通の文より解釈がしんどくてそっちにリソース割くんだろうな。 正直>>151 も書いていて微妙とは思ったし、昨日思ったこととなんか違う気はする。 もし本質が見えているならちょいと書いてくれると助かる
156 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 08:48:35.94 ID:eEwxJqdV.net] 少し思ったことを書くか。 まあとりあえず c の printf からはじめるけど、これってバイト列からそのまま、出力する形式としては とても普通な形式なわけだ。低レイヤーから見ても最低限のものになってる。 ただ、一方で型に対していい加減で %d とかと , 以下のところに放り込む変数が ずれてたら簡単にアボーンするってなことが言われて cout << とか まあ他の高級言語の print なんかがでてきたわけ。 じゃあ c もそうすりゃいいじゃんと思うだろうけれど、実際そんな高級なことすると システムプログラミングみたいな生な現場だとその高級なとこにバグが潜む可能性が 高いし、そもそも無駄なメモリ食うし ってな理由で拒むわけ。 とりあえず単純な見方をするなら上記のような理由で統一はされない。
157 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 08:57:42.86 ID:VfNRhazy.net] ああ、やっぱりコイツもわかってないw
158 名前:あ mailto:sage [2017/09/02(土) 10:01:43.08 ID:6K7Z1T4/.net] >>151 言い過ぎでも無いのでは? printfでも、言語によっては概念が無いので使えない(はず)の%pとか、じゃあ%sは何を取る?%cは?と、収拾がつかんかと。 まずメモリの値を何かに出すって事が実はすごく面倒だって分かってほしいけどな。安易な事言うやつには。 仕様で決めたいならミニマムなのが要るかと。 >>157 何がわかってないか説明してくれる? わかってないって言うのは簡単なんだし、説明できないって事は自分もわかってないって事と取るけど。
159 名前:あ mailto:sage [2017/09/02(土) 10:07:29.51 ID:6K7Z1T4/.net] 「最低限言語というからにはこの命令をこういう引数で呼べる事」 ってのは、語順が変わる言語は守れない。 なら引数の順番は見逃すわと言ったら、次は型の問題。 型の定義と表現の定義は○○準拠な、となると、それを持ってない言語は用意すべきかとなる。 その辺見逃すわ、人間が見て理解できる形で!となると、見る人間がどんな人間か(言語は何か)でかなり変わる。少数とかだとフランスでの地獄の,とスペースに殺される形。 それも見逃すわ、うまいことやって!となると、 もう定義なんか残ってなくない?
160 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 10:10:50.16 ID:FHcsad6W.net] >>158 ない概念は非対応にして%sはその言語で主に扱う文字列にすりゃ満足するだろうよID:SQFm1IPCは なんならフォーマット機能すらなくしてfortranのprint*の挙動にしてすら満足するだろうよ
161 名前:あ mailto:sage [2017/09/02(土) 10:11:18.31 ID:6K7Z1T4/.net] だから、Hello Worldなんてお題目があるんよ。どんな言語にも。
162 名前:あ mailto:sage [2017/09/02(土) 10:12:21.75 ID:6K7Z1T4/.net] >>160 もう別物じゃん。
163 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 10:16:07.91 ID:FHcsad6W.net] >>162 別物でいいんだよ。ID:SQFm1IPCみたいな手合いはそういうこと気にしない。printfと打てば出力すれば満足なんだから
164 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 10:21:42.21 ID:HZeOuyve.net] ID:qZ0SgL8Y == ID:SQFm1IPC
165 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 10:23:14.61 ID:FHcsad6W.net] >>164 そんなガイジといっしょにすんな
166 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 11:09:56.12 ID:DpVc64wR.net] >>161 これは正論だ テスト駆動でライブラリをテストする感覚 だが慣れたらテストではなく有名なソフトのソースを読めるからテストいらない
167 名前:あ mailto:sage [2017/09/02(土) 12:18:54.23 ID:6K7Z1T4/.net] >>163 なんかわかってきた。本質ではない形でだけど。 標準出力と標準ライブラリとかそういうキチッとした話ではなくて、「printfデバッグで使うための関数」程度の存在として同じような名前で同じような仕様の関数が欲しい、って事か。 >>166 最初にやるようなつまんねー演習課題は、地味に奥が深いんよ。 はいはい画面に出ましたね。予想してたけど。って思うのも当然だけど。 帳票エンジン作った時にDSLのチュートリアルも書いたんだけど、書く側として見ると新しかったと言うか、新鮮だった。
168 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 12:39:54.25 ID:OknToGa2.net] Javaが依然としてナンバー1だが、それに取って代わるのは何か? https://www.infoq.com/jp/news/2017/08/Java-Still-One-Tiobe >TIOBEは、特にCrystal、Kotlin、Clojure、Hack、Juliaを挙げて、 >新しい言語への関心が高まっていると見ている。 >これらの全体シェアは小さいが(すべて1%未満)、その浸透速度は注目に値する。 >特に、RubyのいとこにあたるCrystalは、1ヶ月で60位から32位へと飛躍した。 Crystalが早くRuby を追い落としてほしい。
169 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 12:45:48.01 ID:FHcsad6W.net] >>167 細部は微妙だけど、まあ大方そんなもんだよ。大分近かろう
170 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 12:46:18.42 ID:FHcsad6W.net] このスレ共通認識擦り合わせ出来なすぎだろどうなってんだ
171 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 12:50:38.76 ID:OknToGa2.net] 「Ruby風味のプログラミング言語」四天王現る!Elixir,Crystal,Opal,Mirahまとめ #ruby https://codeiq.jp/magazine/2015/07/26120/
172 名前:あ mailto:sage [2017/09/02(土) 12:55:46.34 ID:6K7Z1T4/.net] >>170 擦り合わせしたいと言うと荒らし扱いされるから気をつけてね。
173 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 14:12:09.69 ID:DpVc64wR.net] さんざん宣伝された「コミュ力」でさえ プログラムにコミュ力が必須という共通認識は出来ない
174 名前:デフォルトの名無しさん mailto:age [2017/09/02(土) 14:26:26.94 ID:CJZVlBwp.net] 頭の悪い人がちょっと覚える労力を避けるために 頭の良い人が多大な無駄な苦労をするのは 社会的損失だ
175 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 14:26:47.13 ID:9PaYDv7F.net] 抽象化思考能力が欠如してるから 自分の知ってる分野・レイヤーの視点で語りたがる
176 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 14:45:24.92 ID:HZeOuyve.net] >>170 兜合わせとかいやらしい
177 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 15:06:32.25 ID:iROop40D.net] 2ちゃんとスーパーハカーによると抽象的思考にはアルファベットよりも漢字を使うのがいいらしい。 プログラミングも漢字でやるといいらしい。
178 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 15:49:49.61 ID:9PaYDv7F.net] >>177 そういう結論になる事が抽象化思考力の欠如してる何よりの証
179 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 18:15:56.44 ID:aqG50DC7.net] アルファベット仕様キーボードで入力してる限りは 入力速度がアルファベット>非アルファベットになるのはどうしようもない
180 名前:あ mailto:sage [2017/09/02(土) 20:43:09.37 ID:6K7Z1T4/.net] >>179 タブキーと補完使わないの? 俺、和文のあとに、同じ内容の英文つけたメール書くことあるけど、あきらかにタイプ数は和文の方が少ないよ。 抽象思考したいならLabViewとかSPSSあたりでブロック図とかフィルタのグラフで思考するのが一番早かろう。
181 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 22:56:58.71 ID:DpVc64wR.net] 今の世の中に抽象的思考が足りないって実感あるの?ないでしょ そんなことよりユーモアが足りないと思う
182 名前:デフォルトの名無しさん mailto:sage [2017/09/02(土) 23:39:15.33 ID:je61f8uF.net] ユーモアが足りないように感じるのは ネットのおかげか世の中がマトモという言い方はおかしいけど 正解を引くひとが多くなってきたから 明らかにおかしい状況を ユーモアで笑い飛ばす必要性があまりなくなってきたんだと思う 苦痛な環境に置かれても、ある種納得してるっつーか でもプログラミングの世界はまだまだ黎明期に当たるのか 偉い人でも、おかしなことしている人がいっぱいいて https://img0.etsystatic.com/178/0/13833747/il_340x270.1165546874_11w2.jpg ↑まだまだこういうユーモアが有ったりする 今後ある程度成熟していくと、もうこういうユーモアも見れなくなると思うと残念だね と同時に、正しいことを知っているだけでは勝負にならなくなる 実力が問われるね
183 名前:デフォルトの名無しさん mailto:sage [2017/09/03(日) 01:21:59.30 ID:hrqzcgfY.net] そんな残念、杞憂だよ 糞バカジャップランド土人が 山ほど遺してくれたコボルやペェチプゥの保守案件があるからね
184 名前:デフォルトの名無しさん mailto:sage [2017/09/03(日) 01:48:32.74 ID:CI8E+FdQ.net] >>182 DrinkをCoffeeのメソッドにしてることに最高に納得いかない。 設計者出てこい!
185 名前:デフォルトの名無しさん [2017/09/03(日) 03:47:08.84 ID:3gHqT14e.net] >>182 これ何がアカンの?
186 名前:デフォルトの名無しさん mailto:sage [2017/09/03(日) 04:22:00.89 ID:LluVimQv.net] 「お前が飲むんかーい!」ってツッコミたくなる
187 名前:デフォルトの名無しさん mailto:sage [2017/09/03(日) 05:04:38.40 ID:wg7NEzB4.net] >>182 bool値はIsEmpty()がいいなー
188 名前:デフォルトの名無しさん mailto:sage [2017/09/03(日) 06:11:13.88 ID:Xy/hIi2a.net] 次世代言語スレでisHogeは無いだろ…
189 名前:デフォルトの名無しさん mailto:sage [2017/09/03(日) 08:29:59.58 ID:j0xqGCdJ.net] 関数やメソッドの呼び出しに()を使う言語は滅亡すべきだな
190 名前:デフォルトの名無しさん mailto:sage [2017/09/03(日) 11:27:05.90 ID:F0wU88Va.net] 明示的に call とか書くのはあんま流行らんぞ。 おれはそれくらい明示的でいいかなと思うのだが。
191 名前:デフォルトの名無しさん mailto:sage [2017/09/03(日) 13:01:37.55 ID:HuyjtM/i.net] Coffeeが空かどうかのStateをインターフェースで持たせて、StateはVisitorを受け入れるのが伝統的なやり方かね 次世代だとCoffeeが空かどうかのStateは、インターフェースじゃなくて、型クラスで制限して、パターンマッチで処理を切り分けるって感じかね
192 名前:デフォルトの名無しさん mailto:sage [2017/09/03(日) 13:21:28.44 ID:2mD2p7su.net] Human john; Cup cup; ... if (cup.isEmpty) { cup = new Coffee(); } else { john.Drink(cup.Drop()); }