トップページ⇒tech
1002コメント371KB

【JavaScript】スクリプト バトルロワイヤル53【php,py,pl,rb】 [無断転載禁止]©5ch.io

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん2016/01/07(木) 13:32:03.16ID:iIS3+qD+
前スレ

【JavaScript】スクリプト バトルロワイヤル52【php,py,pl,rb】 [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/tech/1443578172/


問 Pythonで書くと誰でも同じような綺麗なコードになるか?
答 なるわけないだろwっていう考えが優勢
0002デフォルトの名無しさん2016/01/07(木) 16:30:47.70ID:iIS3+qD+
問 Pythonは誰が書いても同じコードになるといいますが、それは何故ですか?
答 インデントがブロックを表すからです。

問 インデントだけ揃えても同じコードにはならないですよね?
他の言語でも整形ツールでインデントを揃えたら同じコードに成りますか?
答 ぐぬぬ

問 それでインデントだけですか? 同じコードになるという工夫は?
答
0003デフォルトの名無しさん2016/01/07(木) 16:31:57.08ID:iIS3+qD+
問 仮に誰が書いても同じコードになるというのなら著作権は発生しない事になりますが?
答 それはイヤです!
0004デフォルトの名無しさん2016/01/07(木) 16:33:01.92ID:iIS3+qD+
問 誰が書いても同じコードになるとかいうのはやっぱり幻想ではありませんか?
答 信じる者は救われる
0005デフォルトの名無しさん2016/01/07(木) 16:40:32.09ID:iIS3+qD+
問 Pythonで書き方は一つというのなら、FizzBuzzの書き方も一つになりませんか?

http://python.rdy.jp/wiki.cgi?page=FizzBuzz
http://qiita.com/cof/items/c3f59e20306558d60310
http://d.hatena.ne.jp/sinsoku/20111012/1318353641

さすがPythonやで!
FizzBuzzのやり方はひとつ(眼精疲労)や!
ひぃふぅみぃ…6+7+4…ひとつや!
0006デフォルトの名無しさん2016/01/07(木) 17:47:02.57ID:90bWN72u
再代入が嫌なら再代入を禁止する方法を用意すれば良いだけであって
代入の有る無しでスコープが変わる合理的な説明になっていないということ

本質的に代入とスコープは全く関係ない
代入したいから代入するし、別スコープにしたいから宣言する、それぞれ独立した機能
別の機能を一つにまとめる必要もない

変数のスコープを調べるのに代入の有る無しを調べるのは変な話だし
nonlocalも追加されたから、nonlocalの有る無しと代入の有る無しの両方を調べなければならない

変数宣言だけを調べれば済む方がシンプルだし
機能と構文が一対一で良い
0007デフォルトの名無しさん2016/01/07(木) 17:47:16.36ID:h23TZaPC
誰でも同じような綺麗なコードになる言語とかあるわけねーだろw
0008デフォルトの名無しさん2016/01/07(木) 17:51:14.45ID:egFe+fZ+
Pythonならきれいになるね
0009デフォルトの名無しさん2016/01/07(木) 17:52:26.99ID:h23TZaPC
そう唱えるだけw
0010デフォルトの名無しさん2016/01/07(木) 18:01:38.38ID:90bWN72u
再代入を禁止する方法はCで言えばconst int = 0;で
こんなものはC言語ですら用意しているわけで
代入の有る無しでスコープが変わる合理的な説明になっていない
0011デフォルトの名無しさん2016/01/07(木) 18:11:14.50ID:egFe+fZ+
別に再代入を禁止する禁止する必要も無いな
0012デフォルトの名無しさん2016/01/07(木) 18:39:42.38ID:JDuGAVYi
>>2
問1、答1がおかしい。
正しいと言われるコードは一つになるから、だよ。

>>3
違う。
誰か書いても同じコードになるのは、局所的なもの。
日本語では文型が自由だから、何通りも同じ表現があるところを、
英語なんかのSVOCみたいな文型を導入することで、同じ書き方を強制できるようなもの。
それによって書かれたセンテンスは同じ表現になるが、
それによって書かれた本は、あくまでその人の本。

>>5
正しくない書き方、を勘定に入れるな。
0013デフォルトの名無しさん2016/01/07(木) 18:42:01.66ID:iIS3+qD+
>>12
いいかい? 正しい答えが出るもは
どれも正しいコードなんだよ。
0014デフォルトの名無しさん2016/01/07(木) 18:43:51.46ID:gLFqORce
正しくない書き方を勘定に入れないという方式なら
すべてのプログラミング言語はひとつの書き方を得るなw
0015デフォルトの名無しさん2016/01/07(木) 18:43:53.27ID:iIS3+qD+
Pythonでかくと、なぜ正しい答えが出るコードが
こんなにたくさんできるんどあろうか?
正しい答えが出るコードは一つではなかったのか?
0016デフォルトの名無しさん2016/01/07(木) 18:45:20.24ID:iIS3+qD+
Pythonでコードを書きなさいって
問題があったら、超難易度だろうねw


問題 PythonでFizzBuzzを実装しなさい。
ただし正しいコード以外は全部0点です。
0017デフォルトの名無しさん2016/01/07(木) 18:46:23.85ID:JDuGAVYi
>>13
お前は前スレから何も読まずに脊髄反射してるのな。

906 デフォルトの名無しさん sage 2016/01/06(水) 18:29:34.89 ID:dPMBxPpq
>>902
どういう絡み方なんだよ。
t=time.strptime(h, "%H:%M")
hour="{0:02d}{1:02d}".format(t.tm_hour ,t.tm_min)
くらいになるんじゃないの?
コメント無しでも理解できるレベルで書けば良いんだよ。

907 デフォルトの名無しさん sage 2016/01/06(水) 18:35:51.16 ID:dPMBxPpq
>>906
これを、
h=str(10000+int(h.replace(":","")))[1:]
と書いても結果はおおよそ同じだけど、
正攻法とは言えないし、冴えてもない。
これは、答えは同じだけど、間違ってるに等しいコード。
0018デフォルトの名無しさん2016/01/07(木) 18:47:39.08ID:iIS3+qD+
>>17
いいかい? 正しい答えが出るコードは
全部正しいコードなんだよ?
0019デフォルトの名無しさん2016/01/07(木) 18:48:32.99ID:JDuGAVYi
>>16
実務では、どんな言語でもその場で正しくないコードは結果があっていてもボツ食らうだろ。

それともコードレビューで叩かれて、結果は同じなんだから良いだろ!って切れたくなったのか?
0020デフォルトの名無しさん2016/01/07(木) 18:48:58.67ID:JDuGAVYi
>>18
違うよ。それはどんな言語でも。
0021デフォルトの名無しさん2016/01/07(木) 18:50:29.63ID:iIS3+qD+
>>19
お前が書くFizzBuzzは
正しくないコードだよねwwww
0022デフォルトの名無しさん2016/01/07(木) 18:51:03.55ID:JDuGAVYi
>>21
どんな煽りなのかわからん。
0023デフォルトの名無しさん2016/01/07(木) 18:52:13.57ID:iIS3+qD+
コードレビューっていうのはよくないコードを弾くものであって、
たったひとつしか無い正しいコードを見つけ出すものじゃないからなぁw
0024デフォルトの名無しさん2016/01/07(木) 18:52:39.43ID:iIS3+qD+
>>22
FizzBuzzは正しいコードが複数あるって話だよ。
0025デフォルトの名無しさん2016/01/07(木) 18:54:13.08ID:JDuGAVYi
>>23
正しくないコードは良くないコードだからな。
0026デフォルトの名無しさん2016/01/07(木) 18:55:03.01ID:iIS3+qD+
>>25
正しいコードが複数あるって話をしてるんだがw
0027デフォルトの名無しさん2016/01/07(木) 18:55:34.93ID:fRBnZ6RA
パイソン心理教やんけもはや…
たったひとつの正しいコードって何…
パイソンで書くとそれになるはずなのに
ならないコードは正しくないコードとかイミフすぎんべ…
0028デフォルトの名無しさん2016/01/07(木) 18:57:03.31ID:JDuGAVYi
>>24
3つめの実装1だけ。
0029デフォルトの名無しさん2016/01/07(木) 18:58:41.48ID:iIS3+qD+
>>28
それは正しくないコードだよw
0030デフォルトの名無しさん2016/01/07(木) 19:01:35.17ID:CG/ySfIn
教祖に聞いて来いやw
FizzBuzzの正解はどれなのかw
みんなそれを黙って写経せいやw
0031デフォルトの名無しさん2016/01/07(木) 19:02:15.95ID:JDuGAVYi
>>29
へえ、なんで?
0032デフォルトの名無しさん2016/01/07(木) 19:03:02.30ID:iIS3+qD+
誰が書いても正しいコード一つになるというのなら、
検索した時に、いろんなサイトでその一つが正しい答えとして
多く見つかるはずだからね。
0033デフォルトの名無しさん2016/01/07(木) 19:04:29.92ID:egFe+fZ+
正しいコードでも、別にそんなこと無いよ
0034デフォルトの名無しさん2016/01/07(木) 19:05:24.67ID:iIS3+qD+
正しいコードは複数あるから
一つになるわけがないのであった。
0035デフォルトの名無しさん2016/01/07(木) 19:06:01.12ID:JDuGAVYi
まあ恣意的に曲解して、そういう事ずっと言ってればいいよ。

色々な書き方があるが答えが同じなら全て正解、って実務してたら口が裂けても言えないだろ。
俺は実務ではPythonで書いてないけど。
0036デフォルトの名無しさん2016/01/07(木) 19:06:47.48ID:iIS3+qD+
FizzBuzz程度の小さいものであっても、
これだけいろんな書き方が見つ変わるわけで、
実用レベルのプログラムで誰が書いても同じなるわけがないのであった。
0037デフォルトの名無しさん2016/01/07(木) 19:09:15.24ID:egFe+fZ+
それは正しい書き方では無いよ
0038デフォルトの名無しさん2016/01/07(木) 19:09:36.64ID:iIS3+qD+
31 返信:デフォルトの名無しさん[sage] 投稿日:2016/01/07(木) 19:02:15.95 ID:JDuGAVYi [8/9]
>>29
へえ、なんで?
0039デフォルトの名無しさん2016/01/07(木) 19:10:36.05ID:iIS3+qD+
誰が書いても正しいコード一つになるというのなら、
検索した時に、いろんなサイトでその一つが正しい答えとして
多く見つかるはずだからね。
0040デフォルトの名無しさん2016/01/07(木) 19:11:03.79ID:JDuGAVYi
なんて言うか、アンチがやりた過ぎて、つい言ったんだろうな。答えが同じなら正しいコード、って。
どんな言語でも、こう書くべきって書き方もあるだろうし、
それは現場ごとどころかプロジェクトごとに決めてるレベルなのに。
0041デフォルトの名無しさん2016/01/07(木) 19:12:27.90ID:iIS3+qD+
>>40
焦点はそこじゃない。

悪いコードを排除したからって
たった一つの正しいコードだけが残るわけじゃないってことだ。

正しいコードは複数ある。
0042デフォルトの名無しさん2016/01/07(木) 19:13:25.93ID:JDuGAVYi
もしかして、正しい一つのコード、を
字句単位で一つ同じ、だと思ってるのかな。
>>17
のような意味なんだがwww
0043デフォルトの名無しさん2016/01/07(木) 19:13:45.94ID:iIS3+qD+
正しいコードが複数あるのは、FizzBuzzのコードが
複数あることからも証明されているわけで
0044デフォルトの名無しさん2016/01/07(木) 19:14:27.40ID:JDuGAVYi
>>41
アホかな。
0045デフォルトの名無しさん2016/01/07(木) 19:15:00.79ID:egFe+fZ+
正しい書き方は最終的には一つになるよ
0046デフォルトの名無しさん2016/01/07(木) 19:15:33.30ID:iIS3+qD+
FizzBuzzの正しい書き方が複数あるんだよな。
0047デフォルトの名無しさん2016/01/07(木) 19:17:32.71ID:egFe+fZ+
正しい書き方は最終的には一つになるよ
0048デフォルトの名無しさん2016/01/07(木) 19:17:44.97ID:aL92Pxko
さわいでるやつは元ネタPEP20の一節を読め
There should be one-- and preferably only one --obvious way to do it.

shouldはせいぜい「一つあるべきだ」程度のニュアンス
正しさとか一つだけとか書かれていない
0049デフォルトの名無しさん2016/01/07(木) 19:17:57.53ID:iIS3+qD+
その最終がいつまでもたっても来ないわけだがwww
0050デフォルトの名無しさん2016/01/07(木) 19:18:34.43ID:iIS3+qD+
>>48
そうそう。一つであるべきだ。(だがそんなことはありえないしPythonでも実現されていない)
こういうニュアンスなんだよねw
0051デフォルトの名無しさん2016/01/07(木) 19:19:47.52ID:iIS3+qD+
Python作った人が、そう考えているだけであって、
それはPythonの特徴じゃないんだよ。
0052デフォルトの名無しさん2016/01/07(木) 19:21:53.90ID:egFe+fZ+
けど正しい書き方は最終的には一つになるよ
0053デフォルトの名無しさん2016/01/07(木) 19:22:10.38ID:qbYAxVZB
仕様を満たしバグのない実装がここに複数ある

A 他よりコードがコンパクトで洗練されている
B 他より実行時のメモリ消費が工夫されており省メモリ
C 他より実行時の速度が速い
D 他より特に優れないが他の半分の工数で上がってきた

ここからたったひとつの正解は選べないでしょう
0054デフォルトの名無しさん2016/01/07(木) 19:25:12.21ID:egFe+fZ+
選べるよ
0055デフォルトの名無しさん2016/01/07(木) 19:39:10.18ID:iIS3+qD+
>>54
ちゃんと書けよw

選べるよ(選ばないけどね。仕事したくないし)

っていいたいんだろw
0056デフォルトの名無しさん2016/01/07(木) 19:48:35.26ID:egFe+fZ+
それぞれが必要な状況において一つ選べばいいじゃん
0057デフォルトの名無しさん2016/01/07(木) 19:51:24.32ID:7oYfhzZh
>>56
つまり、それが「たったひとつの正解」の正体だねw
0058デフォルトの名無しさん2016/01/07(木) 19:52:17.23ID:iIS3+qD+
俺が一番いいと思ったものが正解
(他人がそう思うかどうかはわからない)
0059デフォルトの名無しさん2016/01/07(木) 19:53:07.34ID:iIS3+qD+
つまり、ひとそれぞれ正解が違うってことか、
人によってコードがバラバラになるのも当然だね!
0060デフォルトの名無しさん2016/01/07(木) 20:00:55.17ID:egFe+fZ+
正しい書き方は最終的には一つになるよ
0061デフォルトの名無しさん2016/01/07(木) 20:02:16.13ID:Q+p5Z26J
お題目やめいw
0062デフォルトの名無しさん2016/01/07(木) 20:28:34.12ID:ZH4H6yTF
まあ嘘をばらすのはいいことだ
騙される人間が減る
騙されない賢い人間が増える
0063デフォルトの名無しさん2016/01/07(木) 20:31:49.24ID:egFe+fZ+
真実はいつも一つって良く言うように
正しい書き方は最終的には一つだよ
0064デフォルトの名無しさん2016/01/07(木) 20:34:05.56ID:M4nnWcsw
今になってPythonにこういう信者が現れるとは思わなかったw
0065デフォルトの名無しさん2016/01/07(木) 20:52:29.73ID:lRIC4Lm0
クソスレ伸ばすなカス
0066デフォルトの名無しさん2016/01/07(木) 20:53:30.91ID:z335BoOa
このコナン君もはやPythonアンチやろww
0067デフォルトの名無しさん2016/01/07(木) 21:25:29.34ID:Qjzjxz5n
>>53
PythonでAからDまで書いてみてよ
0068デフォルトの名無しさん2016/01/07(木) 22:50:35.88ID:vtznMFKh
重要なのは認識の違いが生まれないことだと思うんだよね。
例えばJSにおいて誰しも納得するように『配列』を判定するのは難しい。
何故なら『配列』の定義が人それぞれ大きく異なるからだ。
よってそういったコードであってもバラける。
Pythonはそこら辺キッチリしてるの?
0069デフォルトの名無しさん2016/01/07(木) 23:07:19.64ID:egFe+fZ+
認識の違いが生まれないことは重要じゃないよ
違いなんていくらあってもいいんだ
0070デフォルトの名無しさん2016/01/08(金) 01:03:39.41ID:HWXcj0DS
女神転生やったことがある人はわかると思うんだけど
Python やってる人間ってたいてい Law 属性でしょ。
自分たちの教義を絶対的なものとして崇めるのはいいけど
Neutral や Chaos の人間からしたら
「頭おかしい」としか思えないんだよね。
0071デフォルトの名無しさん2016/01/08(金) 01:07:53.47ID:R51ag863
もっと正確にいうとたぶん教義うんぬんですらなくて
ただの一知半解っ子
0072デフォルトの名無しさん2016/01/08(金) 06:08:10.54ID:M194sk27
実際には、特に日本においては、低レベルなドカタ連中にはPythonを使うような仕事はまわってこないから
低レベルなゴミコードを見る必要が少ない事が良い
結果的に認識もある程度揃う
0073デフォルトの名無しさん2016/01/08(金) 06:12:14.27ID:wjh6KMhJ
だから、別に言語自体が特殊なわけじゃない
0074デフォルトの名無しさん2016/01/08(金) 06:13:35.49ID:CRji6bQ5
Pythonでも汚いコードはかけるし、
書き方が一つになるわけでもない。
0075デフォルトの名無しさん2016/01/08(金) 06:14:59.95ID:M194sk27
でも、その意味ではHaskellやOCamlの方がプログラマの
平均レベルは高いし、みんな関数型の知識もあるので
Pythonよりもずっと良いけどな
まあドカタには関係無い世界だけど
0076デフォルトの名無しさん2016/01/08(金) 06:19:43.04ID:M194sk27
>>74
汚いコードをまだ問題視してるのか?
ゴミは氏ねで決着してるだろ
0077デフォルトの名無しさん2016/01/08(金) 06:37:09.12ID:ZpBAcVz8
JavaScriptの求人158件の平均最低月給215,600円
http://jobinjapan.jp/job-listing/keyword-javascript.html
0078デフォルトの名無しさん2016/01/08(金) 07:07:36.62ID:M194sk27
30才越えのエンジニアで年収1000万にも届いてない奴は
こんな場所に書き込んでる暇あったら転職活動始めた方が良い
0079uy ◆Qawu9.2l1E 2016/01/08(金) 08:12:58.46ID:TIn7Y6eo
プログラマって何に金つぎ込んでんの?
0080デフォルトの名無しさん2016/01/08(金) 08:26:32.28ID:K8OImcU7
風俗?
0081デフォルトの名無しさん2016/01/08(金) 08:33:49.36ID:vZEFwRR2
>>69
まず何が良いのか認識が1つにまとまらないと、
正しさについてもまとまることはないでしょう
0082デフォルトの名無しさん2016/01/08(金) 09:07:07.33ID:yBRKo/VZ
>>1
いちいち、前スレの話題をテンプレに書いてんじゃねぇよ。テンプレもまともに引き継がずに
馬鹿じゃねぇの?糞虫が。
0083デフォルトの名無しさん2016/01/08(金) 09:41:13.68ID:eBrvVldk
Pythonはバッチでftp送信したり、PDFやExcelをメール送信するのに使う
PHPは、素のPHPでデータベースにPDOかぶせてRESTサービス作る、かんたん
Perlは、EDI読むのに使う、BM***4*201601071243***CTYU665387~ みたいなやつ
JavaScriptないと、シングルページWebアプリの画面作れないよね
全部ないと困る
まあ一番使うのはVB.NETなんすけど
ていうか言語いろいろよりも、Gitがなくなったら明日からどう生きればいいんだくらい困る
0084デフォルトの名無しさん2016/01/08(金) 10:30:32.16ID:4NUR96cb
きょうびperl使う人は過去の遺産があるからかな?
スクラッチから単に書いて使うだけならrubyでよくね?
0085uy ◆Qawu9.2l1E 2016/01/08(金) 10:35:13.47ID:TIn7Y6eo
言語ごとに作りやすい開発環境はあるけど
作りづらい分野でもさっと作れるなら、全部ひとつの言語で
例えばrubyでやるという芸当が可能な世界であり、
ひとつの言語でやる事によって小さなのコードの断片を流用出来るから効率を高められる
0086デフォルトの名無しさん2016/01/08(金) 11:45:23.07ID:p+Wm8jDP
既に有る動くものを「rubyで」書き直す意味はないな
新規に作るものも「rubyで」書く必然性がない
0087デフォルトの名無しさん2016/01/08(金) 12:05:58.44ID:yBRKo/VZ
>>86
同意。

おれもJavaScriptで色々作ってるけれど、じゃぁこれらをRubyで書くか?といったら
10000%ない。つーか、馬鹿そのもの。
サーバサイドもNode.jsで作ってるから尚更。
0088デフォルトの名無しさん2016/01/08(金) 12:22:13.98ID:wuY7JmCU
> 10000%ない。つーか、馬鹿そのもの。

頭のよさそうな文章でつねえw
0089デフォルトの名無しさん2016/01/08(金) 12:32:43.08ID:K8OImcU7
>>84
perlはbetter shellscriptとしては普通に便利
rubyも元々はそのための言語であったはずだけど、わざわざ入れなきゃまず動かない時点で論外
0090デフォルトの名無しさん2016/01/08(金) 13:18:34.60ID:yBRKo/VZ
>>88
頭の悪そうなレスだな。おまえのは。
0091デフォルトの名無しさん2016/01/08(金) 13:34:13.90ID:rMPxJtIh
サーバサイドJavaScriptは、同期処理にしたいものも非同期になっちゃうのが面倒ね、promiseとか使わないといけないやつ
0092デフォルトの名無しさん2016/01/08(金) 19:08:54.03ID:HMiJp1aB
△サーバサイドJSは
○Nodeは
でしょ。
とは言え同期APIは公式/非公式で一通り用意されてるからパッチ処理とかなら使っていいよ。
サーバ用途ならよほどのことがない限り使ってはいけない。
それを使うとNodeがNodeである意味が無くなる。それでもいいのなら止めないが。
0093デフォルトの名無しさん2016/01/08(金) 19:17:58.89ID:HMiJp1aB
全APIがPromise/Observableの形で提供されて
async/await/onで扱えるようになればNodeは化けると思う
そういうことを2年前から言ってきたが1/3くらいまでは来たのかな。
0094デフォルトの名無しさん2016/01/08(金) 19:43:02.75ID:VF9J5dlx
昔はインフラ周りはrubyが強かったけど最近はそれもNode.jsに奪われつつあるね
AWSのグルー言語なんかもう完全にjs一択になっちまった
0095デフォルトの名無しさん2016/01/08(金) 19:50:50.41ID:qBCIysU0
>>89
perlの「入ってる力」は認める
rubyが入ってない環境でやらざるを得ないなら是非perlで書きたいね
シェルスクリプトで頑張るの嫌やわ
0096デフォルトの名無しさん2016/01/08(金) 21:39:01.18ID:7A9pQUPN
たまたまRubyが使える環境だからって使っちゃうと他の環境で入ってなかったりバージョン違いで動かなかったりで
使い回しが利かなくなるから、シェルスクリプト的な用途には絶対に使わないようにしてる
0097デフォルトの名無しさん2016/01/09(土) 01:06:06.01ID:D/dJEYXI
>>83
gitはすごいよな
あっという間にsubversionを駆逐してしまった
0098デフォルトの名無しさん2016/01/09(土) 10:27:48.56ID:Kwu55YNP
すみませんガチの中学生なんですがgitて何がウマいんですか?
自分でちっちゃいプログラムをつくるときに
あそびでCVSとSubversionはつかってみたことがあります
emacs上からなんかゴニョゴニョして使ってた覚えあります
結局あれは個人開発には無用の長物なんですかね?
0099デフォルトの名無しさん2016/01/09(土) 10:48:49.34ID:Ppw9w2o3
>>98
bitbucketにアカウント作って置いとくと、ばっちりバックアップになる
あれこれ冒険しても、いつでも元の状態に戻せる
その日何を考えてどこを変えたのか全て履歴が残る

ぼっちでも安心感が違うぞ
複数で開発するならそれこそ、git無くて昔はどうやってたか思い出せないレベル
0100デフォルトの名無しさん2016/01/09(土) 11:27:47.34ID:5qP+Va2j
>>98
プログラムっていうのは、無計画に開発するものじゃなくて
1機能毎に作っていく。

CVSやSubversionだと、それが不可能に近い。
0101デフォルトの名無しさん2016/01/09(土) 11:47:21.26ID:mFKyje2+
>>100
不可能に近いwww
0102デフォルトの名無しさん2016/01/09(土) 13:23:18.39ID:5qP+Va2j
>>101
不可能に近いよ。

ある機能は、それを構成する小さな修正の
集まりからなるけど、それらの修正は相互に依存しているから
その修正でほんとうに良いのか?は別の部分を作らないと断定できない。

大抵は細かい修正が入るから、平行して複数の修正を行うことになる。
そして全体が見通せるようになったときに、平行して開発していた修正を
一つづつマージしていくことになる。

そういったことはCVSやSubversionでやるのは手間がかかりすぎて不可能。
0103デフォルトの名無しさん2016/01/09(土) 13:51:13.97ID:B4VTiUSo
手元のソースをコピーして一旦戻してからdiff取って上げたい機能分だけ上書きしてコミットを繰り返し
git ほすぃ…
0104デフォルトの名無しさん2016/01/09(土) 14:40:29.73ID:VEJeaYnw
chefで環境が一発で出来上がってSQLも流し込めて便利よね
サーバー構築もスクリプト化
ruby信者良かったじゃん使ってもらえて
0105デフォルトの名無しさん2016/01/09(土) 15:13:22.57ID:5qP+Va2j
Dockerがでてきたせいで、chefとかオワコンになってしまったよなw

ごちゃごちゃと複雑な仕組みは不要で、CLIを使える人ならば
誰でも使えるシェルスクリプトを使ったほうが遥かにわかりやすい。
0106デフォルトの名無しさん2016/01/09(土) 23:47:29.58ID:tZhYZoAw
Ruby製のツールって設定とかをRubyベースのDSLで書かせようとするのが多くない?なんかキモいんですけど。
あんなので嬉しいのはRuby信者しか居ないって分からないもんかね?
0107デフォルトの名無しさん2016/01/10(日) 00:36:25.43ID:GDbyrzF5
>>106
手段(ruby)が目的になってるよなキモい
構成管理はAnsibleがすこ
0108デフォルトの名無しさん2016/01/10(日) 01:04:16.76ID:od6ty6Pk
3DCGのスクリプトはPythonがデファクトなんだがそれについてはいいの?
単にRubyをディスりたいだけ?
0109デフォルトの名無しさん2016/01/10(日) 01:26:48.32ID:Uo3j9o+V
>>106-107
目的を達せられるなら別に構わんと思うが
sendmailなんかのコンフィグのひどさとか見たことないのかな
Rubyディスりたいだけじゃねーの?
0110デフォルトの名無しさん2016/01/10(日) 02:32:21.50ID:FYF7/p+t
>>108
処理書くのに使ってるならRubyでもPythonでも全く構わない
アホなのは、宣言的な設定ファイルで十分なものをわざわざRubyのDSLにして静的解析やツールによる生成・変更を困難にすること
0111デフォルトの名無しさん2016/01/10(日) 02:32:57.55ID:D2UTTEpI
別にどのツールがどの言語を選ぼうとかってだが、
どうしてJavaScriptを選ばないのかは不思議だな
標準入出力すら持たない真にスクリプト言語として完成された言語であるのに
なによりSMやV8の導入しやすさはNodeがそれが理由の1つでJSを選んだことからも分かるように
RubyやPythonの準公式/非公式エンジンと較べても格段に高い
0112デフォルトの名無しさん2016/01/10(日) 03:21:38.49ID:GDbyrzF5
設定ファイルは全部JSONにすべきやで
0113デフォルトの名無しさん2016/01/10(日) 05:21:12.59ID:97NQyWJD
JSONはコメント書けるようにしたりできれば設定ファイルとして優秀
0114デフォルトの名無しさん2016/01/10(日) 05:50:52.15ID:GDbyrzF5
"maxthreads": {"value": 4, "min": 1, "default": 1, "comment": {"jp": "ワーカースレッドの数を指定します。通常はCPUのコア数と一致させます"}}

とかでどやろか?
0115デフォルトの名無しさん2016/01/10(日) 08:58:40.30ID:nZbP6rZl
>>110
Ansibleとか全くPythonぽさを押し出してないし
モジュールは標準入出力があるなら何で書いてもいいしね
0116デフォルトの名無しさん2016/01/10(日) 09:24:08.09ID:jKn5h2Is
設定を柔軟にしすぎて、設定ファイルでプログラミングしてるだけというのもよくあるパターンだな
Ansibleはギリギリのところだね
0117デフォルトの名無しさん2016/01/10(日) 09:48:07.16ID:xDkMqJGn
>>112
JSONはアプリ間の通信用
設定ファイルはYAMLだよ

>>113
> JSONはコメント書け
YAML
0118デフォルトの名無しさん2016/01/10(日) 10:33:49.55ID:E73ifLOO
Nodeってマジで一過性の流行りで終わっちゃったね
0119デフォルトの名無しさん2016/01/10(日) 10:57:34.49ID:GDbyrzF5
>>118
サーバーは速さが命とすると
Go言語とかJavaの方が速くね?ということなのかねー

V9とか出てさらに速くなったらわからないかも
0120デフォルトの名無しさん2016/01/10(日) 11:46:44.33ID:xDkMqJGn
>>119
そもそもNodeに適した状況っていうのが少ない。

Nodeを使うと同時接続数問題を解決できるけど、
そこまで同時接続数に困っている所はなかった。
クラウドのおかげで1台で処理するのではなく
何十、何百台もマシンを簡単に作れるようになったので。
0121デフォルトの名無しさん2016/01/10(日) 15:29:57.13ID:yvIOv1as
>>120
Nodeの真髄はそこではないだろう
プロセスが1つずっと立ってるということは、
別に数が何百も無くとも、
WS張って何度も通信するのにセッション管理が楽だったり
クライアント同士のコネクションが合理的という点だろう
0122デフォルトの名無しさん2016/01/10(日) 15:33:40.86ID:yvIOv1as
>>114
コメント書けるというより、コメントアウトの方が重要かもしれない
あとシングルクォーテーションを許可してくれたら使いやすくなるのにね
0123デフォルトの名無しさん2016/01/10(日) 17:26:40.25ID:xDkMqJGn
>>121
そういうのはフレームワークが解決するので
フレームワークを作る側が楽かもしれんが、
ほとんどのプログラマには関係ない。
0124デフォルトの名無しさん2016/01/10(日) 17:27:43.36ID:xDkMqJGn
結局、一部の人が喜ぶ技術は、
それがとてもすごい技術であったとしても
役に立つ人は少ないわけで。
0125デフォルトの名無しさん2016/01/10(日) 17:46:26.11ID:/SSbvq4O
GUIで非同期の技術を使うのはいいけど
他の場所でも同じやり方が通用するはずだというのは技術じゃなくて思想だよね
地球市民みたいな
0126デフォルトの名無しさん2016/01/10(日) 23:56:38.40ID:/2nnPZOa
>>113
JSON5が標準になってほしいよ
0127デフォルトの名無しさん2016/01/11(月) 00:30:34.66ID:59+0WYwJ
クラウドのVMでNode.jsなんて意識高い構成より、
ベアメタルでPHP(フレームワーク無し)とか意識低い方が速いよね
0128デフォルトの名無しさん2016/01/11(月) 12:49:40.68ID:1kIHdNx9
スッキリわかるJAVA、Rubyは相変わらず安定して強いな
しかしまあ昨今のPythonの進撃ぶりにも関わらず日本では何故か人気がない
これも国産言語Rubyの存在が関係してるのかな
http://i.imgur.com/zGRs7CC.jpg
0129デフォルトの名無しさん2016/01/11(月) 12:50:48.75ID:grtS6L7L
>>128
日本でPythonが人気ないのは、JavaScriptが普及してるからですよ。
Rubyは論外。一部のオタッキーが使ってるだけ。
0130デフォルトの名無しさん2016/01/11(月) 12:55:44.30ID:59+0WYwJ
Pythonは、xlwtでExcel書き出したりPDF出力させたり、
ダラ長くなるの書くのにいいから使ってるよ
なぜかあんまり見づらくならない
0131デフォルトの名無しさん2016/01/11(月) 20:53:58.32ID:3FXDlZz7
>>129
海外でもJavascriptは普及してるけど
Pythonも人気だから、その理屈はおかしい
0132デフォルトの名無しさん2016/01/11(月) 22:11:37.32ID:y7yyQ/fC
Pythonは仕事がない
海外からITの仕事がもらえれば、需要が生まれるはずなんだけどね
仕方がない
0133デフォルトの名無しさん2016/01/12(火) 06:52:08.90ID:NzXAV9Z/
Rubyに比べるとPython使いってあんまりPythonに固執しないしな
言語を道具としか見てない傾向があるように思う
0134デフォルトの名無しさん2016/01/12(火) 07:27:03.52ID:9eUapNls
学術方面やサイバーセキュリティ方面ではPythonさん大活躍!
0135デフォルトの名無しさん2016/01/12(火) 09:04:35.31ID:ZXe+fB4P
>>131
おかしくない。

普及してる中身が違う。なんで、日本Pythonが普及しないか?普及していないから
ドキュメントが薄いって事。それとJavaScriptが既に普及していたから、Pythonの入
る隙がなかった。

海外で普及してるって?ここは日本だ。海外の事情なんて関係ない。君のその視点
はグローバル気取りなのは結構だが、思い込みの結果おもいっきり外し倒してるよ。
非常にマズイ思考パターンだね。

海外で普及してる = 日本でも普及していて当たり前ってのは通用しない。こんなの
みんな知ってる事だと思ったが?
0136デフォルトの名無しさん2016/01/12(火) 09:53:55.75ID:X06mclMe
日本でPythonがイマイチ普及してないのは真面目にRubyの所為だと思う

Javascriptとか言ってるアホは普段ちょっとしたスクリプトを書く
みたいな発想が無いドカタ
0137デフォルトの名無しさん2016/01/12(火) 09:57:02.80ID:X06mclMe
Nodeみたいな普段使いのスクリプト書くのに向かない道具で
RubyやPythonの代わりになると思ってるなら滑稽すぎる。まさにドカタの発想だね
それともブラウザ使ってるとでも言うのかな?w
0138デフォルトの名無しさん2016/01/12(火) 12:21:38.58ID:e9M6aAal
普段ちょっとしたロジックを書くのは…
VB.NETだわ、
ExcelからコピペってDBに突っ込みたいとか
うわっ わたしの意識 低すぎ?
0139デフォルトの名無しさん2016/01/12(火) 13:37:32.35ID:ZXe+fB4P
>>136
>>137
そういうのスクリプトなんか使わんよ。お前らサンデープログラマじゃあるまいしw
0140デフォルトの名無しさん2016/01/12(火) 16:44:36.08ID:Z6dmB55y
>>139
じゃあ何使ってるの?
まさか、ちょろっとコード書けば済むような事に手作業で何時間もかけてるの?
0141デフォルトの名無しさん2016/01/12(火) 19:46:11.71ID:N+8Fkzyr
nodeそんなに使えないかな。バッチに。
結構使ってるけど。
俺バッチ.jsがどんどん伸びる。
0142デフォルトの名無しさん2016/01/12(火) 20:44:41.88ID:X5nF9hIj
jsがダメとは言わないが、まずはスタンドアロンなスクリプト言語を一つ覚えたら?
jsからならPythonがとっつきやすくて役割分担もできると思う
0143デフォルトの名無しさん2016/01/12(火) 21:59:31.43ID:N+8Fkzyr
>>142
スタンドアロンなスクリプトってなんだろ。
デフォルトで入ってるレベルのスクリプトって事かな?
pythonもperlも使えるけど、ちょっと込み入ってきて来たらjsかなぁ。
0144デフォルトの名無しさん2016/01/12(火) 22:19:06.41ID:nx2pQ13P
ディレクトリにgzip圧縮されたテキストファイルが沢山あって(part-00000.gz 〜 part-00099.gz)、
その中から特定の単語(foobar)を含む行の行数を数えるコードを書いてみてよ
0145デフォルトの名無しさん2016/01/12(火) 23:40:46.71ID:e9M6aAal
それはシェルスクリプトで回して、tar | grep | wc じゃないの
0146デフォルトの名無しさん2016/01/13(水) 00:20:36.19ID:+fh2c8m4
この場合はzgrepでイッパツよ

def zgrep(pattern, filename)
require 'zlib'
Dir.glob(filename).map {|f| Zlib::GzipReader.open(f).grep(pattern) {|s| f + ':' + s}}
end
puts `zgrep "foo" part-0000*.gz | wc -l`
puts zgrep(/foo/, 'part-0000*.gz').flatten.count
0147デフォルトの名無しさん2016/01/13(水) 01:31:35.08ID:XS8ewNNM
>>144
zgrep foobar * | wc -l

シェルスクリプト最強やなまじw
0148デフォルトの名無しさん2016/01/13(水) 02:18:27.33ID:ybjumHFf
>>147
xargs使わないとファイル数次第で悲しいことになるな。
0149デフォルトの名無しさん2016/01/13(水) 07:19:20.38ID:zrV/dEcK
unixコマンド最強
windowsはゴミ
0150デフォルトの名無しさん2016/01/13(水) 08:41:56.19ID:H1RrMaU6
>>141
俺はnode.js使ってるね。非常に便利。
RPiでも活躍してるよ。

ウェブクライアントもサーバも、そしてハードウェア制御もJSひとつで出来るってのは
非常にアリガタイね。なので、他の言語はやる気は一切ない。そういった意味では、
Pythonは似たポジションにあるね。
0151uy ◆Qawu9.2l1E 2016/01/13(水) 15:07:44.39ID:6RjWScHI
パイソニスタならさっき道端でルビリストに土下座してるの見かけたな
何があったんだろう
0152デフォルトの名無しさん2016/01/13(水) 16:30:04.02ID:XS8ewNNM
土下座させてるのはコンビニとかと同じ
DQNルビリストでしょw
0153デフォルトの名無しさん2016/01/13(水) 16:46:34.09ID:H1RrMaU6
>>151
へぇ、Python使いってそんなチンピラみたいなことするんだね。
軽く引きました。

素直に従ってるRuby使いもどうかと思いますが。
0154デフォルトの名無しさん2016/01/13(水) 17:16:07.87ID:XS8ewNNM
>>153
なんで逆に書いてるの?www
0155デフォルトの名無しさん2016/01/13(水) 17:23:01.52ID:5ayeVvnV
>>144みたいな場合はjavascriptでどうすんの?
どうにもできないの?
それとも苦労してなんとかするの?
0156デフォルトの名無しさん2016/01/13(水) 18:36:32.24ID:PPa/6pNx
>>155
jsでどこ作るかじゃないの?
xargs zgrep wcがインストールされてるなら、作るだけ無駄だけど。
そもそも、全部を一つのスクリプトで書くほうがナンセンスじゃない?
0157デフォルトの名無しさん2016/01/13(水) 19:13:14.16ID:cfSOC1GO
こんな簡単な問題すらアッサリ書けないとか
どんだけ汎用性無いんだよ
0158デフォルトの名無しさん2016/01/13(水) 19:22:51.81ID:69fUgg/c
> xargs zgrep wc

んなもん無くても数行でなんとかんるやろフツーのLLならw
書く書かないは別にして「サックリ書ける」ことは大事
0159デフォルトの名無しさん2016/01/13(水) 19:27:59.04ID:XS8ewNNM
> んなもん無くても数行でなんとかんるやろフツーのLLならw

LLならgzipの展開アルゴリズムを数行でかけるって?
見てみたいもんだがw
0160デフォルトの名無しさん2016/01/13(水) 19:29:44.64ID:69fUgg/c
ライブラリ放棄人間キタコレw
0161デフォルトの名無しさん2016/01/13(水) 19:31:47.18ID:XS8ewNNM
>>160
あ?そういうこと?

じゃあコマンドを呼び出せば簡単にできるよねw
0162デフォルトの名無しさん2016/01/13(水) 19:32:43.20ID:PPa/6pNx
>>157
>>158
ドザなのかな。
サックリ書けるだろうけど、
単機能に押さえるのはcliツールでは基本では?
あるバージョンからgzじゃなくなってしまいました、ってしまった時、わざわざバッチ全部直すのかな。
0163デフォルトの名無しさん2016/01/13(水) 19:34:20.57ID:69fUgg/c
コマンドは放棄しないんだなw
0164デフォルトの名無しさん2016/01/13(水) 19:37:11.26ID:cfSOC1GO
ちょっと計算してみた後、数値を見て
やっぱり各行あたり単語が平均で何個含まれてるかも
確認したいってなったらどうすんの?
0165デフォルトの名無しさん2016/01/13(水) 19:39:08.26ID:cfSOC1GO
そんで、平均値だと外れ値の影響が大きいから
やっぱり中央値にしよう、とかになったら?
0166デフォルトの名無しさん2016/01/13(水) 20:10:28.52ID:XS8ewNNM
>>163
論点がわからないね。

gzipを扱うライブラリはあるんですか?って
聞いてるの?

答えはある。で終わりだけど。
0167デフォルトの名無しさん2016/01/13(水) 20:11:24.71ID:XS8ewNNM
>>164
全部ライブラリがやってくれるよw
0168デフォルトの名無しさん2016/01/13(水) 20:30:07.29ID:tA2YHtfi
普段からjsでコード書いてるってのはウソで、実は書けないんだね
0169デフォルトの名無しさん2016/01/13(水) 20:33:38.95ID:XS8ewNNM
書けない奴がjs使いのふりをしている。
0170デフォルトの名無しさん2016/01/13(水) 20:43:14.83ID:tA2YHtfi
>>169
お前が書けば良いじゃん
0171デフォルトの名無しさん2016/01/13(水) 20:48:02.80ID:XS8ewNNM
>>170
やだよ。面倒くさい。俺はjs使いのフリしてるだけだしw

gzipのライブラリだったら俺がgoogleを駆使して調べてきた。
https://nodejs.org/api/zlib.html
0172デフォルトの名無しさん2016/01/13(水) 21:01:21.32ID:tA2YHtfi
>>171
ググって調べたとか言ってる時点で普段から使ってないのは分かるわ

で?お前は何か書けるわけ?
コード書けない雑魚はお呼びじゃないんだけど
0173デフォルトの名無しさん2016/01/13(水) 21:13:34.42ID:XS8ewNNM
コードなんてどの言語も調べれば書けるだろw
0174デフォルトの名無しさん2016/01/13(水) 21:15:23.80ID:XS8ewNNM
>>172
> ググって調べたとか言ってる時点で普段から使ってないのは分かるわ

ググって調べたとか言ってる "時点" は >>171の下から二行目なんだが、
言ってる時点までわからなかったのねw
0175デフォルトの名無しさん2016/01/13(水) 23:36:42.59ID:cfSOC1GO
LL書けないのにLLスレに一日中張り付いて書き込む心理が分からん。キモい
0176デフォルトの名無しさん2016/01/14(木) 00:02:59.26ID:rGVGuFCG
もっとさあ、俺たちのimgurであるpastebinとかにどんどん貼っていくべきだと思うんだよ
0177デフォルトの名無しさん2016/01/14(木) 02:38:53.10ID:c08+QZGE
飯田市っぺどうぞw
0178デフォルトの名無しさん2016/01/14(木) 08:19:11.25ID:WOGnRTgE
>>173
営業モドキのSEが言いそう
0179デフォルトの名無しさん2016/01/14(木) 08:20:01.78ID:7l6s1ZZT
>>155
Nodeだったら標準でAPIが提供されてるからそれ使う。
でも自環境だけでアレらが入ってるんだったらNodeからコマンドライン叩いてもいいかもね。
どちらにしろその後やそれ以前の処理も必要になってくるだろうし。
0180デフォルトの名無しさん2016/01/14(木) 08:28:40.94ID:vqzvqDoL
>>179
そんな文章書く暇あれば>>146みたいにコード書きゃいいのに
そのコメントより短いだろ?
0181デフォルトの名無しさん2016/01/14(木) 08:50:04.13ID:hDrEawni
swiftが色々出来るように拡張されたら楽しみなんだけれどなぁ。

オープンになったとは言え、あまり期待できない。
0182デフォルトの名無しさん2016/01/14(木) 13:31:44.73ID:M0MbBNVP
本を買ってザンプをダウンロードしたんですが
コントロールパネルのとこまでいって
最初はラーニングが点灯したんですが
続いてブラウザ開けば完了だとおもうんですが、特にそれらしきページ に起動しなかったというか、詳しくないんでなんて説明したらいいかわかんないですけど
一旦パソコンをシャットアウトして違う日にでもやろうとおもい、再度コントロールパネルを開いたら次はラーニングが点灯しなくなっちゃうですが
なにが原因かわかりますか?もっと簡単な方法とかありますか?
スカイプはWindows8.1で最初からあるんですが、使ったことないし、最初はラーニング点灯したので原因じゃないと思います
元々2012年ぐらいの本を買ってそのURLをみてダウンロードしたので8.1に対応してないとかありますか?
1回いまあるやつ消して、違うところからPHPの環境を作るしかないですか?

よろしくお願いします。
0183デフォルトの名無しさん2016/01/14(木) 13:46:29.73ID:xzIk6tB1
>>182
申し訳無いけどこのスレでは力になれないかも知れません
とりあえず購入した本・ダウンロードしたURL・購入の目的
を教えて下さい
0184デフォルトの名無しさん2016/01/14(木) 14:34:31.15ID:2ouTkCZ/
>>180
> そのコメントより短いだろ?
短いだろうけど調べるのが面倒。
0185デフォルトの名無しさん2016/01/14(木) 15:15:39.30ID:rGVGuFCG
これは…キビしい…
0186デフォルトの名無しさん2016/01/14(木) 18:11:23.83ID:njpsE9Qb
>>180
そいつにレスつけても無益よw
引き出せる情報は何もない様子
0187デフォルトの名無しさん2016/01/14(木) 18:15:58.15ID:nCIdsoCO
コードが短ければ、すぐに書けるって思ってる人って
コードの量で生産性を判断してそうだよねw
俺はスーパープログラマだから2日で5000行書けるぜwwwみたいな。
0188デフォルトの名無しさん2016/01/14(木) 20:58:18.25ID:eXxYoULc
多くのドカタは目的の達成ではなく労働力の提供を請け負ってるんだから
コードの量で生産性を測るのは正しいよ
0189デフォルトの名無しさん2016/01/14(木) 21:37:38.01ID:k7uhz6V7
>>187-188
お前ら、>>146を書く書かないで
よく其処まで話を大きく出来るなw
0190デフォルトの名無しさん2016/01/14(木) 21:45:16.20ID:wdzz2Qmv
俺らなら気まぐれに数行で書いちゃうところだけど
>>187-188にとっちゃあ大袈裟な大プロジェクトなんよw
0191デフォルトの名無しさん2016/01/14(木) 22:27:26.05ID:xDbKeDDD
このスレの奴らはコードなんてどの言語も調べたら書けるってマジ?
Pythonですら初見で挑むととんでもコード量産する自信あるわ
おまえらすごいんだな
0192デフォルトの名無しさん2016/01/14(木) 22:35:31.66ID:3LHP2IIp
>>191
そんな事書いてるの>>173だけだし、そいつはコード書けずに逃げたヤツだぞ
0193デフォルトの名無しさん2016/01/14(木) 22:38:37.40ID:Y9nyomTy
>>180
自分は趣味プログラマで
何ができるかということは知ってるし、それで満足してて
実際gzipを扱うような場面に遭遇したこともコードも書いたことがない
従ってリファレンスを調べないといけないので、
それはすでに自分の頭にある論を出すより面倒
残念だけど今のところやる気の閾値を超える気配はない

>>186
自分は上で言い争ってる人とは違う第三者ですよ
0194デフォルトの名無しさん2016/01/14(木) 23:08:18.01ID:DYesNHXm
ユイって消される前にキリトによってオブジェクト化されたけど
いつになったらインスタンス化されるの?
0195デフォルトの名無しさん2016/01/14(木) 23:47:01.32ID:BQdBnmZE
                     ,.- 、
                    i   ヽ. _____   。 。 。 。 。
        __       __    !    冫,:---------、゙ヽ. / / / / / ___
   / ̄~ `V ./  ,;" ̄`V '─ 、  ゛.   / /        ゙i !‘7" /__/ /_ノ ,-┐)
    ̄~7 ./ / __/ /~7 / /~7 .i.___゙、._ に二二二,ヽ   / /"二二二二 -´ ,.' /
     / / / ./ / / / / ,仁´ /   /(__)     ソ /  / / /__  __ -"/
 ____/ /ιノ / ̄__/ /-'__./ / ̄ ̄ , --゙------"ノ  (_ ''-─┐./ / ,─ "´
/___ノヘ__..ノ  /__.ノ /_ノ    / /" ̄ ̄ ̄´       ̄7 / / / /
   C O R R E C T O R / /__________/ / /_/ /
                    ゙─────;──┬─−^ー─'
                             丶. _丿
0196デフォルトの名無しさん2016/01/14(木) 23:47:35.13ID:BQdBnmZE
          /  , - "  ,:;:ニ- '  ̄            ヽ.ヽ
         i ,/    i/  /  ,.: '"         `ヽ. ゙;゛、
         !/;.. ../   |;,,,,,/ ,,,;/,,;;,      i      ヽ. ゙; ゙、
          i;;;;;/;;;;;;;;;/ ,|;;;;/;;;;;;;;/;;;;;;;;;,,,,.....,,,,,;;;;! !;;;i;,   ,;;,゙、l  ゙,
          !;;;;!;;;;;;;;/;;;;;;;l;;l;;;;;;;;;/;;;;;;;;/;;;;/;;.-'丿ノ i;;;;;;;;;;;;;;;;;;; !l  ゙,
          .!;;;|;;;;;;;l;;;;;;;;;;l.lゞ、-;|..__;;;i;;;;;/´  ノノ..-弋ー゙;;;;;;;;;; ! ゙、 ゙,
        /,;゙、;゙、;;;l;;;;;;;;;i  ,>;;=;,`ヾ;;i   ´;=;;-、゙、;!i;;;;;,ソ;, ヽ. ゙,
    _ - ─´─-:,=、ヽ;;l゙、;;;;l ヨ i .,,::|゛  ゙''   ''| .,,::i E ノ;ノヽ.;;;;,  ゛゙、
  , '´    ,,;;;;,'  ノ  ゛!iヾ;!  ゙ _! リ_.!   j    l._リ !_ '' /;;- ;;;,,` - .. __ ` -.._
 ,."   .,-''''''-、i゙ー<゙、   i  ゙,    ̄    !       ̄  /;;,.   ゙、;;;;;;;,,_....._゙ - ._ヽ
 i   (    i、  ゙、゙、_  ゙;,.:-゙-、      ,--、     /゙;;;; 、  i ,;:'´   ヽ  ヽ!  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ゙,   `一,,,,,;;;;;;゛、 (__.) /     ゛、   !  l    i(./ ノ;; ノ. 丿i;;     .!   .!. / あなたなんか、
  ヽ ! ̄ ''' -..._;;;__...゙''--...ノ゙,      ゛、.   ̄    _.ヽニ´-"'''";;;;;!;;, `''''''´  ;丿< 
   .!-...__.....- "     `''゙,.      ゙、- ..._... -.ニ7;;;;_;; -−'''7;;;;;゛、;;;;;;;;;;;;;;;;;/  \ ゴミ箱ぽいぽいのぽいよ!!
    !   ,.'         ゙,      ゙,ヽ`v'/ , ' "      /_;;;;;;;;;;゙'''-,:''''´     \____________
    !  /          ゙,      .i .i_|_l_ / _...    / ゙゙ ''-::_/
    .! ,'             ゙,     .: i',::'''oヾ、';::'´   ,.'     ゛:、
    ゙、i     ,.- ニ-'''==、.゙、;:;,..,.,.,:;:; |l ::::::::. i i _....--'''' ̄`ヽ    ヽ.
0197デフォルトの名無しさん2016/01/14(木) 23:50:15.00ID:DYesNHXm
>>195
それ違う
アスナが待ってるんだよ
0198デフォルトの名無しさん2016/01/15(金) 11:37:53.41ID:PRBbI8GX
>>182
ラーニングが点灯する場合は勉強しろってことだよ!
0199デフォルトの名無しさん2016/01/15(金) 12:01:29.97ID:aLopFAFO
PHPの7.0、みんな使ってる?
PHP Tools for VSがまだ対応してないんでおれ使えないんだけどね
0200デフォルトの名無しさん2016/01/15(金) 12:31:46.49ID:ZkunXCoV
ぶっちゃけ、ちょっと稼ぐ程度なら
速さとかどれだけ書けるかとかじゃなくね?
普通に掲示板サイト作ってアフィリ貼るだけで結構小遣い稼ぎになるんじゃないの?やりようによっては

こんな2ちゃんサイトで暇をもて余してる君らがそれ以上のことで稼いでるとかどっちみち思えないんだよね口ばっかで
0201デフォルトの名無しさん2016/01/15(金) 12:37:22.00ID:ZmNXMmam
ここに来る理由はみんな同じ
口ばっかの悪いやつを懲らしめるためだよね
0202デフォルトの名無しさん2016/01/15(金) 13:08:12.32ID:bARE8Ecx
pythonに型チェック可能にしたような言語ってないだろか
Numpyが便利すぎてpython辞められない
0203デフォルトの名無しさん2016/01/15(金) 15:45:41.25ID:aLopFAFO
>>200
いやみんながみんなまとめサイト作ってるわけは無いやろ…
0204デフォルトの名無しさん2016/01/15(金) 16:22:17.59ID:ZmNXMmam
そもそも0と1しかないデジタルの話をしてるのか
それとも例えば1億とか10億とかいうアナログっぽい数字の話をしてるのか
それが問題だ
0205デフォルトの名無しさん2016/01/15(金) 17:39:23.22ID:1e0EqlVW
>>204
0と1だよ。
ただし自分の都合に合わせて0.1を1と言ったり、0.9を0と言ったりする。
0206デフォルトの名無しさん2016/01/15(金) 22:27:16.66ID:cH6wRGGW
>>202
numpy使ってるならJuliaじゃね
Fortran臭くて俺は好きじゃないが
0207デフォルトの名無しさん2016/01/15(金) 22:42:51.57ID:3J5F25K4
       _,...=.-、
    ,.-:::::::::::::::;::'::::ヽ、
  r':::::::::::::::::_;:-‐'ヾ、::ヾ
 .イ:::::::::::::;r'´     ヽ::!
 i'::::::::::::::::i     .r,ニ_ヾ
. i:::::::::::::::::::l_,. -、  :'ィナ' l
. ヽ::::::::::::;ノ rィテ-'      .l
  Tー、!   ´   ,.   ; 、 l_
   .>(ヽ      .‐ ´ ,ィ l::`:::::::::‐--
 ,r::::::::::ヽヽr ー_- 、-‐ニ.' ./::::::::::::::::::::::
./:::::::::::::;ri'ヲ--、 `く _, '!:::::::::::::::::::::::
i::::::::::::::::!  ,r ‐、 ▽   .;l::::::::::::::::::::::::
l::::::::::::::::l    7´ト、. __〃!:::::::::::::::::::::::
.〉:::::::::::::;!    /:::::i `  ̄ l::::::::::::::::::::::::

    ジュリア・クリステヴァ
       (1941 〜 )
0208デフォルトの名無しさん2016/01/16(土) 00:19:16.54ID:K/MSkPpy
>>1
RPGツクール2000 , RPGツクールMV https://tkool.jp/mv/ ( JavaScript 採用 )

WOLF RPGエディター http://www.silversecond.com/WolfRPGEditor/

デュエル・マスターズ Android版 ,i-OS版、公式 http://dm.takaratomy.co.jp/extra/dmapp/entrygate_ds/
デュエル・マスターズ対戦CGI ex
https://web.archive.org/web/20150809154946/http://www53.atwiki.jp/dmsuishinparty/pages/314.html

デュエル・マスターズ(デュエマ)DM ONLINE 1.8a  /  VanGuard ONLINE 1.5a
https://web.archive.org/web/20150809160254/http://uhyohyohyo.sak ura.ne.jp/hsp.html

ヴァンガード専用ネット対戦ツール【 VanGuard Online 】
https://web.archive.org/web/20150809155032/http://kiimaa.jugem.jp/?eid=61

「カードファイト!!ヴァンガード」のネット対戦ができる公式オンラインゲーム「Cardfight!! Online」 2015年冬スタート
https://web.archive.org/web/20150809153724/http://supersolenoid.blog63.fc2.com/blog-entry-6886.html

遊戯王 Automatic Dueling System
https://web.archive.org/web/20150809164855/http://www3.atwiki.jp/ads-wiki/pages/20.html

遊戯王 デュエル・オンライン
https://web.archive.org/web/20150809171527/http://www31.atwiki.jp/vipdo/pages/15.html
https://web.archive.org/web/20140628005202/http://do.yugioh-portal.net/

ウィクロス( WIXOSS ) WEBXOSS http://webxoss.com/about_en.html http://webxoss.com/DeckEditor/

BG(ボードゲーム)Engine https://web.archive.org/web/20151209080842/https://bgengine.net/
https://web.archive.org/web/20151209172205/http://14owl.hateblo.jp/entry/2015/12/09/011234

アプレンティス  マジック:ザ・ギャザリング(MtG)オンライン化 http://homepage1.nifty.com/Q_Q/ap.html
https://web.archive.org/web/20151202202725/http://homepage1.nifty.com/Q_Q/ap.html
0209デフォルトの名無しさん2016/01/16(土) 00:20:22.47ID:K/MSkPpy
【 オンラインTCGエディター 】   >>1,>>208

デュエル・マスターズ的な非電源TCGの 《 オンライン化ツクール系ソフト 》 制作の企画。

例えば、ガチンコ・ジャッジを直ぐにでも導入できる機能を持っておりながら、
当面それを扱わず単純化させておいて、事後的に導入拡張する際に当該システムを
ブロック構造の組み合わせで後付け挿入できるように予めシステム化してあるソフト(エディター)。
既存の非電源TCGを劣らずに再現できるならば大概のニーズに応えられる筈。
デュエマ、ヴァンガ、ウィクロス、ポケカ、デジモン、ゼクス、モンコレ、旧ガンダム・ウォー、ライブオン、ディメンション・ゼロ、シャーマン・キング、カードヒーローなど
のシステムを完全再現できるように設計するけど、他に此のTCGの此のシステムは再現希望とか有ったら書け。
マジック:ザ・ギャザリングの全システムを完全に再現するのは無理だから、此れだけは必用だ!って部分のみリクエストしろ。
個vs個、多数乱戦、チームvsチーム、個vsチームを実現し、P2P通信対戦プラグイン有り。

設計思想は 《 RPGツクール 》 が良いかな?  他に、優れたエディター有ったら挙げてみろ。

個人や企業などのベンダーが提示する開発費(見積もり)で折り合えば、発注する。
↓
エディター群から基本コンセプトを絞り込む(もちろんオリジナルで優れた新ネタが有れば導入する)。
↓
遊戯王OCGに関しては、タッグフォース、ADS、デュエルオンラインを発注先ベンダーに研究させる。
バトスピ、ヴァンガ、デュエマなど発売済みゲームソフトが存在してるTCGはベンダーに研究させる。
↓
各社TCGを再現するテストプレイ ⇒ 更に改良や修正 + コード記述の仕様書(設計書)を作成。
↓
機能制限した下位版を制作しても原則として発売せず + 上位版デュエリ−グ用でサーバー稼動。
↑
下位版を仮に発売した場合の改造および商用利用には、別途で当社との契約が必要。

さ〜て、インド人ベンダーと日本人の翻訳担当SEを見つけよっと!ww
http://wc2014.2ch.net/test/read.cgi/entrance2/1451262577/-16
0210デフォルトの名無しさん2016/01/16(土) 20:49:03.52ID:mv0cs2FW
>>206
たしかになんかフォートラン臭いな…
でも正に求めていた物だわこれ
ありがとうございます
0211デフォルトの名無しさん2016/01/16(土) 23:26:12.98ID:Tf5G49Uh
ITドカタをやめて華麗なるweb業界に転職したいのですが
どの言語を覚えるのがオススメですか?
0212デフォルトの名無しさん2016/01/16(土) 23:36:34.34ID:+XJjTYz9
PHP
0213デフォルトの名無しさん2016/01/17(日) 01:34:42.38ID:zq5NkK7o
PHPはVisualStudioで開発、デバッグ出来る(有料)
のでドカタにもオススメ
0214デフォルトの名無しさん2016/01/17(日) 10:00:30.02ID:t9EsJdZC
Generative Design ―Processingで切り拓く、デザインの新たな地平(仮)
https://www.amazon.co.jp/dp/4802510136/ref=cm_sw_r_cp_awd_NbMMwbW2MKY2M

そして俺は芸術に走った...
0215デフォルトの名無しさん2016/01/17(日) 11:52:09.65ID:Qk035b6Y
ユーザの大半を痛い信者が占めてる言語は止めとけ
Sから始まる言語とか
0216デフォルトの名無しさん2016/01/17(日) 12:11:55.62ID:zq5NkK7o
稼働数で言えばJavaScript最強やし
書かれたステップ数ならPHPかのう

信者用言語はポイーでいいよな
0217デフォルトの名無しさん2016/01/17(日) 12:34:14.15ID:8TKcXYcp
>>215
s, s, scala?, scheme?
0218デフォルトの名無しさん2016/01/17(日) 12:53:52.25ID:mz4dPpjI
SQL? r で ruby ってんならわかるんだが
0219デフォルトの名無しさん2016/01/17(日) 13:08:11.66ID:UWpoaTz9
あれだろオブジェクト志向のあれ
0220デフォルトの名無しさん2016/01/17(日) 13:23:36.93ID:xjrmhcOR
si-purapuraじゃね?
0221デフォルトの名無しさん2016/01/17(日) 13:24:09.50ID:zq5NkK7o
SQLというかデータベース設計も大事よね
某製品をシリアル番号ごとに管理してるテーブルが有って
修理入庫日付/検査日付/返送日付/廃棄日付
とか列持ちのdateがもりもり有ってNULLだらけ
それは製品ID/日付タイプ列挙型/日時/関連オーダー番号 とかにすべきやろ…
0222デフォルトの名無しさん2016/01/17(日) 13:25:31.91ID:xjrmhcOR
マスタとトランザクションは分けろってやつね
0223デフォルトの名無しさん2016/01/17(日) 13:32:54.79ID:xjrmhcOR
でどっかのバカプログラマがINNER JOINしてハマるのもお約束
0224デフォルトの名無しさん2016/01/17(日) 13:56:29.60ID:zq5NkK7o
「JOINしたら行がどんどん増えるんですけど?!」
わかる
実際に居た
0225デフォルトの名無しさん2016/01/17(日) 14:08:07.75ID:Tm1vTqdo
やらんでもいい抽象化してJOINの嵐になるってのもありがちだね。
若いときに一度はかかるはしかのようなものだけど。
0226デフォルトの名無しさん2016/01/17(日) 14:17:56.24ID:xjrmhcOR
それは抽象化じゃなくて正規化だな
0227デフォルトの名無しさん2016/01/17(日) 14:21:08.32ID:pPwIq9f1
女淫ってなんかエロいよな
0228デフォルトの名無しさん2016/01/17(日) 14:31:52.47ID:Tm1vTqdo
いや、正規化じゃなくて>>221みたいなのの話ね。
正規化は正規形になればそこでおしまいだけど、抽象化は行き過ぎると
俗に言う森羅万象テーブルになってしまう。
0229デフォルトの名無しさん2016/01/17(日) 14:44:26.10ID:8Q3yjRnk
>>214
Processingっていいよねえ
右脳がもりもり刺激されて創造的なプログラミングの訓練にもなるしさ
0230デフォルトの名無しさん2016/01/17(日) 15:20:15.44ID:6oiqScYX
今時のクリエイティブプログラミングはLEDとかモーターとかセンサーとか使って
現実にモノ作っちゃうもんでしょ
Processing(笑)
0231デフォルトの名無しさん2016/01/17(日) 15:22:58.10ID:xjrmhcOR
理論派は実践派をバカにし、実践派は理論派をバカにする
いつもの構図だね
0232デフォルトの名無しさん2016/01/17(日) 15:43:36.79ID:B0dK5BN7
>>231
もっと正確に言うとそのどっちでもないニワカが
場合によってそれぞれの立場を装い分けてノイズを撒き散らしてるのがここ
0233デフォルトの名無しさん2016/01/17(日) 16:34:11.86ID:po5BkGJ7
理論的に言うと先に攻撃した方が悪で反撃は正当防衛だろ
どっちもどっちとかいう奴には理論が足りない
0234デフォルトの名無しさん2016/01/17(日) 19:01:26.09ID:t9EsJdZC
『理論』と『実践』は車の両輪という考え方が身についてないのかこいつら
0235デフォルトの名無しさん2016/01/17(日) 23:24:32.79ID:rESzFP8u
ちょっと違うと思う。
道具の扱い方を語る職人と、道具そのものを愛するマニアの差だろう。
0236デフォルトの名無しさん2016/01/17(日) 23:56:57.74ID:VemjrG46
実際コード書いてる人は意外と少ないな?って感じだね
>>144に対する反応とか見てるとね
0237デフォルトの名無しさん2016/01/18(月) 00:29:02.95ID:fWgtaTDg
あ、まだ引っ張る気だw
0238デフォルトの名無しさん2016/01/18(月) 00:34:53.24ID:W/hVKzwo
こんな所でコード書くなんて面倒だし
0239デフォルトの名無しさん2016/01/18(月) 00:41:28.57ID:L7UVOaGN
>>238
もおええわw
そういうレス自体が不要なのw
0240デフォルトの名無しさん2016/01/18(月) 02:17:19.24ID:fWgtaTDg
>>239のレスは必要だ。
絶対だ。絶対だぞ。
0241デフォルトの名無しさん2016/01/18(月) 15:23:18.15ID:2N9raBu/
>>144
https://ideone.com/Ag8BuP
ドキュメント見ながら書いてみた

Syncメソッド繋げれば短く書けるだろうけど
やっぱり面倒
0242デフォルトの名無しさん2016/01/18(月) 16:54:03.42ID:fWgtaTDg
>>241
逆にsync使わないほうが良いよ。
関数型言語風に書くのが良い。

A. gzipにマッチするファイル名の配列を返すフィルタ関数
B. 与えられたファイル名から、ファイル一覧の配列を返す関数
C. ファイル一覧からfoobarを含むファイル名の配列を返すフィルタ関数

それを連結させて console.log(hoge('./').A().B().C().length) みたいに
するのが一番きれい。非同期で動くから早くなるし。
0243デフォルトの名無しさん2016/01/18(月) 16:58:50.81ID:fWgtaTDg
>>146もそうなってるよね?
まず発想の第一歩として、forEachを使うのがよくなかった。
こういうのはmapとかglobとか、リストを返す関数を使って処理するのが良い。
02441552016/01/18(月) 17:39:44.55ID:8cB0kTiR
>>241
おつ!
Node.jsでのコード初めて目にしたんで大変興味深い
javascriptでもそういう用途のコード書けるんだね
0245デフォルトの名無しさん2016/01/18(月) 18:30:06.67ID:fWgtaTDg
>>244
コード自体はあまりnode風とはいえないから注意してね。
0246デフォルトの名無しさん2016/01/18(月) 19:05:58.57ID:0yubRvnZ
JavaScriptでもって……関係ないでしょ……
APIが用意されていればBASICだろうが出来るよ……
コードは十分Node風
非同期処理がPromiseやObservableみたいな抽象体で提供されず
小洒落た感じを気取ったonメソッドと無骨な素コールバックベースで
古臭くやりくりしてるのとかまさにNodeといった感じ
もうね、腐ってるのよ
アップデートをサボってio.jsが出て来たりしたけど
5年前は先端だったコールバックベースも滞留しすぎて淀んできてる
ホント早くなんとかしてもらいたいね
0247デフォルトの名無しさん2016/01/18(月) 20:01:47.45ID:SmGhDu+P
>>242
そこまで文章書くくらいなら、普通はコード書いた方が早いんだけどね
口だけで実際に動くコード書けない人は哀れだね
0248デフォルトの名無しさん2016/01/18(月) 20:42:22.90ID:fWgtaTDg
> そこまで文章書くくらいなら、普通はコード書いた方が早いんだけどね
だから時間がかかるのは調べることにだって。

調べないでかける文章書くほうが圧倒的に速いわw
0249デフォルトの名無しさん2016/01/18(月) 20:46:40.20ID:fWgtaTDg
>>246
bluebirdのpromisifyを使えよ
0250デフォルトの名無しさん2016/01/18(月) 21:13:09.27ID:QwgslPiq
>>248
そこは颯爽とコードで示してほしかったw
なお、これに対するレスは不要
0251デフォルトの名無しさん2016/01/18(月) 21:23:55.11ID:9X0glh6l
一方的に言い放っておいて言い返すなとかすげえな
なお、これに対するレスは不要
0252デフォルトの名無しさん2016/01/18(月) 21:36:00.22ID:zWj3HeVi
コード書けないカスに発言権なんて無いよね
なお、これに対するレスは不要
0253デフォルトの名無しさん2016/01/18(月) 22:28:41.65ID:fWgtaTDg
>>250
お前が言っていることが明らかに間違いなんだから
言い返すわw


なお、お前は言い返すなw
0254デフォルトの名無しさん2016/01/18(月) 22:54:23.84ID:lTkDzqDP
必死で逃げ回る姿ワロスw
0255デフォルトの名無しさん2016/01/19(火) 01:04:34.95ID:gtK8kE1W
https://ideone.com/Pc6zbs
結局Node風がどんなものか良く分からなかった
非同期を勧められたので再実装

エラーガン無視な上にバージョンも考慮してないが
0256デフォルトの名無しさん2016/01/19(火) 01:51:17.86ID:lFJIU7vI
エラーは実はPromiseを使うと簡単にかける。
promisifyを使うと簡単にPromise化ができる。
0257デフォルトの名無しさん2016/01/19(火) 02:08:03.64ID:lFJIU7vI
Promiseはbluebirdを使うと便利
http://bluebirdjs.com/docs/api-reference.html

で、俺が言いたかった非同期っていうのは、
zipの処理を並列して行うって意味だったんだけどね。
Promise.mapを使って。
0258デフォルトの名無しさん2016/01/19(火) 02:31:26.47ID:ctwN/4mt
テキトーなブログ記事を流し読みして
受け売りのキーワード並べたレベルの書き込みを続けても
コード書けないのは誤魔化せないんだよなぁ...
0259デフォルトの名無しさん2016/01/19(火) 02:34:04.76ID:lFJIU7vI
>>258
書いてる奴がいるから十分だろw
0260デフォルトの名無しさん2016/01/19(火) 08:59:39.27ID:ydv3yao4
>>257
並列処理に関してはどちらかと言うと、APIの方がサポート、バックアップすべきことだと思う。
単純なサンプルを挙げるのに考慮するほどのこととも思えないし。
効率のよい手軽な並列処理という分野に関してJSは発展途上だしね。

まあPromise自体もまだ発展途上だけどね。
今まさにECMAコミュで議論されてるけど、キャンセル出来るようにするかとか、
プロミスチェーンに対するエラーハンドラ定義できるようにすべきかとか議論されてる。
でもだからといって標準を差し置いて、非標準に依存することの問題もある。

>>258
コード書けないというのは、趣味プログラマでコード日常的に書かない人にとっては何の煽りにもならないよ
0261デフォルトの名無しさん2016/01/19(火) 09:30:30.88ID:uzOB9/BT
>>260
コードは日常的に書かないのに
こんなスレには日常的に書き込むとか
終わってんじゃねーかw
0262デフォルトの名無しさん2016/01/19(火) 09:46:03.64ID:8CVITAmX
自分はそうは思わないね。
言語や技術自体の方に興味があってもおかしいとは思わないし、
本当に実用的な話であるなら、バトルするまでもなく、今の現実が正解を語っている。
そうではなく、夢や信条を語るからバトル出来るわけで、
それには常日頃からコードを書いてる必要性なんて無いと思うね。
0263デフォルトの名無しさん2016/01/19(火) 12:08:30.79ID:lFJIU7vI
>>260
俺がPromiseって言ってるのは並列処理というよりか、Promiseを
使ったほうがコードがよりシンプルに記述できるからだけどね。

言わなくても知ってるだろうけど、コールバックだと
しっかりエラー処理をやろうとするとめんどくさくなる。

だけどPromiseを使うとネストせずにエラー処理用のコードを最後に付け足すだけで記述できる。
(補足するとBluebirdならエラー処理を書かなくても、しっかりと例外表示して落ちてくれる)

nodeができるよりも先にPromiseが標準化されて、nodeのコールバック使う
関数全てがPromiseオブジェクトを返していたらもっと簡単になったのにね。
今はpromisifyを使って変換するしか無いね。簡単にできるとはいえ残念だ。
0264デフォルトの名無しさん2016/01/19(火) 13:22:41.81ID:hKwHZ0io
>>261
多分、コード書いてる行数より、2chで落書きしてる行数のほうが多いと思うよ。
0265デフォルトの名無しさん2016/01/19(火) 14:20:24.40ID:7OIPGD+F
Magnum.JS ってどうなのよ
クッソ速いらしいけど
0266uy ◆Qawu9.2l1E 2016/01/19(火) 17:05:57.53ID:NUykG/ue
本職であるという事が最後のアイデンティティな奴おる?w
0267デフォルトの名無しさん2016/01/19(火) 19:06:44.23ID:H86sLXxL
>>263
Nodeは最初Promiseベースだった
でもパフォーマンス等様々な点で、標準で提供されるものはシンプルであるべきということで
コールバックベースに変わった
0268デフォルトの名無しさん2016/01/19(火) 21:44:23.26ID:n7YAZoBS
>>267
いつの話?

version 0.1.13, 2009.09.30
https://web.archive.org/web/20091004235836/http://nodejs.org/api.html
0269デフォルトの名無しさん2016/01/19(火) 22:39:25.63ID:vRb9vrlx
>>268
まさにその時の話
そのページでPromiseって検索してご覧
0270デフォルトの名無しさん2016/01/19(火) 23:35:26.71ID:n7YAZoBS
>>269
Promiseじゃないじゃん。
0271デフォルトの名無しさん2016/01/19(火) 23:35:51.59ID:n7YAZoBS
まさかあれがPromiseに見えるのか?
名前が同じなだけ。
0272デフォルトの名無しさん2016/01/19(火) 23:59:30.69ID:vRb9vrlx
使われ方も同じだよ。
p.then(fn1).catch(fn2)
を
p.addCallback(fn1).addErrback(fn2)
と書いていただけだから。
まあチェーンを伸ばすとき新たに作り直されないという点では
ES6ではなくjQurey等でのPromise仕様に近いが。
0273デフォルトの名無しさん2016/01/23(土) 13:09:28.77ID:xmmbf7Yx
え、どういうこと?
プログラム書けない奴からみると、同じ事をやるメソッドでも名前が違うだけで別モノに見えちゃうってこと?
0274デフォルトの名無しさん2016/01/23(土) 18:02:26.80ID:jj9lhSZ3
まあ別物と言いたくなる気持ちは分かる。
確かにコールバックベースとの対比に挙げられるような範囲では変わりない。
が、そうでない部分はいろいろと違うということも出来る。
いろいろと違うものをどの程度までPromiseの亜種と言っていいかは難しいだろう。
0275デフォルトの名無しさん2016/01/25(月) 13:38:31.38ID:fuvhiw7q
>>214
アート界隈でのここ最近のProcessingさんの覇権ぶりがやぶぁいな(´・ω・`)
0276デフォルトの名無しさん2016/01/27(水) 08:42:06.03ID:c7fU5FA0
Processingは至高の存在
0277デフォルトの名無しさん2016/01/27(水) 15:43:23.30ID:IYaqn61n
面白い存在ではあるよね

Rubyにも、いやRubyだからこそクリエイティブコーディングを担ってほしい
0278デフォルトの名無しさん2016/01/29(金) 20:34:33.49ID:MadQdBes
JavaはエンタープライズとサーバサイドとAndroid、
CはOSや組み込みなど一番低レベルなところで絶対に必要、C++も同じ領域とあとゲーム方面、Objective-CはまあiOSとMacやね。
Python、Perl、Rubyはスクリプティング用途およびサーバサイド、PHPとJavaScriptはウェブページ、Delphi、VBは主にエンタープライズ系のアプリか。

まあどの言語もそれなりに存在意義があって使われてるな。比較的オワコン気味なのがVBとPerlあたりか。

C#の人気が上がってるのは、エンタープライズはもちろんとしてゲームエンジンのUnity(今App Store上位の3Dゲームのかなりの割合がこれ使ってる)の使用言語なのと、最近Monoが盛り上がってるからだな。

ゲームではパフォーマンスの関係でこれまでC++が唯一の選択肢だったんだが、やっぱしんどいからもうそろそろやめたほうがいいんじゃね?
少なくとも、速度の必要ない部分はもっと開発効率の高い言語で書くべきじゃね?って流れになりつつある。
その候補としてC#がやってきたわけ。他にもLuaやJavaScriptなどがあるが。
C#はC++の類似言語であることと、演算子オーバーロードがあることがポイント(演算子オーバーロードがないと3Dのベクトルや行列を操作するコードを書くのは苦しい)
MSがXNAあたりで巻いた種が発芽しつつある。当のXNAはgdgdだけどな。すでに書かれてるが、SCEも採用したよな。

>>153
> 計算屋からすると、C++までしか速度的に許されない。

最近のJavaとC#は速いよ?
IOが関与しなければ(純粋なロジックのコードなら)C++の半分くらいの速度は出る。

あと実はめちゃくちゃ遅いのがJavaScript。V8でもC++より1桁遅い。
Chromeなどが昔に比べれば相対的に速くなったから勘違いされてるけどな。
HTML5でネイティブアプリを駆逐するぜ云々の雰囲気には、おいこらちょっと待てと言いたい。
0279デフォルトの名無しさん2016/01/29(金) 20:35:54.05ID:MadQdBes
このスレ開いたやつはこれ見に来たんだろ

■伝説のPHP作者「Rasmus Lerdorf」名言集を聞くと嫌PHP厨がファビョる

・今のPHPを作ったのは、何十人もの開発者ですよ。私は1人目の開発者だったに過ぎません。

・問題を解くのが好きなだけで、プログラミングは大嫌いです。

・いかにプログラミングを避けるかを考えていたら、コードを再利用するためのツールとしてPHPができました。

・PHPは、歯ブラシみたいなものですね。毎日使うものですけど、だから何でしょう?誰が歯ブラシの本なんて読みたがります?

・パーザを書くのは苦手です。本当にダメなんです。今でもね。

・PHPには「protected属性」も「仮想メソッド」もありますよ。情報学科の教官が「重要だ」っていうやつは何でもね。僕自身は、こんなものどうでもいいと思ってますけど。

・プログラミングを好む人がいるのは知ってますが、全く理解できないですね。

・僕はホンモノのプログラマではありませんから、やっつけ仕事ですよ。ホンモノのプログラマは、「動いてるように見えるけど、メモリリークだらけじゃないか。直す必要があるかもね」なんて言うでしょう?僕なら、10リクエストごとにApacheを再起動しますね。

・いえ、メモリリークはちゃんと気をつけてますよ。でも、プログラミングってほんとクソだなと思いますね。

・プログラミング言語を作るつもりはありませんでした。どうやって作るのかも知りませんし。論理的に必要だと思われるものを足していっただけなんです。

・僕の発言に怒ってる人がいるようですね。僕がプログラマとしてひどいのは認めますけど、でも、多分あなたたちよりマシだと思いますよ(笑)。
0280デフォルトの名無しさん2016/01/29(金) 20:41:54.56ID:buwyBTyq
C#は組み込み分野では広く使われてる
業務機器や産業機器のような単価の高い組み込みの方な
0281デフォルトの名無しさん2016/01/29(金) 21:39:32.22ID:m4tQCy/9
C#だって滅茶苦茶に書けば遅いし、
JSだってCと比較するような立場でasm.jsで書けば速い
http://arewefastyet.com/#machine=28&;view=breakdown&suite=asmjs-apps
まあasm.jsは人が直接書くようなものじゃないと言われるが、
実際JSらしく書いててもちょっと最適化しようと思ってTAを使ったりしていってると
最終的にasm.jsのようになる。

まあ将来的にはstrong modeの方向性が健全だと思うが。
strong modeならそれこそC#とかそこら並になるだろう。
0282デフォルトの名無しさん2016/01/30(土) 01:37:36.24ID:NWwyNWcX
asm.js ってまったくといいほど流行ってないよね
WebAssembly だっけ?あれも大々的にアドバルーンをあげてみたはいいものの、それから音沙汰無し
0283デフォルトの名無しさん2016/01/30(土) 05:30:53.10ID:e6mXXezy
流行るも流行らないもそもそも意識して表で使うものではないから。
C++とかのコードをあまりパフォーマンスを落とさずJSに持ってくるものだからね。
そういう然るべき場では十分よく使われてる。
これを自ら手書きしようというのは変態だけ。

wasmが音沙汰無し?
なーにを言ってるんだが、今主要エンジンでは毎日のようにコミットがある、
最もホットなテクノロジーじゃないか。
まあ実装側がホットということは、殆どの一般人にとってはまだ使えない技術ということもあるけど、
こちらもasm.js同じく他言語からの変換用なので、表立ってチヤホヤされるものではない。
0284デフォルトの名無しさん2016/01/30(土) 06:07:02.35ID:CWTGpkgd
asm.jsに変換するためのスクリプトが生まれるのか
既存言語やaltJSのどれかが一気に盛り上がるのかは気になる所
0285デフォルトの名無しさん2016/01/30(土) 09:14:16.51ID:VvvbELMN
そもそもフロントエンドJSだけでなんでもやろうという考え方自体が
もうどんどん時代から取り残されてるっていうね
ゲームくらいでしか使われない技術として孤立しつつある
0286デフォルトの名無しさん2016/01/30(土) 09:45:12.15ID:NWwyNWcX
>>283
いやいや、プログラマにとっては表で使うものだろうが
それがまったくと言っていいほどチヤホヤされないのは流行ってないからに他ならない

JS大好きはいいけど、嘘はいかんよ、君
0287デフォルトの名無しさん2016/01/30(土) 09:56:29.30ID:79w4u4E6
もうじきWEBでのjs一択の時代は終わる
何故か?今の時代にはそぐわないあまりにも糞過ぎる言語だからだ
0288デフォルトの名無しさん2016/01/30(土) 09:57:47.32ID:1awzzRNN
clojure-script か?
0289デフォルトの名無しさん2016/01/30(土) 10:20:16.66ID:tGs9hT0c
ブラウザ組み込みなら、Luaでどうすか
0290デフォルトの名無しさん2016/01/30(土) 18:34:21.44ID:FojFAs7d
一択の時代は終わるかも知れないが、糞だから廃れるとは言ってないな
0291デフォルトの名無しさん2016/01/30(土) 18:42:06.98ID:Duo1m4t1
>>286
asm.jsについて何も分かってない。
asm.jsは形だけならいくらでも表立って手で書くことは可能だ。
でもそれに意味は無い。
型は実質数値だけで、変数も使わず全てメモリに見立てた型付配列の読み書きでコードを実現しないと真にパフォーマンスは出ない。
ボトルネックの小さな数学関数を置き換える程度ならまだ手書きでも容易だが、
実アプリの大部分をasm.js化するのは人間では困難。
ただしボードゲームの思考ルーチン等極一部は相性が良いのでまだ意味のある手書きasm.js化が現実的な分野だ。
自分はここを研究して遊んでるが、原則表で使われるものではないし、変態でないプログラマにとっては意識するようなものでもない。
むしろ意識せずツールが高速な形で出力してくれるというのが重要なのだ。

そういう物なので流行るというようなものでもない。
然るべき場で使えればいいもの。
何度も言うがこれはJSerが書くようなものではないので、そういう基準で流行るどうこうで評価をするのはおかしい。
asm.jsの目標は、Cなどから変換され高速に動作するJSのサブセットを定義することなので、
モダンエンジンが挙ってサポートしたという時点でもう大成功であるとすべきものだと思うし、
他にもasm.jsを採用する代表格のツールemscriptenが十分に利用されてきたと思うので、asm.jsは成功だったと思う。
その次に来るのがasm.jsのスーパーセットのwasmだが、wasmについてはasm.jsの分はいいとして、
それとはまた違った目標もあるので、それがどの程度達成出来るかが楽しみである。
0292デフォルトの名無しさん2016/01/30(土) 18:56:16.24ID:NWwyNWcX
>>291
えーと、手書きがだめなら、他の型つき言語からトランスレーションするんでしょ?

そのトレンスレーションは誰がどこでやるの?
開発者がビルドツールを使って開発PCとかでやるんだよね、きっと

そのトランスレーションは今流行ってるの?
まったく流行ってないよね

結論としてasm.jsなんかまったく流行ってないよねってことなんだけど
0293デフォルトの名無しさん2016/01/30(土) 19:13:16.61ID:Duo1m4t1
別にそこら辺の老若男女に流行ってるわけではないが、
ちゃんとJSにコードを移植して高速に動作させたいと思ってる人達の間では流行ってるよ。
特にゲームとか、ゲームとか、あとゲームで。
Unity5もasm.js形式での出力サポートしてたね。wasmに移行することになったけど。
というか、流行る流行らないじゃなく、例えばUnity5がHTML5形式で出力サポートしますというときに、
asm.js形式で吐いてくれないと、使いものにならない。
逆にasm.jsがあったからこそ、Webプラグインを抜けられたというのもある。
そういうようにasm.jsは不可能や困難なことを実現させてくれるものだからね。
今まであった何かの代わりとなるようなものならまだシェアで流行るどうこう言えるけれど、そうじゃない。
0294デフォルトの名無しさん2016/01/30(土) 19:20:42.16ID:Qtxgd0Jl
多分あれだな、こう言えば伝わるだろう。
たとえばWebAPIで言うとBluetoothとかNFCとか、そういうニッチではあるけど、
必要としてる人がいて、無いと実現できないことが出てくるから存在する機能。
それらは謳ってる場面を一般に見ないからといって価値が無いだとか、
失敗した機能とか言うのは変だと思う。
もし全てのブラウザがそのAPIをサポートし、それを活用れれば、それを持って成功と言えると自分は思う。
0295デフォルトの名無しさん2016/01/30(土) 20:29:41.58ID:1jV8LkZN
まともにasm対応コードを吐けるのが現状C++→emscripten位だからしゃーない
そもそもasm.jsはJSの言語仕様に限界を感じた上での妥協の産物であって
JS大好きとかそういう事では無い
0296デフォルトの名無しさん2016/01/30(土) 23:41:06.91ID:K1vUGBt2
いやもうjsそのものが要らない子なんすよね
0297デフォルトの名無しさん2016/01/30(土) 23:42:17.87ID:D4EtHnEi
phpってザンプ以外なにでやればいい?
0298デフォルトの名無しさん2016/01/30(土) 23:46:35.17ID:Pd2sH7Ui
>>297
コマンドラインでも動くわけだし
バッチでDB読んでExcelに書き出してメールするとか出来る
0299デフォルトの名無しさん2016/02/01(月) 01:46:57.49ID:zxpPbFtk
>>296
まぁ言語に限らずソフトウェアは思う以上に長く残るもんだよ。
未だにCOBOLが使われてる業界があるくらいだし。

asm.jsで言えばゲーム系以外では地図関係でも使われてるかな。
0300デフォルトの名無しさん2016/02/01(月) 02:53:50.69ID:q8QY9LWf
COBOLで始めた30年償還の債券とかあるわけじゃない、
そういうのは捨ててなんか問題有ったら誰も責任取れないから捨てられないのよね
0301デフォルトの名無しさん2016/02/01(月) 03:40:21.26ID:Ffe8O4Eb
そういうのは、互換性をもった実行環境を捨てられない理由にはなっても、
違うものに置き換えられない理由ではないな。
現に言語もバージョンアップして別物になることもあるんだし。
結局は何が良くて何が求められてて何が流行るかなんて理屈でもないと思うね。
0302デフォルトの名無しさん2016/02/01(月) 07:14:50.02ID:S6M4IlTn
COBOLは「変わらないこと」が良くて「変わらないこと」が求められているんだよ
COBOLの開発ってのは継ぎ足ししかなくて後戻りは不可能なの
運用している限り負債は際限なく増え続け、保守費用が膨張し続ける
あまりにもコード量(99%はコピペ)が多すぎるので改修時のテストは天文学的な額になる
そしてIBMがボロ儲けする
そういうプラットフォームなんだよ
0303デフォルトの名無しさん2016/02/01(月) 11:28:42.69ID:gmWomOLn
COBOLはボリュームが読めるのがいいんだよ
土方を1束いくらで集めて上流が安全に大儲けできる素晴らしいシステムだよ
0304デフォルトの名無しさん2016/02/01(月) 11:47:23.19ID:q8QY9LWf
確かに画面何枚帳票何枚で見積して
誤差がすごく少ないのがCOBOL
0305デフォルトの名無しさん2016/02/01(月) 14:31:14.98ID:ZcD+oAW0
品質も安定してるんだよな
PGや設計者の質に左右されにくく、誰がやってもだいたい同じようなものができる
一人二人馬鹿がいてもプログラムの粒度が小さいから大きな破綻につながらない
0306デフォルトの名無しさん2016/02/01(月) 18:45:34.64ID:WTxcb3QQ
なるほどPythonは現代のCOBOLだったいうわけかwwww>誰がやってもだいたい同じ
0307デフォルトの名無しさん2016/02/01(月) 19:26:48.45ID:3dhQYicU
Pythonで機械学習やって年収ウン千万貰ってるような立場からしたら
分不相応な収入を得やすいという意味でも
現代のCOBOLって言われて納得感ある
0308ネトuy ◆Qawu9.2l1E 2016/02/04(木) 16:31:01.92ID:+MlOI5KQ
Rubyに手を出して年間休日300日以上の身からしたら
あと自分に欲しいものは好奇心とか感受性だなってなってくる
0309ネトuy ◆Qawu9.2l1E 2016/02/04(木) 16:50:42.20ID:+MlOI5KQ
プログラマもクリエイターであるべき
人前でプログラミングする時には、わざわざ意味もなく黒背景で緑色の文字色でソースコード手打ちするべき
プログラマとは一般人の前ではハッカーでなければないんですよ?知ってましたか?

絵描きが「なんか描いてーwwwwwww」って言われて渋々無料で絵を描くように
プログラマも「何やってーwwwww」言われたらウインドウズのクラッキングくらい出来るようにしとくべき
いずれその重要さが分かるさ
0310デフォルトの名無しさん2016/02/05(金) 00:11:32.34ID:BLJX2q4/
絵描きとはだいぶ違うと思うね
プログラマには車輪の再発明はしないという文化があるが
絵かきは別に使い尽くされたテーマでも絵を描く
絵は感覚、プログラムは機能
クリエイティブであることの難しさが違う
0311デフォルトの名無しさん2016/02/05(金) 02:58:40.11ID:EN3ElRH3
プログラマも絵描きも美を追求する点で似ていると思うけどなあ
車輪の再発明も美しくないからしないだけで
0312デフォルトの名無しさん2016/02/05(金) 08:26:06.90ID:Exh5iz0C
まあ1人でUIの機能性から何もかもまで作るときは比較的クリエイティブなんじゃないか?
今の完全に分業化された業務体系ではプログラマができる自由は少ない。
勿論コードを洗練するということはできるけれど、外から見えないソースコードの美と絵の美とは性質が違う。
絵でも何でもそりゃ作る時の効率の良さ、合理性は誰でも追求したくはなるが、芸術性てきな美しさとは違う。
まあ最近のイラストレータも業務では物凄い細かいとこまで構図指示されて書く場合では、
クリエイティブレベルは低いと言えるけどな。
0313デフォルトの名無しさん2016/02/05(金) 18:34:03.74ID:+znfZ6Lq
そこでProcessingですよ
0314ネトuy ◆Qawu9.2l1E 2016/02/06(土) 03:01:14.37ID:emUjjhAw
何も理解していないなお前ら
「クリエイターとは何を作っているか?」だ

人はある程度高次元の悟りを開いてしまうと物がどうでもよくなってしまうのだ 物欲がなくなるという事
そうなると、もはや重要なのは物を作っている中の人間、
マイクロソフトがIDEを作ったからそのカスみたいなIDEを大勢が使う

お前らはマイクロソフトじゃない
ブランド力を個人が持つという話


そして「クリエイターが何をつくっているか?」の答えは


         ∧__,,∧
        (´・ω・`)
         (つ[?]と)
         `u―u´
0315ネトuy ◆Qawu9.2l1E 2016/02/06(土) 03:30:07.77ID:1tnBXYC0
>>310
車輪の再発明をしたくないという気持ちがあるだけで、実際は大量に同じものを世界中で作ってる

>>311
絵は大きく分けて、理想の自分を描くタイプと、自分の理想を描くタイプがいる
そしてこの二つがあるという事は、コンピュータの0と1が存在することと同義であり、
絵とは何か?という事に明確は答えが無く
人によって描く理由が無限通り存在してしまう

>>312
クリエイティブかどうかは客観的に見た結果が重要

>>313
ない
0316デフォルトの名無しさん2016/02/06(土) 04:27:54.64ID:f3HABeiQ
過程であるプログラムと結果である絵は全然違うものだよね。
これが一緒とか言っちゃうとなんでも一緒になっちゃうよw
0317デフォルトの名無しさん2016/02/06(土) 10:40:09.45ID:0UWDYh4J
クリエイティブなコードとか迷惑行為でしかないわ
0318デフォルトの名無しさん2016/02/06(土) 12:20:03.17ID:Hq8KD+//
Processingは、デザイナーやアーティスト、またプログラミング初学者に向けて作られたプログラミング言語/環境だ。
そこでの体験は、文系と理系、デザインとエンジニアリング、感性と論理という両軸における領域横断接続をもたらし、〈ハイブリッド〉な才能を産み出す。

視覚芸術の文脈の中では、造形・動き・インタラクションをプログラミングする力が養われ、ソフトウェアを作り出すためのリテラシーが身につくのだ。
0319デフォルトの名無しさん2016/02/06(土) 12:33:48.37ID:HDAcqTTk
うわぁ意識高い
0320デフォルトの名無しさん2016/02/08(月) 14:26:19.75ID:gRIgdtxf
素人でも端からこのソフト買っとけば
簡単に5万ぐらい稼げるっていうソフトないですか?
10万ぐらいまでならソフトに出せます
それなら端からパーツ屋に自分がつくれないプログラミング部分だけ売ってもらえとかなるんかな?
0321デフォルトの名無しさん2016/02/08(月) 21:12:33.97ID:il1BjxQM
>>320
SPSS
0322デフォルトの名無しさん2016/02/09(火) 14:34:34.12ID:fMCdP1nL
>>320
俺に10万振り込んでくれたら、すぐ君に5万振り込まれるソフト作ってあげるよ
0323デフォルトの名無しさん2016/02/09(火) 16:20:55.00ID:6l1mZ7CB
>>320
俺、半年で7万円くらい、ブログで稼いでるおww

適当にやっていてもこんくらい。ソフトは何れ売るつもりだけれど、そっちはそんなに
簡単じゃない。

そういうもんですよ。
0324デフォルトの名無しさん2016/02/09(火) 18:03:00.68ID:61Ret/HN
まとめサイトビルダーみたいのは使えるんですか?
でもグーグルアドセンスにオリジナリティがないって審査通らないんですよね
0325デフォルトの名無しさん2016/02/10(水) 00:44:33.57ID:Jne72UqD
儲かるためにやるものじゃない
あくまでブログがメインでアフィはついで
それを履き違えると何もかも失敗する
0326デフォルトの名無しさん2016/02/10(水) 03:56:52.14ID:068oL4R+
>>325
まあな!
0327デフォルトの名無しさん2016/02/10(水) 09:15:10.41ID:FkM1RfeE
>>324
普通にWordpressでさくらにレンタルサーバ借りて設置。

問題のコンテンツは、まとめサイトみたいなものやるにしても、特定の分野に
特化するとか、物量が桁違いとかないとダメだよ。

なんの変哲もないサイトじゃ通らないのは当然。だいたい、半年掛けてコンテンツ
を蓄積してから申請すれば一発で通る。過去に3度サイトを作成してるけれど、
1度も落ちたことないよ。
0328デフォルトの名無しさん2016/02/11(木) 10:32:02.17ID:NOwB6dfA
何スレだよ
0329デフォルトの名無しさん2016/02/11(木) 14:07:01.42ID:/DIzSOPL
ネスレ
0330デフォルトの名無しさん2016/02/11(木) 15:15:30.18ID:pPotq0xY
>>329
ネスレはいいよな。美味しくて
0331デフォルトの名無しさん2016/02/11(木) 18:01:48.78ID:R5nKPKgb
もう全然このスレ勢い無いね
昔はPythonとRubyで些細な相違点で喧嘩していたというのにね
懐かしいね
0332デフォルトの名無しさん2016/02/11(木) 20:41:35.85ID:ztLm4WlQ
今はアート的思考も取り入れたエンジニアリングがより重要視されてるからProcessingが強い
0333デフォルトの名無しさん2016/02/11(木) 21:02:31.19ID:LX62t3BW
特定の言語を無条件に推す奴がProcessing君くらいしかいなくなっちゃったからね
今や貴重な存在
0334デフォルトの名無しさん2016/02/12(金) 02:06:27.56ID:sE4DpEbL
JavaScriptやっとけば問題なさそうだって事が分かっちゃったからじゃないか?
0335デフォルトの名無しさん2016/02/12(金) 08:52:24.77ID:eUWMATXs
>>334
まぁ、ドキュメント、普及率、ライブラリの充実度、勉強のしやすさ、利用者の多さ
考えたら妥当だわな。

GoogleなどがGoogle Apps Scriptとして採用してるってのも大きい。
0336デフォルトの名無しさん2016/02/12(金) 11:50:20.82ID:+ooPmLDj
>>335
人もカネもJavaScriptにざばざば注ぎ込まれてるし
そんで本が沢山出たりブログで情報が出回るとますます人が増えるしで
最初に勉強するのがJavaScript、って最近当たり前になっちゃってるし
0337デフォルトの名無しさん2016/02/12(金) 12:00:41.16ID:j3y+ivU5
不幸な世界だな
0338デフォルトの名無しさん2016/02/12(金) 12:47:43.74ID:eUWMATXs
>>336
1度死にかけた言語とは思えない復活だわな。
0339デフォルトの名無しさん2016/02/12(金) 18:01:49.02ID:MKj9ZxdH
死にかけたってのは言語としてより、DOM API等を含んだ集合体よりライブラリが勝ってたってだけで、
ライブラリが勝手に衰退しただけでJS自体はそう変わりないけどな。
0340デフォルトの名無しさん2016/02/12(金) 18:02:18.90ID:MKj9ZxdH
×ライブラリ
○プラグイン
0341デフォルトの名無しさん2016/02/12(金) 19:08:47.67ID:cml8Pwji
最近はPythonさんの本がリリースラッシュだね
国内でもやっとPythonさんが陽の目を見るか?と思ってたらいつの間にかもう覇権取る勢いだしw
逆にjsは下火でRubyもまさかの"おっPython"が国内でくるとは夢にも思わなかったろうね

これからは、オッパイソンの時代
0342デフォルトの名無しさん2016/02/12(金) 19:50:41.78ID:AOZf3/cl
まあここのところのAI絡みの機械学習やら、サイバーセキュリティやら、統計/学術系やらで一気にpython需要がきたからなぁ
これらはjsやRubyでどこうできる分野ではないしこのまま覇権取りそうな感は否めないわな
0343デフォルトの名無しさん2016/02/12(金) 20:20:02.25ID:mqC6zGT8
向こうの人って昔からスクリプトといえば「特に理由がなければPython」なのでもともと勝負にすらなってないよ
別に今流行り出したわけではなく、データサイエンス系でもわざわざ他のを使う理由がないからPythonなだけ
0344デフォルトの名無しさん2016/02/12(金) 21:39:25.67ID:AOZf3/cl
だから日本の話をしてるんだが
0345デフォルトの名無しさん2016/02/12(金) 22:07:56.13ID:cml8Pwji
R よりも速く Python よりも美しい Julia
http://peace.2ch.net/test/read.cgi/tech/1455271513/
0346デフォルトの名無しさん2016/02/12(金) 23:38:53.07ID:4aeQ9cGY
rubyもpythonも仕事で使ってきたけど、rubyistの人とは馴染めないんだよなあ
0347デフォルトの名無しさん2016/02/12(金) 23:51:38.65ID:Izyjri30
Pythonは高階関数が書きにくいのがなあ…
Rubyはそこがお手軽なので関数型ぽく書きやすいところが好きだな
0348デフォルトの名無しさん2016/02/13(土) 01:55:14.46ID:LF3AUtw6
>>320
【社会】覚醒剤100キロを押収。神戸山口組の組員らを逮捕
http://ai.2ch・sc/test/read.cgi/newsplus/1455227244/
> 自動ネット収入システム
> AUTO WEB MONEY ラストアンリミテッド
> このルートが一番稼げる
> ルート設定[アメリカ巡回モード]→カスタマイズ[サイレント]→IP設定[自動]→再起動→ルート設定[自動]→カスタマイズ[高速モード]

> 先週にShareとか紹介してた雑誌に載ってたから買った
> 今まで疑ってたからモノホンだった時の衝撃度と稼げる金額がヤバイw

> あqwせせdrftgyふじこlp;@
> すげーwwwwwwネ申降臨wwwwww

> この裏技ようやくコミュニティにも広まってきたもよう。

> コミュニティの平均収入が1日で6万円くらいらしいな

> ここまで広まってるのに未だに嘘だと疑って買ってない馬鹿が多すぎてわろたw

> まだアフィリとかやってるのは情弱のアホだけだしw
> アメリカでも今はこれが最先端のネット収入システムだし。


2ちゃんねるに貼ってある掲示板風広告にしか見えない書き込みだけど
本当だろうか
0349デフォルトの名無しさん2016/02/13(土) 02:43:30.35ID:LF3AUtw6
>>348 のオリジナルを見つけた
http://peace.2ch.net/test/read.cgi/hp/1451382819/508-n

ログは捏造と言うかテンプレと合わせたものだけど
一応、IDと紹介の書き込みは存在した。

発見方法は「507 508 "03:37:32.82 ID:0rBLzvho"」で検索
「Name_Not_Found 0rBLzvho site:2ch.net inurl:hp」でも出てくる

製品名で検索すると、>>348 のようなコピペが100件ほど出てくるばかりで
元の書き込みは出てこない。
0350デフォルトの名無しさん2016/02/13(土) 05:24:29.97ID:RQKkP2F9
>>343
理由がないなんてことはない
0351デフォルトの名無しさん2016/02/13(土) 08:14:06.27ID:sYWftYqr
rubyな人は「まつもとさんはこう言ってたし」
とか語り出してキモい
0352デフォルトの名無しさん2016/02/13(土) 08:15:51.39ID:bNYKyrDh
その点海外のRuby使いはドライだよね
Railsという「理由」があるからRubyなだけ
0353デフォルトの名無しさん2016/02/13(土) 11:42:38.68ID:je5vdza3
>>352
そうか?海外でもRubyは言語としても人気だぞ?
Crystalなんてのを作っちゃう人もいるし
0354デフォルトの名無しさん2016/02/13(土) 12:31:18.86ID:NiOQpRRl
セーラームーン?
0355デフォルトの名無しさん2016/02/13(土) 17:42:05.37ID:6qRaMcc6
テクノロジを学んでも、それで何かを作ってみなければ、実は何も学んだことにはなりません。
0356デフォルトの名無しさん2016/02/13(土) 17:45:57.42ID:6qRaMcc6
"どうすればPythonをJuliaと同じくらい速く動かせるのか? : 様々なやり方で計算の高速化を図る"
http://postd.cc/python_meets_julia_micro_performance/
0357デフォルトの名無しさん2016/02/13(土) 21:25:53.19ID:KZpZDJLQ
↑何でこんな苦労してまでPythonを使わなければならないのか
これならCやC++で書いた方がはるかに楽なんじゃないかってね
そこまでしてPythonの実行環境に詳しくなって何になるのかね
これはRubyなんかにも言えることだが
C/C++で書いていれば自然とCPUやハードウェアといった計算機の根源的部分について
詳しくなっていくとこを、変なスクリプト言語にハマってしまったが故に
他の言語では成り立たないような、その実行環境特有のバッドノウハウを溜め込んで楽しいのかね
どうせならx86-x64CPUのエキスパートにでもなった方が応用範囲が広いし楽しいと思うんだが
0358デフォルトの名無しさん2016/02/13(土) 21:36:34.42ID:wYGoefNa
何故かって?
ふふ、必要だからスクリプト言語が生み出されたのさ
全ては合理的に生産性を高めるためにね
そこにC/C++では役不足なのさ
0359デフォルトの名無しさん2016/02/13(土) 22:08:40.58ID:LF3AUtw6
>>357
> どうせならx86-x64CPUのエキスパートにでもなった方が

だから互換性を維持する必要があって高速化の邪魔になってるんだよね。
0360デフォルトの名無しさん2016/02/13(土) 22:25:22.16ID:9xCAiTrD
>>359
仕方ないよ。現状コストという制約からは逃れないわけで、
高速化出来てもコストを回収できなければ、
生産を維持することは出来ない。

ぶっちゃけコストを度外視すれば高速化なんて
簡単なんだよ。簡単なことをやっても別に凄くはない。
0361デフォルトの名無しさん2016/02/13(土) 22:39:29.98ID:/hkDORU8
目的の違いでしかないよね
C++ の方がバッドノウハウ多そうだけれども
0362デフォルトの名無しさん2016/02/13(土) 22:52:29.09ID:KZpZDJLQ
普通に計算するだけならC/C++で書いてもバッドノウハウの塊になったりはしないよ
色気出して複雑なものを構築しようとするから変なことになるだけでさ

今回はPyhonの実行速度を速めるって話だったから
そこまで苦労してPythonで速度を求めるぐらいなら
素直にC/C++使えばよいのにねって話
Pythonであれこれ計算を高速化とか、それこをバッドノウハウ
0363デフォルトの名無しさん2016/02/13(土) 23:30:54.21ID:JbR4yf9J
高速化必須って分かってるならスクリプト言語使う方がおかしいわな
Cで書いてAVXやCUDA使うやろ
そんでDLLか.soにしてスクリプトかぶせればよろし
0364デフォルトの名無しさん2016/02/13(土) 23:54:46.14ID:bNYKyrDh
だけど最初から高速化必須とわかっているケースは稀だからな
現実にはアルゴリズムそのものが間違っているケースがほとんどで
有効なアルゴリズムを見つけたとしても必ずしも速度が重要とは限らない
最初とりあえずスクリプトで素直に書いて、
使えそうで速度に不満があれば>>356のような手軽な最適化を試みて、
それでも遅ければCで書けばよろしい
0365デフォルトの名無しさん2016/02/14(日) 01:00:01.55ID:QinwwQiS
扱うデータの種類にもよるけど、アルゴリズムの変更がうまくハマったらそれこそ桁違いの速さになるからなぁ。
0366デフォルトの名無しさん2016/02/14(日) 01:07:02.98ID:3Nivwysz
まあ特定の問題を解くことが目的なら頑張ってアルゴリズム工夫するより
速い言語でブルートフォースの方が手っ取り早いケースも多いけどね
アルゴリズムを考えること自体が目的ならスクリプトは有効
0367デフォルトの名無しさん2016/02/14(日) 01:16:39.23ID:h6VOKrap
だいたいのことはCでやりゃ十分。
Cでメンドイ規模になりそうだったらJavaで十分。
0368デフォルトの名無しさん2016/02/14(日) 01:25:15.58ID:zhuBaqVP
CもJavaもめんどい言語だろw

面倒な言語ってだけで使う理由はない。
JavaScriptなどを使っていればいい。
0369デフォルトの名無しさん2016/02/14(日) 01:30:36.79ID:cllo/HU3
サハラ砂漠で太陽光発電すれば全地球の電力になるらしいな。
あとマグマ、地熱発電のみでも全地球足りるだろうな。
地球のマグマは人類生存中にはなくならないだろうし、太陽もあと数十億年くらいは爆発しないはず。
0370デフォルトの名無しさん2016/02/14(日) 03:31:30.61ID:OtWrnVuz
NumPyでアルゴリズム仕上がった後で
遅ければCUDA対応にすればいいと聞いた
0371デフォルトの名無しさん2016/02/14(日) 03:37:01.17ID:0aXuSkUF
>>320
「ワンピース」の海賊版をサイトに公開した中国人4人の初公判  京都
http://hayabusa3.2ch・sc/test/read.cgi/news/1455340320/
> プログラマーらは2013年ごろからインターネット電話で知り合った人物から漫画のデータを送信するよう依頼を受け、
> ファイル共有サービスを介して送信し、月額37万円の報酬を受け取っていたとした。
0372デフォルトの名無しさん2016/02/19(金) 20:13:58.01ID:wEwKzS1i
以下のコードで質問です。
promptでキャンセルした場合には終了させたいと思います。
returnか例外を投げて終了させようと思うのですが、どちらが良いでしょうか?また、更に良い方法はありますか?

throwだとgotoのように使えますが、gotoのように使ってしまってもいいのでしょうか?
returnの場合は、functionの中の場合に抜けれなくて困るような気もします。
どちらが良いでしょうか。

(function(){
try {
prompt();
}
catch(e) {
alert( e.message + 'によるエラー終了。');
}
})()
0373デフォルトの名無しさん2016/02/19(金) 20:31:21.37ID:4zpSEqGj
"Railsの基本理念 : Railsの生みの親が掲げる8つの原則"
http://postd.cc/rails-doctrine/

Ruby 故に Rails 有り
Ruby 故に プログラミング
0374デフォルトの名無しさん2016/02/19(金) 21:48:43.75ID:4zpSEqGj
米国のRuby on Railsエンジニア平均年収が1300万円。なぜ米国のエンジニアの給与が高いか推測してみる
http://web-tan.forum.impressrd.jp/u/2014/12/10/18885
0375デフォルトの名無しさん2016/02/20(土) 04:38:36.03ID:v2eSHxb5
>>372
例外は想定外の自体が起きたときに使うもの。
そういうときに使うものではない。

ただしこういう書き方ならOK

function getInputData() {
 var data = prompt()
 if (data == null) { throw "未入力"
}
(function(){
 try {
  getInputData()
 } catch(e) {
  alert( e.message + 'によるエラー終了。');
 }
})()
0376デフォルトの名無しさん2016/02/20(土) 04:43:57.66ID:v2eSHxb5
途中で書き込んじまった

>>372
例外は想定外の自体が起きたときに使うもの。
そういうときに使うものではない。

ただしこういう書き方ならOK

function getInputData() {
 var data = prompt()
 if (data == null) { throw "未入力" }
 return data
}

(function(){
 try {
  var data = getInputData()
 } catch(e) {
  alert( e.message + 'によるエラー終了。');
 }
})()

関数にラップしただけのようだが何が違うのかというと、関数名が違う。
getInputDataは入力データを返す関数だ。
だから入力データを 必ず 返すのだ。想定外の事態が起きない限り。
想定外の事態かどうかは関数の仕様で決まるし、その仕様が想像できるような関数名にしないといけない。
promptは「文字入力ダイアログを表示する」というものだ。
表示できない何かが起きれば(例えばメモリ不足等)例外になるが、表示できる以上例外になってはいけない。
0377デフォルトの名無しさん2016/02/20(土) 04:49:59.54ID:v2eSHxb5
>>372
> throwだとgotoのように使えますが、gotoのように使ってしまってもいいのでしょうか?

throwをgotoの用に使うのは不可能だ。

gotoがだめというのは、ループの外から中にジャンプしたり
脈絡なくどこにでもジャンプできるからだ。

goto禁止と言われたのは過去のことで、今は悪いgotoの使い方がだめだと言われている。
C言語でも悪くないgotoの使い方は許容されているぐらいだ。

gotoという名前で良いか悪いかが決まるのではなく、その動きで決まる。
throwはgotoの良い使い方の動きしかできない。
だからgotoの悪い使い方のように使うことは不可能。

ただし>>372は別の理由(>>376)でだめな使い方だ。
0378デフォルトの名無しさん2016/02/20(土) 05:03:32.57ID:Qpp7Uq/5
別に駄目じゃない
promptの仕様次第
0379デフォルトの名無しさん2016/02/20(土) 06:02:50.67ID:v2eSHxb5
>>378
リーダブルコード読んでね。
名前つけるのは重要なことだから。
0380デフォルトの名無しさん2016/02/20(土) 09:26:15.92ID:njY71FFO
>>372
そのままで良い。
むしろ>>376は悪い例だから真似しないようにな。
0381デフォルトの名無しさん2016/02/20(土) 09:48:56.82ID:v2eSHxb5
>>372
理由書かないと当然信じられないよねw
0382デフォルトの名無しさん2016/02/20(土) 12:15:53.87ID:iJR83PRu
>>374
何だかんだとRubyの人気は強いな
やはりWEBテクノロジーが今後益々重要度を増す背景がそれを後押しするのだろう
小規模なチームでもサクサクっとスピーディかつスマートな開発が出来るしな
0383デフォルトの名無しさん2016/02/20(土) 20:48:13.59ID:gu205S3f
例外は元に戻れないコンディションと考えれば>372も全々0Kだと思うが
0384デフォルトの名無しさん2016/02/20(土) 21:52:41.56ID:MWpMJ8Dr
その場合、
ホントの致命的エラーはどう捉えるのん?
0385デフォルトの名無しさん2016/02/21(日) 01:50:20.96ID:GWn3Q6xQ
ハンドラーの方でよしなに
0386デフォルトの名無しさん2016/02/21(日) 09:10:26.32ID:lDbEdv1b
Webの話で言えばセキュリティエラー以外は捉える必要はないと思うね
逆に捉える場合はエラーが本当にセキュリティエラーなのか判定する必要もないと思う。
予想外のエラーで一番多いのは、APIが定義されてない、上書きされているということだろうし、
そんなんに対処できることはないから。
0387デフォルトの名無しさん2016/02/22(月) 19:23:35.49ID:rLpE2r31
Rubyってキモいよね
0388デフォルトの名無しさん2016/02/22(月) 20:58:17.49ID:qgHj34IQ
×Rubyってキモいよね
○Ruby信者ってキモいよね
0389デフォルトの名無しさん2016/02/23(火) 09:24:17.09ID:DfFr5bZr
ID:v2eSHxb5
微笑ましい
でも名前付けるだけでいいならvar getInputData = promptでも十分だぞ
0390デフォルトの名無しさん2016/02/23(火) 09:45:52.33ID:Oh6h4g2T
>>389
変数を動詞にすんなよ
0391デフォルトの名無しさん2016/02/23(火) 10:11:30.27ID:2FOmPW5P
意味不明な理屈だな。
0392デフォルトの名無しさん2016/02/23(火) 10:41:01.93ID:DfFr5bZr
>>390
マジか
JavaScriptだと動詞使えないな
0393デフォルトの名無しさん2016/02/23(火) 10:44:16.17ID:DfFr5bZr
リーダブルコードと言いつつ無駄な関数ラップをしてるのも微笑ましいな
次に君が読むべきは達人プログラマーだ
0394デフォルトの名無しさん2016/02/23(火) 10:58:57.11ID:5cA7aRIe
>>371
わかった…
0395デフォルトの名無しさん2016/02/23(火) 11:12:37.83ID:5cA7aRIe
俺さ、パソコンはじめてだったから
なに買っていいかわかんなかったから2年前一体型パソコン買ったんだよ
今頃ゲーム配信しようとおもったら
HDMIに対応してなかったり一体型パソコンじゃ、USBケーブルしか使えなかったり気づいたんだけど
部屋にTVもなかったし当時はちょうど便利じゃんみたいな感じで
でも今そんなTVとかみないし
テレビみたいだけなのにパソコンとかすべて起動するのって電気代もパソコン自体にも無駄に負担かかるだろうし
仮に今からデスクトップ買ってそっちを主流に一体型を予備にしても一体型じゃ予備にすらなんのか違和感あるんだけど
売れるなら売りたいけど値があんまつかないなら結局非常事態予備パソにでも使うけど、どういう選択が良好だとおもう?
なぜここで聞くかって?プログラミングやってる方が一番パソコン界の頂点にいると思うから。一年ちょっと使ってまだ新品のときのビニールも剥がしてないけどNECのバリュースター売れないかな〜
0396デフォルトの名無しさん2016/02/23(火) 11:16:01.68ID:Ekwcx2O0
なにこれ。新しいコピペ?
0397デフォルトの名無しさん2016/02/23(火) 11:18:10.45ID:Oh6h4g2T
面白いだろ?笑えよ。
0398デフォルトの名無しさん2016/02/23(火) 11:19:37.41ID:o/cxZ3+k
>>397
死ぬほどつまらない上に読みにくく、コピペとしての完成度は犬の糞レベルだな
0399デフォルトの名無しさん2016/02/23(火) 12:43:59.66ID:uqfFlXDQ
最近オライリーからやたらとPythonの本が出版されてるけど、日本でもついに本格的な普及が始まる?
0400デフォルトの名無しさん2016/02/23(火) 13:33:14.44ID:D6JlFIgd
上の話に近い質問なんだけど想定してた動きだけどユーザーの思う通りにいかなかった場合ってどうしたほうがいいですか?
例えばログインをajaxでする時、サーバーのエラーでなくて単にパスワードが間違ってた時って
成功のコールバックの中で振り分けるんですか?
それともサーバー側でエラーっぽいステータスコードだしてエラーのコールバックで振り分けるんですか?

他のサイト見てるとコンソールにエラーコードなんて出てないから前者のやり方なんだろうけど、その場合パスワードがあっているかどうかのデータを返事に付け足すのが一般的なやり方でしょうか?
0401デフォルトの名無しさん2016/02/23(火) 13:40:04.68ID:D6JlFIgd
ここ質問スレじゃなかったですね
すみません
0402デフォルトの名無しさん2016/02/23(火) 13:50:40.97ID:zll5W0PE
ajaxとかfetch自体は、通信のための機能だから、
失敗させるのは通信に関する時のみにすべき。
中身のデータがどうこうはまた別の問題。
0403デフォルトの名無しさん2016/02/23(火) 14:11:30.57ID:KUBUZTYE
>>400
ログイン出来ない時は401だし、POSTのないAPIにPOST来たら405返すよ
0404デフォルトの名無しさん2016/02/23(火) 14:41:51.56ID:D6JlFIgd
ありがとうございます
>>402にあるようなことも考えますし
>>403のように401を返すということをすれば普段200とかがある枠?を使える?ので省スペース的な感じがしますし
迷いますね
ステータスコードがブラウザやjavascriptのプログラムなどのレベル?での状態しか表さないものなら>>402のやり方なんでしょうけど401とか400とかユーザー関わってそうなのもありますから>>403のようなやり方のが個人的にしっくり来たのでこっちでいきます
0405デフォルトの名無しさん2016/02/23(火) 15:57:07.68ID:zll5W0PE
401を返してもfetchAPIでは成功となる。
fetchAPIが失敗するのは不正なURLを指定した場合などのみ。
Responseのokプロパティで200代か否かは分かるのでそこでthrowして、
そこからのエラーハンドラで判定しても良いが、
通信が丸切り失敗したケースと一緒になるのが良いかは疑問。
その点で言うとrejectedの流れを合流させるのではなく、
fulfilledの流れ中に新たに分岐を作るのが良いかもしれない。
そういうことを繰り返すと煩雑になるが、1度なら大丈夫だろう。
0406デフォルトの名無しさん2016/02/23(火) 18:57:11.54ID:D6JlFIgd
fetchAPIというのが勉強不足でまだ知らないのですが成功側に振り分けられてしまうものがあるんですね
つまりfetchでは成功側で振っているのに、ajaxでは失敗側で割り振るのでは考え方的に統一感がないって感じですね
そろそろスレチっぽいので失礼します
0407デフォルトの名無しさん2016/02/23(火) 19:03:43.68ID:5cA7aRIe
>>398
触れたんだから答えろよデブ
わからないのか?これくらいの質問も
0408デフォルトの名無しさん2016/02/23(火) 19:57:16.67ID:l0PlsTnn
>>407
そのゴミPCを足場にして首吊ったらいいと思うよ
0409デフォルトの名無しさん2016/02/23(火) 22:19:00.50ID:RTi5fT6J
>>399
Ruby潰しだろうな
0410デフォルトの名無しさん2016/02/23(火) 22:25:21.26ID:nOwJXdL3
rubyてまだ息しとったんか
0411デフォルトの名無しさん2016/02/23(火) 22:26:34.47ID:Oh6h4g2T
言語が息をするワケがないだろう。
0412デフォルトの名無しさん2016/02/23(火) 22:35:38.06ID:EekGY/S2
結局Rubyは「Rails Script」から脱却できずに終わったね
日本人がスタンダードを作るチャンスだったのに
0413デフォルトの名無しさん2016/02/24(水) 00:07:37.55ID:FJN9DHSJ
一番乗りにならなくてもスタンダードになれると思ってるなら甘いね
・ポインタが循環してもメモリリークしない
・Cの関数を呼び出せる
こういう単純な問題を一番最初に解決した言語がスタンダードになる
0414デフォルトの名無しさん2016/02/24(水) 00:37:05.58ID:RDH9smV+
>>413
C言語の問題はC言語にしか直せないよw
0415デフォルトの名無しさん2016/02/24(水) 00:55:38.51ID:0U45vlYv
Rubyは、Cで開発されている。Matzがそういってたことがある
0416デフォルトの名無しさん2016/02/24(水) 01:01:12.23ID:0U45vlYv
「Matz's Ruby Interpreter(MRI): C言語で記述された公式実装で、
Ruby独自の仮想マシン(バージョン1.9からはYARV)を使用する」

JRuby: Javaによる実装で、Java仮想マシンを使用する。メジャーな代替の実装。Javaのプログラムと連携する場合に便利。
Rubinius: Ruby言語による実装で、LLVMを使ったC++バイトコードの仮想マシンを使用しており、高速。メジャーな代替の実装。
mruby: 組み込みデバイスなどのCコードと連携できるように設計された、軽量のRuby実装。近年、注目度が高い。
Opal: WebブラウザーからRubyコードをJavaScriptコードにコンパイルできるインタプリター。
http://www.buildinsider.net/language/rubytips/0001
0417デフォルトの名無しさん2016/02/24(水) 10:54:48.63ID:YDL89jQB
>>399
それを使った実用的なソフトウェアが沢山あるからじゃね?

ゆくゆくはPythonでRubyも動かせそう、

Pythonは2.xと3.xでちゃんと先の事考えて発展させていってるし。

2020年からはますますPython 3だろうな。
0418デフォルトの名無しさん2016/02/24(水) 14:31:17.81ID:/0YmxgAq
・Cの関数を呼び出せる

これが結構難しい
Cのヘッダをそのまま読み込めればサイコーなんだが
変なマクロとかいっぱい書いてあるから難しい
windows.h を変換無しでそのまま読み込めたら良いね
0419デフォルトの名無しさん2016/02/24(水) 14:39:58.65ID:/0YmxgAq
出来立てほやほやの言語はとにかくライブラリが貧弱で使い物にならない
いくら優れた言語仕様だろうが、ライブラリの問題をどうにかクリアしないと、先に進めない
Cのライブラリをそのまま使えれば良いんじゃないか、ということになるが
悪しきヘッダファイルの文化や処理系依存が満載で、なかなかうまくいかない
0420デフォルトの名無しさん2016/02/24(水) 15:30:37.17ID:FJN9DHSJ
例えばシェルスクリプトはCのmain関数を呼び出せる
mainの型は「設定より規約」なのでヘッダは不要

でも規約に合わせてCをコンパイルするよりCに合わせてスクリプトに設定を書く方が楽
0421デフォルトの名無しさん2016/02/24(水) 18:57:22.19ID:1Q1vaK3L
> 例えばシェルスクリプトはCのmain関数を呼び出せる
呼び出せないよw
0422デフォルトの名無しさん2016/02/24(水) 19:36:08.96ID:FJN9DHSJ
>>421
じゃあ何を呼び出してるんだっけ
対案を出せ
0423デフォルトの名無しさん2016/02/24(水) 19:44:11.86ID:+rjhOBbM
>>419
C/C++ の標準ライブラリは使い物にならない,せめてJava程度は欲しい
0424デフォルトの名無しさん2016/02/24(水) 19:44:31.17ID:1Q1vaK3L
対案?何を言ってるんだ?

シェルスクリプトはコマンドを解釈して
bashやshなど(C言語で作られたアプリ)がOSに対して
プログラムの実行を依頼して、OS(C言語)が
プログラムのエントリーポイントを実行しているだけ。
0425デフォルトの名無しさん2016/02/24(水) 19:45:54.79ID:1Q1vaK3L
C/C++のライブラリはライブラリの仕様が古臭くて
今の超高級言語が必要とする機能を提供できない。

Javaや.NETぐらいのライブラリインターフェースを
備えなければ、いろんな言語から呼び出すことは不可能。
これはライブラリの仕様自体の問題。
0426デフォルトの名無しさん2016/02/24(水) 20:02:20.54ID:FJN9DHSJ
JNIとか積極的に教える気はないみたいだし
その辺に関してはJava以外がスタンダードになるわな
0427デフォルトの名無しさん2016/02/24(水) 20:19:49.32ID:PL8yH0Su
C/C++はメモリ管理がだめなんだよね。
今じゃ少数派のガベージコレクションを採用していないシステム
C++もテンプレートで実現しているから他の言語とのインターフェースの形で
ライブラリの仕様にすることが出来ない。
0428デフォルトの名無しさん2016/02/24(水) 20:20:58.84ID:/0YmxgAq
>>423
標準ライブラリ???
標準ライブラリ以外の豊富な多種多様なC用ライブラリも
スクリプト言語から変換無しで呼び出せればよいよね、って話なんだが
なんで標準ライブラリ??
0429デフォルトの名無しさん2016/02/24(水) 20:22:14.66ID:PL8yH0Su
>>428
無理だよ。Cのライブラリが他の言語から
呼び出せる仕組みになっていない。
0430デフォルトの名無しさん2016/02/24(水) 20:23:06.12ID:/0YmxgAq
無理なのはわかってるよ
0431デフォルトの名無しさん2016/02/24(水) 20:24:10.01ID:/0YmxgAq
とにかくヘッダファイル文化とマクロのせいで
他のスクリプト言語からそのまま利用するのが難しい
0432デフォルトの名無しさん2016/02/24(水) 20:26:01.75ID:PL8yH0Su
ちなみに、C言語のままで他の言語から呼び出せるようにしたのが
Windowsで使われているCOM

他の言語から呼び出せると言っても、関数を直接呼び出せるわけじゃない。
単なる関数ならまだ、他の言語の型をC言語の型に合わせるだけで
呼び出せるものもあるが、オブジェクトの場合はCライブラリ側に
IUnknownと呼ばれる特別なインターフェースを実装し、呼び出す側にも
それへの対応が必要になる。
0433デフォルトの名無しさん2016/02/24(水) 20:27:32.63ID:PL8yH0Su
結局のところ、C言語のライブラリ側に、
他の言語から呼び出すための機能が不足しているので
どうしようもない。

これはC言語自体に問題がある。
0434デフォルトの名無しさん2016/02/24(水) 20:33:49.48ID:/0YmxgAq
COMなんかどうでも良いです
COMもインターフェースや定数など、色々な定義がヘッダファイルに書いてあるわけですが
これが、例えばRubyなどから、そのまま読み込めて使えないのであれば意味ないです
ヘッダファイルを移植すれば読み込めるという話であれば、初めから意味ないです
移植するのが前提なら、大概の言語からCのプログラムは呼び出せます
COMなんかどうでも良いです
0435デフォルトの名無しさん2016/02/24(水) 21:55:15.55ID:PL8yH0Su
>>434
COMで重要なのはそこじゃない。C言語ではヘッダにしか書いていない
インターフェースの情報が、実行ライブラリから取得できるということだ。

C言語のヘッダは、何でも書くことが出来る。
だからそのヘッダからインターフェースの情報だけを抜き取るのは不可能。

C言語のライブラリは、パフォーマンス上の理由があったからではあるが、
インターフェースの情報が抜け落ちている。ヘッダファイルにしかない。

C言語のライブラリ仕様では、インターフェースの情報を取得できないため
(わかりやすく言えば関数名まではわかるがどんな引数が何個あるかという情報がない)
他の言語から呼び出し不可能になっている。COMはその情報を取得するための仕様を追加している。

C言語のライブラリ仕様を修正してインターフェースの情報を取得できるようにしない限り
他の言語からそのまま呼び出すことは不可能である。
0436デフォルトの名無しさん2016/02/24(水) 23:16:14.13ID:cGyLx1gy
C/C++が古臭くて問題があるなんて当たり前じゃないか。時代背景を考えろよ
そんな中でCOM/IDLは頑張ったほうだよ

今ならほとんどの言語にFFIモジュールがあるから
連携を意識して作られたCライブラリならよっぽど呼べるはず
ヘッダを解析してインタフェースを抜き出すツールもあるにはある

連携の面ではC++は全くダメだから別の話。C並に制限 or COMに倣うしかない
0437デフォルトの名無しさん2016/02/24(水) 23:27:29.32ID:FJN9DHSJ
ほとんどのヘッダには型情報があるが関係ない機能までつけたせいで失敗した
ほとんどの言語にFFIがあるが、また大半が多機能化して淘汰されるだろう
0438uy ◆Qawu9.2l1E 2016/02/25(木) 06:34:30.76ID:loCQbBq3
ヘッダがあるからってヘッダが膨大になるのが間違いなんだろ
ソースコードを細かく分けて捨てやすくする事が重要
ゴミと同じ
ソースコード = Gomi
0439デフォルトの名無しさん2016/02/25(木) 06:35:28.84ID:n9DyGB93
そういう話はしとらん
0440デフォルトの名無しさん2016/02/25(木) 08:59:23.78ID:oAowmf7g
こいつらアホだな
Cはインターフェース統一してる方だろ
それぞれの言語で合わせてみろよ
型のメタ情報だけで崩壊するぞ
0441デフォルトの名無しさん2016/02/25(木) 09:04:24.65ID:n9DyGB93
Cは型以前に、引数の情報すら持ってないんだよ。
C言語のライブラリは、ヘッダファイルなしに関数を呼び出すことは不可能。
無理やり呼び出すとアプリが落ちてしまう。
0442デフォルトの名無しさん2016/02/25(木) 11:14:38.77ID:v4zDTWG/
情報がーエビデンスがー前例がー
0443デフォルトの名無しさん2016/02/25(木) 11:35:20.75ID:1ezwMlLE
Cと何とを比べているんだ? JavaやC#とならリフレクションに差はあるが
けっこうなスクリプト言語は引数の型が明確ではないだろ?
ヘッダどころか実装まで見なければ正しい使い方はわからんよ。

C側だって、ヘッダのみで暮らしているのはUNIX文化圏だけで
Windowsなら COM/IDL なり WinRT/WINMD なりでメタデータを付与する方向じゃないか?

言語より、メタデータなり機械的な解析ができるドキュメントなりが欲しいだけの話に見えるが
0444デフォルトの名無しさん2016/02/25(木) 11:53:12.48ID:3mjPTP1K
DLLにDEF付ければ引数の型までおk!
さすがWindows、さすwin
0445デフォルトの名無しさん2016/02/25(木) 14:08:54.70ID:n9DyGB93
>>443
他の言語は引数や型が不明でも、落ちることはないんだよ。
呼べないエラーになるだけ。

でもCライブラリの場合は、使い方を間違えるとアプリが落ちるし、
メモリリークになるし、場合によっては脆弱性の原因になる。

ついでに言うとエラーを返す方法が標準化されてないので
関数毎に戻り値が-1だったら〜とかグローバル変数に詳細情報が〜とかやる必要がある。

だから追加の情報や仕様なしにCライブラリを使うことは出来ない。
他の言語でCライブラリを簡単に呼ぼうと思ったら
まずCライブラリ側がメタデータを返さなければ対応不可能だよって話をしてる。
0446デフォルトの名無しさん2016/02/25(木) 14:40:39.67ID:1ezwMlLE
>>445
だからメタデータが欲しいだけって書いているじゃないか。
それを取得する方法がライブラリだろうが、別ファイルだろうが、文書だろうが構わんよ。
DEFはエクスポート名しかわからないからさすがに無理だが。
君は「追加の情報や仕様なしに使えるもの」の実例を挙げられるのかい?

「落ちることはない」はそんなに大きな差か?
適切な引数や型の組み合わせになるまで試すのか? 落ちないからリトライできるって?
言語自体にそういう機能を組み込むなら contract のサポートが必要だし、
Cのヘッダベースでも MS が SAL annotation で取り組んではいる。あまり広まっているようには見えないが。

「エラーを返す方法が標準化されてない」も、作り手側の心意気次第なところが大きい。
Array.indexOf() で値が見つからない時の返値は -1 か? null か? 例外が飛ぶのか?
0447デフォルトの名無しさん2016/02/25(木) 21:22:45.92ID:n9DyGB93
>>466
だから、Cライブラリの仕様では、そのメタデータを取得する方法がないから
それを仕様化しないといけないわけ。まずCライブラリ側でそれをやるのが前提で、
それが出来てないと、他の言語がいくら頑張ってもCライブラリを簡単に呼ぶ方法は作れない。

脆弱性になる可能性もあるのだから、アプリが落ちるのと、
落ちずにエラーメーッセージがでる差は大きい。

エラーを返す方法が標準化されてないっていうのは少し説明が足りなかったね。
C言語には例外というものが存在しない。だから何を例外とするかを自動的に決めることはできない。
関数毎にどういう判定を行って例外に変換するかを決めないといけない。

COMでは戻り値は全てエラー情報とし、関数で処理した結果は引数で返すという決まりだった。
これはよくあるC言語のライブラリでは受け入れられないであろう仕様だろう。

だからCライブラリが現在の仕様である限り、他の言語でそのまま使うのは不可能って話。
0448デフォルトの名無しさん2016/02/25(木) 21:28:27.31ID:wPnqAN6f
仕様がわからないと使えないのはどの言語で作られたAPIでも一緒だろ
あんたの理屈なら究極的にはAPIドキュメントをメタデータとして含めることになる
個人的にはそれもアリだと思うけどね
0449デフォルトの名無しさん2016/02/25(木) 21:53:35.15ID:v4zDTWG/
メタデータは誰かの頭の中にあるはず
可能か不可能かは人それぞれ
0450デフォルトの名無しさん2016/02/25(木) 22:03:37.27ID:n9DyGB93
>>448
ライブラリ呼び出しの仕様であって
APIの仕様の話はしとらん。
0451デフォルトの名無しさん2016/02/25(木) 22:06:41.76ID:1ezwMlLE
>>447
「他の言語からCライブラリを呼ぶ仕組み」なんてのは
10年も20年も前に通り過ぎたレベルで、今さら蒸し返すようなものではない。
現実的な手間でそれができない言語は、みんな消えていったよ。

電気のない時代に建てられた建築物にコンセントが無くても当然だろう?
C言語に対して「そのまま使う」ことを求めるのは、時代的に難しいんじゃないかな。

再利用しづらいからCではなく、別の言語で基盤を作ってほしいと
布教しているなら、それはリーズナブルだと思う。がんばってくれ。
0452デフォルトの名無しさん2016/02/25(木) 22:09:27.71ID:frRlbJMg
とにかく、スクリプト言語から豊富であるCのライブラリを使おうと思ったら
ヘッダファイルを移植したり、ラッパーを書いたりしなければならないわけだが
これが面倒なんだよ
面倒でも呼び出せるだけまだマシなんだがな
0453デフォルトの名無しさん2016/02/25(木) 22:35:25.54ID:1ezwMlLE
>>448
JSDocを元にインテリセンスするVSCode Salsaなんて
まさにドキュメントをメタデータとして使っていると思うよ。
静的型の無い言語でも、ドキュメントには意外と型が載ってる。
0454デフォルトの名無しさん2016/02/25(木) 22:42:40.80ID:n9DyGB93
>>451
何を言ってるんだ?
俺は仕組みを作れとかどうこうしろとは言ってないだろ。

C言語のライブラリが他の言語から簡単に呼び出せないのは、
C言語のライブラリの仕様の問題であっって
その仕様を解決しない限り、他の言語から簡単に呼び出せることは出来ない。
全てはC言語のライブラリに問題がある。

って話をしてるだけなんだが。
0455デフォルトの名無しさん2016/02/25(木) 22:49:05.51ID:v4zDTWG/
>>454
仕様を変えるのは、メタデータを取得する手段の一つにすぎない
メタデータさえ取れれば方法は何でもいい
0456デフォルトの名無しさん2016/02/25(木) 22:50:55.24ID:n9DyGB93
>>455
だからそのメタデータの形式を作るという仕様も含めて
C言語のライブラリの仕様の問題点を解決する方法が必要だって話をしている。
0457デフォルトの名無しさん2016/02/25(木) 23:16:50.57ID:1ezwMlLE
>>454
問題があることなんか、みんな知っているよ。
だから例えばCOMは、IDL, IUnknown, HRESULTといった
「ルールを決めること」を現実的な解としたのだろう。それが最良かはともかく。

君は「問題がある」と叫ぶことで、いったいどこへ向かいたいんだい?
何か建設的な目的や目標があるなら教えてほしい。
0458デフォルトの名無しさん2016/02/25(木) 23:17:42.74ID:RWQos+LS
構造体のポインタ渡す、とか、どうやって定義するんやろか
0459デフォルトの名無しさん2016/02/25(木) 23:23:57.61ID:n9DyGB93
>>457
話がわかってない人だなw

俺はC言語のライブラリを他の言語から簡単に呼び出せないのは、
C言語のライブラリのせいだって言ってるだけだよ。

他の言語に落ち度はない。C言語のせいだっていいたいだけ
0460デフォルトの名無しさん2016/02/25(木) 23:25:49.65ID:1ezwMlLE
>>459
なんだ。その程度だったのか。それならご勝手に。
0461デフォルトの名無しさん2016/02/25(木) 23:58:12.31ID:n9DyGB93
ずっと勝手にやってきてるんだが?
0462デフォルトの名無しさん2016/02/26(金) 00:08:59.10ID:ukAsRVKs
>>458
ファイルやネットワークからでも構造体を読めるんだから
とりあえずcharのポインタってことにしとけばいいんじゃないの
0463デフォルトの名無しさん2016/02/26(金) 00:15:46.83ID:J3LorlRy
>>462
それだと何バイト続いているかの情報がないし、
間違うとメモリ破壊を起こして脆弱性の原因に成りかねない。
0464デフォルトの名無しさん2016/02/26(金) 00:32:17.77ID:sByuqtKs
やはり何らか、ヘッダファイルを移植したりラッパーを書かなければならないわけだけど
これが汎用スクリプト言語の足かせになっているのは確かだろう
Cと連携できない汎用スクリプト言語に価値なんかないから避けては通れない部分

もしCのライブラリがスクリプト言語などから移植無しでシームレスに簡単に利用できる仕様だったのなら
今以上に多種多様にスクリプト言語が乱立していただろうから、ある意味これで良かったのかもしれない
ライブラリはC言語用のをタダ乗りすればよい、となれば、ライブラリの心配をしなくてよいので
オレオレ言語だらけになっていた可能性が有る
0465デフォルトの名無しさん2016/02/26(金) 01:27:02.64ID:CRmNap7k
C言語って別に汎用スクリプト言語から利用するための目的で
作られたわけじゃないんだから
責任は簡易なラッパーを提供しない汎用スクリプト言語側にあるんじゃないの?
0466デフォルトの名無しさん2016/02/26(金) 01:39:20.86ID:J3LorlRy
>>465
関数毎にラッパーが必要になるんだよ。

これはC言語のライブラリ自体の制限
1. インターフェース(関数の型や引数)を公開していないから
2. 戻り値でエラーを返しており、何がエラーであるか関数毎にバラバラだから
0467デフォルトの名無しさん2016/02/26(金) 01:46:37.24ID:CRmNap7k
だからそれはCの仕様なのであって
それはCの責任じゃないだろ?
0468デフォルトの名無しさん2016/02/26(金) 02:01:58.01ID:6Zondczs
外国で安全な寿司が食べれないのは日本のせいだ!
0469デフォルトの名無しさん2016/02/26(金) 02:12:54.48ID:J3LorlRy
>>467
責任とかいう話じゃなくて、どうすれば問題が解決できるかだよ。
C言語のライブラリは必要な情報が抜け落ちているので、
他の言語側だけをいくら改良しても実現不可能。
現状だと関数毎に個別に対応が必要になる。
問題を解決するにはCの仕様自体に手を入れる必要がある。
0470デフォルトの名無しさん2016/02/26(金) 02:20:00.58ID:J3LorlRy
>>468
日本で某国からエクスポート(輸出)された食べ物を
安全に食べるためには一つ一つ検査が必要。
根本的に問題を解決するには、外国が安全なものを提供するしかない。
の方がわかり易くないか?w
0471デフォルトの名無しさん2016/02/26(金) 02:21:43.62ID:CRmNap7k
だからそれはCのせいじゃないだろ
利用しなきゃいけないなんて決まりは無いんだから
ライブラリだって本来はスクリプト言語側、もしくはユーザー側で用意するべきじゃないの?
0472デフォルトの名無しさん2016/02/26(金) 02:44:04.84ID:J3LorlRy
だから、実際にライブラリはスクリプト言語側で用意しているし、
C言語のライブラリを使う場合には、スクリプト言語に合わせて
関数毎に個別の対応してより使いやすい形にしている。

個別対応をやめて、C言語のライブラリをそのまま使うには、
C言語のライブラリの仕様に手を入れないといけないわけで
これ以上他の言語側で出来ることはないんだよ。
0473デフォルトの名無しさん2016/02/26(金) 02:49:53.42ID:sByuqtKs
全然かみ合ってないからどうしようもない会話
0474デフォルトの名無しさん2016/02/26(金) 02:52:06.53ID:CRmNap7k
関数毎に個別の対応できてるんならちゃんと対応できてるって事じゃん
C言語のライブラリをそのまま使うにはって、C側が使えって強制してるわけじゃないだろ

nodejsでpythonやhaskellのライブラリそのまま使いたいって人が独りでもいたら
python側やhaskell側が仕様変更しなきゃいけないのか?
0475デフォルトの名無しさん2016/02/26(金) 02:53:24.35ID:J3LorlRy
話の最初を持ち出せば、何がいいたいかわかるだろう。
両方共俺の書き込みではないがな。


413 名前:デフォルトの名無しさん[sage] 投稿日:2016/02/24(水) 00:07:37.55 ID:FJN9DHSJ [1/5]
一番乗りにならなくてもスタンダードになれると思ってるなら甘いね
・ポインタが循環してもメモリリークしない
・Cの関数を呼び出せる
こういう単純な問題を一番最初に解決した言語がスタンダードになる

414 自分:デフォルトの名無しさん[sage] 投稿日:2016/02/24(水) 00:37:05.58 ID:RDH9smV+
>>413
C言語の問題はC言語にしか直せないよw
0476デフォルトの名無しさん2016/02/26(金) 02:57:35.19ID:J3LorlRy
>>475
nodejsやpythonやhaskelといったC/C++よりも高級な言語では
関数やクラスに関するより多くのメタデータを取得できるから
汎用の変換レイヤーを作ることが出来るんだよ。

だから関数呼び出しを間違えてもアプリは落ちること無く
エラーを返すように作ることは可能。

だけどC言語のライブラリはそれが不可能。
0477デフォルトの名無しさん2016/02/26(金) 02:58:33.58ID:CRmNap7k
だからそれはC言語側に解決すべき責任はないだろ

あんたがC互換の言語なり、ライブラリ書いて公開して
スタンダードの座を得ればいい問題だろ
0478デフォルトの名無しさん2016/02/26(金) 02:59:46.04ID:sByuqtKs
何で同じことを何回も言ってるの?
0479デフォルトの名無しさん2016/02/26(金) 03:00:54.33ID:CRmNap7k
同じ答えになる問いかけしかしてないから
0480デフォルトの名無しさん2016/02/26(金) 03:01:09.05ID:J3LorlRy
>>477
C言語のライブラリを呼ぶって話なのに、
C互換の言語を作る?

そしたらC互換の言語から、C言語のライブラリを呼ぶときに
同じ問題が発生するだろ。
0481デフォルトの名無しさん2016/02/26(金) 03:03:21.44ID:sByuqtKs
>>479
>>478は君にじゃなくてID:J3LorlRyに対してだよ、ごめんね
全然会話になってないよね

「C言語の責任ではない」
 → そうですね、でも他の言語からは使いにくいんだよね

で終わりのはずなんだがな
0482デフォルトの名無しさん2016/02/26(金) 03:06:01.59ID:sByuqtKs
>>480
意味不明
横から解説してあげよう
C互換の言語の例としてはC++がある
C++はCのヘッダを読めるから、Cのライブラリがそのまま使える
要するにC++のようにC互換のスクリプト言語なら、ヘッダファイルをそのまま読めるよねって話だね
そんなものが使い勝手が良いかは別としてな
0483デフォルトの名無しさん2016/02/26(金) 03:06:26.41ID:CRmNap7k
>>481 いや、こちらこそ失礼

>>480
だからC言語のライブラリ使わなきゃいいだろ
0484デフォルトの名無しさん2016/02/26(金) 04:43:12.71ID:J3LorlRy
>>482
C++は何の問題解決もしていない。
0485デフォルトの名無しさん2016/02/26(金) 05:35:11.97ID:CRmNap7k
この手のドキュメントとかヘッダファイルがついてないdllとかのライブラリの
関数の引数が知りたい的な質問してる奴いっぱいいるが、どこでもバカ扱いされてるな
0486デフォルトの名無しさん2016/02/26(金) 06:34:27.31ID:0pREU5tF
>>476
Pythonのelfバイナリって統一規格ですらないでしょ?
どこの世界の話?
0487デフォルトの名無しさん2016/02/26(金) 06:53:31.21ID:0pREU5tF
スクリプト言語は文字列の仕様すらゴチャゴチャしてるし
それをメタデータがあれば統一できるなんて勘違いもいいとこ
.NET上の言語すらC#から離れるほど統一性がなくなってる

そもそも低レイヤには型がないし、それに近いCを基準にFFIすると楽なわけ
COMや.NETやJVMなどがC型から抜け出せないのはそういう呪縛もあるの

そこを履き違えてnode()とかCに合わせてる言語を持ち出してどうすんだかな
しかしhaskellってのには笑わせてもらったよw
他の言語にhaskellの型情報持ち出してどう使うんだかなw
まともにプログラミングしないで議論してるのが丸わかり
0488デフォルトの名無しさん2016/02/26(金) 08:23:49.81ID:oGic2R3N
>>408
おまえにとってインターネットはアドバイスもせんと、揚げ足だけとって罵るためだけの道具かw
それで人の目に止まるアプリやサイトを作りたいってまあ無理でしょうな
情報交換もまともにできない、インターネットの成り立ちから考えろゴミww
このプログラマーもどきが
ただ意識だけ高くしてこのスレで意見だけ述べて他の優秀なプログラマーと同じ空気吸ってアドバンテージ取るだけってなら誰でもできるぞ?お?
0489デフォルトの名無しさん2016/02/26(金) 10:19:14.45ID:nk3Az0Vc
自動化ツールUWSC使いよ集まれ16
http://potato.2ch.net/test/read.cgi/software/1447217128/

http://www.uwsc.info/sample.html#N22
// メモ帳のボタン・メニューの変更(DLL(API)の呼び出し)  #N22
DEF_DLL SetWindowTextA(HWND, string): user32.DLL
DEF_DLL EnableWindow(HWND, Bool): Bool: user32.DLL
DEF_DLL EnableMenuItem(HWND, UINT, UINT): DWORD: user32.DLL
DEF_DLL GetSubMenu(HWND, int): HWND: user32.DLL
DEF_DLL ModifyMenuA(HWND, Long, Long, Long, Long): Long: user32.DLL
MF_GRAYED = $1
MF_BYPOSITION = $400
SC_CLOSE = $F060
0490デフォルトの名無しさん2016/02/26(金) 10:21:23.08ID:nk3Az0Vc
UWSCはマクロ用スクリプトだけど、>>489 に書いたようなやり方でWindowsAPIを直接呼び出せるようになる。
一つ一つ型を指定してやらないといけないし、スクリプト側で正しい使い方をしないといけないが、確かに使える。
あ、宣言しか書いてなかった。詳しくはリンク先へ。

スクリプト言語側で安全にすれば安心して使えなくないかもしれないが
それだったら最初からスクリプト言語で機能を提供した方が早い。
でも、たいていのスクリプト言語は限定的な機能しか提供しないか、
OSに縛られないためにあえて取り入れない。

WindowsAPIを呼び出す目的でUWSCを使おうとすると問題がある。
一つ二つ呼び出すくらいならいいが、スクリプト言語の仕様として構造体がないのでどげんかせんといかん。
あと、UWSCは遅い。

【最強CUI】PowerShell -Part 1
http://peace.2ch.net/test/read.cgi/tech/1378978504/53+328+358

速い  >>>>  遅い
C# on PowerShell > Lua(数値) > Python(CPU) > HSP3.31 = JavaScript
 > Ruby(CPU) > Lua(文字) > Ruby(時計) > Python(時計) > VBScript
 >> AutoIt3 = AHK >> UWSC >> PowerShell >> DOSコマンド ←ここでやっとマクロ系言語が出てくる
0491デフォルトの名無しさん2016/02/26(金) 10:32:28.60ID:0pREU5tF
>>490
>それだったら最初からスクリプト言語で機能を提供した方が早い。
そしてスクリプト言語同士のすり合わせは使用側が合わせるんですね
意味ねー
0492デフォルトの名無しさん2016/02/26(金) 10:35:29.87ID:ukAsRVKs
Cを呼び出せるっていうのは、Cを知らなくても呼び出せるって意味ではないんだよな

おそらく、Cを知ってるなら何でも出来るだろ簡単だろっていう思い込みがある
「知ってるけど出来ない」って状況を想定できてない
0493デフォルトの名無しさん2016/02/26(金) 10:38:47.79ID:8wvH38it
例えばPythonのopen()の中身ってOSによって違うんでしょ
それってどうやってんの?
0494uy ◆Qawu9.2l1E 2016/02/26(金) 10:40:00.69ID:i70zZNY9
C++

はい論破
0495デフォルトの名無しさん2016/02/26(金) 10:43:21.63ID:Knn4SWNS
>>490 (誤爆かと思った)
言語自体の機能に組み込むかはともかく、それくらいの記述で呼べる仕組みはあるね。

構造体は、フィールドの並びを配列で表現するものもあれば
 RECT = [ "INT", "INT", "INT", "INT" ]
C言語ソース文字列を解析するタイプもあるようだ。関数定義も同様。
 RECT = parse("struct RECT { ... }")

後者は親切すぎる感もあるが
Cのヘッダを解析する機能も持たずに成果物だけ再利用するなど怠慢だ
とさえ思えてくる。
0496デフォルトの名無しさん2016/02/26(金) 10:53:54.04ID:Knn4SWNS
>>492
さらに「知ってるし、出来だけど、これじゃ嫌だ」って場合さえある

文字列バッファや関数ポインタの扱いが違いすぎて
利用する言語側の文化に沿ったラッパーを噛ましたくなってくるものだ
例えば、クロージャと(関数ポインタ+データポインタ)の差は大きい
0497デフォルトの名無しさん2016/02/26(金) 11:22:05.00ID:3qM7nJI0
.NETはそこそこCの関数をうまく取り扱えるが、流石に限界もある
OSのAPI呼び出しはどうやってもCのインターフェイスになってて厄介なのは可変長構造体とか共有体を使っていたり、操作が複雑なマクロと型変換を伴ったりする場合
0498デフォルトの名無しさん2016/02/26(金) 11:33:36.72ID:0pREU5tF
おいおいlibcやVCRTの話ではなく、OSのABIの問題を言ってるのか?
それもうC側も規約を揃える必要がある時点でC関係ない
0499デフォルトの名無しさん2016/02/26(金) 12:08:34.97ID:nk3Az0Vc
こいつ何言ってんだ
DLLの話かと思ったが違うのか

C言語系/呼び出し規約/x86/"PASCAL"
C言語系/呼び出し規約/x86/"WINAPI"他
http://www.glamenv-septzen.net/view/615
0500デフォルトの名無しさん2016/02/26(金) 16:14:45.93ID:0pREU5tF
>>499
どういう意図のレスかわからないが
そのページの"C言語系"というのは作った人間のメモの分類

そこに書いてあるとおりcdecl以外はCとはあまり関係ない
特に現在よく使われてるfastcallなんて完全に別の言語由来
0501デフォルトの名無しさん2016/02/26(金) 16:37:25.73ID:nk3Az0Vc
WINAPI が C言語と無関係ってどういうこと?説明して。
0502デフォルトの名無しさん2016/02/26(金) 16:47:18.56ID:nk3Az0Vc
スクリプトから呼び出せないWindowsAPIはクソって話かと思ったら
WindowsAPIは無関係でC言語限定の話?

スクリプトから呼び出せないC言語のリンク前ライブラリはクソ?
C言語のライブラリって文字列ファイル操作以外に何かあったっけ。

標準Cライブラリ
https://ja.wikipedia.org/wiki/%E6%A8%99%E6%BA%96C%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA

今時この程度の機能がないような言語ってないでしょ。
UWSCにだってありますよ。

自分で作ったライブラリが使えないからクソ?
スクリプトから呼び出せるように
C言語で作ったプログラムをCOMオブジェクトにすればいいんじゃないの?
0503片山博文MZ ◆T6xkBnTXz7B0 2016/02/26(金) 16:47:32.25ID:6Zondczs
>>501
関数の呼び出し規約のことだろうけど、C言語でも使えるから無関係は言い過ぎ
0504デフォルトの名無しさん2016/02/26(金) 17:22:14.46ID:0pREU5tF
>>501-502
そのレスのその通りでCもOSに合わせる必要があるわけ

それでAPIの規約にC言語のせいと文句を言う意味がいまいち分からない
そのUWSCについては処理系が不完全なだけで
OSでただメタ情報を合わせたい、取りたいってだけなら.NETに統一すれば済むでしょうに

>503
Cで使えるからC言語系というのは流石に暴論でしょうに
飽くまで呼び出し規約はABIの仕様であってC言語とは直接関係ないよ
unixならまだしも
0505デフォルトの名無しさん2016/02/26(金) 17:35:05.75ID:0pREU5tF
抽象化レイヤの低い層でアクセスしたいと言って、
抽象化が低い事に文句言うって、それただのわがままでしょ
0506デフォルトの名無しさん2016/02/26(金) 18:07:05.25ID:0pREU5tF
UWSC見てきた
>今時この程度の機能がないような言語ってないでしょ。
>UWSCにだってありますよ。
と豪語してる割に、普通にCのmemset使ってますな
本当そのとおりで
0507デフォルトの名無しさん2016/02/26(金) 18:33:42.88ID:nk3Az0Vc
>>506
なんか問題ある?

僕は機能の話をしたのであって、ポインタを使った演算の話はしてないよ。
0508デフォルトの名無しさん2016/02/26(金) 20:41:24.93ID:0pREU5tF
>>507
苦しすぎる言い訳どうも
0509デフォルトの名無しさん2016/02/26(金) 21:14:44.70ID:3qM7nJI0
>>504
いや、APIは明らかにC言語用に設計されてるじゃん
マクロ多いし、null終端だし、型も一部不自然だし
0510デフォルトの名無しさん2016/02/26(金) 21:18:12.66ID:sByuqtKs
C++やScalaみたいに、既存のライブラリがそのまま使えた方が
言語が成功する可能性が高いよね

既存のライブラリがそのまま使いまわせるとスタートダッシュが違う
D言語とか意味なかったでしょ
一応Cのライブラリは使えるんだけど、ヘッダを変換しないといけない、これだけでバカらしい
なら素直にC++使った方がまし
言語を作るなら何らかの普及している言語のライブラリ群にタダ乗りした方が賢い
0511デフォルトの名無しさん2016/02/26(金) 21:22:52.50ID:nk3Az0Vc
memset uwsc  157 件

>>506
僕もググって調べてみたけど
UWSCのスクリプト で memset を使ってるソースが1件も見当たらなかったんだけど
具体的にどこの誰が使ってるの?
ハンドル名でも紹介されてるアドレスでもいいから教えてよ。
0512デフォルトの名無しさん2016/02/26(金) 21:27:45.17ID:sByuqtKs
バカらしい議論に思えるかもしれないけど
言語が成功するかどうかは最終的にはライブラリで決まるところがあるので無視はできない
言語のシェアで争うのも、結局はシェアとライブラリが、鶏と卵でどっちが先かみたいに直結しているからだろ
どの言語からも使える最低限のライブラリの仕様ぐらいISOで統一しとけよ、とは思う
0513デフォルトの名無しさん2016/02/26(金) 21:30:37.96ID:SYTOKNFe
>>510
C++コンパイラが普通に使える環境なら静的リンクでもいい
コンパイラはないが某スクリプト言語とFFIが使えるとしたらどうなるかって話だよ
0514デフォルトの名無しさん2016/02/26(金) 21:31:51.04ID:nk3Az0Vc
>>506
探し方が悪かった

def_dll memset  10 件

しかもUWSCで使う事例は見つからなかった。

おかしいね
>>506 はどうやって見つけたんだろうね?
0515デフォルトの名無しさん2016/02/26(金) 21:36:11.35ID:nk3Az0Vc
>>512
そのまえに、にほんごをはいししてせかいひょうじゅんげんごであるえいごにとういつするべきじゃないの?

にほんごなんてものがそんざいするから「なでしこ」なんていうプログラミングげんごがつくられてるんだよ。

いきなりえいごはむりだろうから、とりあえずかんこくをみならってかんじをはいしするべきだろう。
0516デフォルトの名無しさん2016/02/26(金) 21:36:27.40ID:3qM7nJI0
>>512
今だとJVMか.NETにただ乗りが一番安定感ありそう

共通APIは無理だろうな
文字コードとかセキュリティで標準Cライブラリも意味不明になってるし、エラーの返し方も言語でバラバラだし、違いが大きすぎる
0517デフォルトの名無しさん2016/02/26(金) 21:38:23.71ID:nk3Az0Vc
>>506 は早く C言語の memset を使った UWSC のソースコードを持ってこいよ。

存在してるんだろ?
0518デフォルトの名無しさん2016/02/26(金) 21:40:41.44ID:dBO2xm/m
>>510
> C++やScalaみたいに、既存のライブラリがそのまま使えた方が
> 言語が成功する可能性が高いよね

短時間で成功したのはnodeかな。
0519デフォルトの名無しさん2016/02/26(金) 21:45:58.92ID:CRmNap7k
D言語は使ってみるといい言語だよね
0520デフォルトの名無しさん2016/02/26(金) 21:49:16.85ID:PCB0D50w
ぼくのかんがえたさいきょうのげんごを試行錯誤して作り上げてきた結果、
結局C#の正しさを再確認しているだけというね
0521デフォルトの名無しさん2016/02/26(金) 21:57:39.60ID:SYTOKNFe
JavaかC#にタダ乗りするくらいならmingwとかにタダ乗りする
静的リンクできるならC/C++で特に問題ない
0522デフォルトの名無しさん2016/02/26(金) 23:01:25.62ID:hIIPD4OQ
スタティックリンクとGPL汚染とかの話も良く分からんのですよ
0523デフォルトの名無しさん2016/02/26(金) 23:13:59.15ID:0pREU5tF
>>509
俺もC型文字列などの話をしてると思ったんだよ
だからCOMとか.NETでもまだ使われてんなーと
それがAPI呼び出し時のABIに言及してたからアホかと突っ込んだの
そんなもんOS関係ないわ

>>ID:nk3Az0Vc
何を一人ではしゃいでんだお前は
UWSCのヘッダ見りゃVCRTの依存が即出てくるだろ
つかググった程度の知識で煽る事しかできないってどんだけ低能なの…
0524デフォルトの名無しさん2016/02/26(金) 23:34:55.54ID:Knn4SWNS
413からの流れがおかしな方向へ行ってるんだよなぁ

どちらかというと
> ポインタが循環してもメモリリークしない
のほうが気になるわ。確かにCOMやHTML DOMが絡むとダメな場合もあるけど
そういうのを除いて、循環参照問題が残っている言語って現役なのか?
GCを改良した Python 2.0 なんて 2000年のリリースだぞ
0525デフォルトの名無しさん2016/02/26(金) 23:43:00.39ID:SYTOKNFe
ヘイトスピーチとか放置されてる掲示板で、気になるのそこかよ
0526デフォルトの名無しさん2016/02/26(金) 23:57:13.20ID:nk3Az0Vc
>>523
ランタイムライブラリの内部でVCRTを使ったらダメってことは
ランタイムライブラリをアセンブラで開発しろってことか?

俺は確かに低能だからお前が言ってる事が全く理解できないんだよ。

俺にもわかるように説明してくれ。
0527デフォルトの名無しさん2016/02/27(土) 00:00:48.83ID:io3T81v1
>>523
もしかしてWindowsAPIやC言語を一切使わずに
Windowsなどで動作するプログラミング言語やランタイムライブラリを作れと言ってるの?

それとも、Windows を使うなと言ってるの?

全てがオープンな Linux を使えってこと?

本当に意味がさっぱり分からないのでお前と同じ考えを持つ何かを紹介してくれないかな。


あるといいながら一つも持ってこれないから無理だろうけど。
0528デフォルトの名無しさん2016/02/27(土) 00:23:24.46ID:LEd0hC1j
>>526
Windows用の開発はC言語で書いてあろうと普通はOSのAPIを使うんだよ
C言語のランタイムはC言語の機能であってOSではない
Cランタイム上の関数なんて普通使わない(マクロもあるので全くとは言わない)
0529デフォルトの名無しさん2016/02/27(土) 00:25:53.57ID:LEd0hC1j
>>527
はあ…本当にまともな開発経験が一切ないんだな
どうせアセンブリも実際に触ったこともないで煽るために使ってるだけだろ?
0530デフォルトの名無しさん2016/02/27(土) 00:37:17.94ID:GVFLbtKJ
君、またスベッてるよ
0531デフォルトの名無しさん2016/02/27(土) 00:40:23.22ID:io3T81v1
>>529
アセンブラならCASLとチートでわずかに使ってる程度だよ

>>528
それがVCRTを使ってダメな理由になる理由がわからない。
汎用性はVCRTの方が高いだろ。


使用を推奨されていない CRT 関数
https://msdn.microsoft.com/ja-jp/library/ms235384(VS.80).aspx

うんうん。
でも、全面禁止ってわけじゃないようだけど?
0532デフォルトの名無しさん2016/02/27(土) 00:46:47.48ID:io3T81v1
僕は最近はブラウザゲームのマクロで JavaScript をちょっとかじってるだけだけど
こういうのを作ってる
ブックマークレットでグラブルマクロ
ttp://www.dotup.org/uploda/www.dotup.org752732.txt

OSの機能が使えないのは残念だけど
逆に使えないからこそ安心して使えるんだよね。
0533デフォルトの名無しさん2016/02/27(土) 00:48:47.79ID:LEd0hC1j
>>531
Cランタイムが駄目なら、アセンブリ使わなきゃだめなのか?お?
とかアホな煽りしてるから、CランタイムはOSのAPIじゃないぞと言ったわけ

俺はUWSCの作者が使ってるから駄目とか、
使っちゃいけないなんて一言も言ってないわけ

で
>今時この程度の機能がないような言語ってないでしょ。
>UWSCにだってありますよ。
お前がこう言ったから、そもそもC言語の機能(ランタイム)で
実装されとると言ってるわけ
お前が恥ずかしい事を言ってるだけ
わかったか?
0534デフォルトの名無しさん2016/02/27(土) 00:57:21.00ID:io3T81v1
???「APIはOSの機能なので関係ない」
???「VCRTはOSの機能じゃないので関係ない」

じゃあ関係のある話を教えてくださいよ。
0535デフォルトの名無しさん2016/02/27(土) 01:02:05.83ID:io3T81v1
まともな開発経験のある奴なんか今ここにいないでしょ。

開発経験が自慢ならその事例をここに出してね。
0536デフォルトの名無しさん2016/02/27(土) 01:06:15.91ID:LEd0hC1j
>>534
その2つの話を一緒にすんなよ
お前ほんとにアホだな
0537デフォルトの名無しさん2016/02/27(土) 01:12:50.91ID:LEd0hC1j
>>535
今度は経験のなさを棚に上げたか
次は何を議論の外に持っていく気だ?
0538デフォルトの名無しさん2016/02/27(土) 01:29:24.51ID:io3T81v1
だいたいスクリプト言語のスレでネイティブ言語の仕様にケチをつけるとか
プログラミングをなめ過ぎだろ。

まあ、俺が天才プログラマーだったころはテストなんてコーディングが終わった後に数パターン試すだけだったけどな。
最も長い時間をかけてテストしたのはテトリスを作った時だった。
最高レベルでの実行速度の調整をするのに1時間かかった。
というか、1時間かけないとそれでいいかどうかが分からなかった。
つまり、ゲームをしていたんだな。動くのは間違いなく一発で動くので。

昨日思い出したばっかりだけど
俺がVHSテープ開発の現場に乗り込んだ時はその場でちょちょいのちょいで工作機械の動作を変更していたよ。
さすがに本番のラインのプログラムを変更するときは休日を使ってプログラムをいじったけど
なにをどういじるかを決めるのはその前の二日間だけだった。
ただ見るだけ。

そんな感じで簡単にできてしまうので
開発のやり方というのはいまいちよくわからない。

ラインをいじる前に、その説明を紙に書いてくれと頼まれたので午後7時まで残って5時間くらいかけて説明書を書いた。
手書きで、たぶん300ページくらい。
1ページ1分か。まあそんなもんだろ。

とにかく、300ページくらいの仕様を2日観察しただけで改良し頭の中で処理できるくらいの能力があったわけだ。

僕は書くのが超早かったけど、さすがに手がつかれたので半分くらい書いたところで
「英語で書いていい?」って聞いてOKをもらったので英語で書いた。
やっぱり英語は書いてて疲れない。

本番のプログラミングにかかった時間は合計で1時間くらいかな。
動作チェックで1日かかってると思うけど。
もともと動いてるプログラムを読んで改良を加えるのに1時間だからね。
ライン上のすべての装置のね。
0539デフォルトの名無しさん2016/02/27(土) 01:33:35.56ID:g3DkZYTV
>>538
長い。もう少し簡潔に書け。
0540デフォルトの名無しさん2016/02/27(土) 01:44:21.01ID:io3T81v1
>>539
アセンブラやネイティブ言語は難しい。一般人にはね。
スクリプト言語は一般人に天才アセンブラーと同等の能力を与えてくれる。
だからスクリプトキディは思い上がったことを言うようになる。
「C言語は間違っている」などとね。
なんかそういう逸話がなかったかな。グリム童話か何かで。
0541デフォルトの名無しさん2016/02/27(土) 02:04:18.45ID:g3DkZYTV
>>540
長い。

俺天才ハッカーwww

の一行にまとめられるだろ
0542デフォルトの名無しさん2016/02/27(土) 03:30:29.35ID:Y/UBH+ZW
Cは間違っているとは誰も言ってないよね
ただ、ライブラリがスクリプト言語から使いにくいって言ってる人がいるだけで
天才でも日本語は読めないものなんだな
0543デフォルトの名無しさん2016/02/27(土) 03:56:44.33ID:GVFLbtKJ
みんな普通に使ってるのになw
0544デフォルトの名無しさん2016/02/27(土) 05:37:59.49ID:0gvyIPvr
PyCUDAみたいに、偉い人がラッパー書いてくれるまで待ってればええんやで
0545デフォルトの名無しさん2016/02/27(土) 05:54:31.45ID:g3DkZYTV
同じライブラリでも、ラッパーかぶせて別言語から使うと使いやすくなるんだよな。
C言語ってなんであんなに使いにくいんだろうって思う。
0546デフォルトの名無しさん2016/02/27(土) 09:14:06.03ID:SO8Re7cY
同じ文章でも、意訳をまじえて日本語訳すると読みやすくなるんだよな。
英語てなんであんなに使いにくいんだろうって思う。

みたいなもんじゃねーのか。自動変換は機械翻訳みたいなもんだ。
単に元の言語が苦手か、言語の文化の違いか、原因は様々だろうけど。
0547デフォルトの名無しさん2016/02/27(土) 09:18:05.37ID:0gvyIPvr
SWIG
ってのがあるやん、Cライブラリをスクリプトから使う
どういう感じなの?
0548デフォルトの名無しさん2016/02/27(土) 09:26:40.88ID:SO8Re7cY
>>546
ああ、C言語からなら使いやすくて、他言語からだと使いづらいライブラリの話な。
たまにC言語からでさえ使いづらいC製ライブラリもあるからな…
0549デフォルトの名無しさん2016/02/27(土) 09:37:07.29ID:GGk6IaQQ
>>546
>英語てなんであんなに使いにくいんだろうって思う。

機械翻訳を実装トライすると実感するのが、英語は意味空間解釈の時系列が非線形過ぎるという事。
なので読むときは、逐次単語訳を繋ぐのではなく、全体を流し読みして文意抽出をした方が楽。
0550デフォルトの名無しさん2016/02/27(土) 09:45:37.04ID:SO8Re7cY
>>549
いやそこを解説されても…
>>545 と >>546 を対比させるための方便ですし

あと、開発順は C言語 → 他スクリプト言語 という文脈だけど
英語と日本語はどちらが先ってものでもないから、前提も違うしな
0551デフォルトの名無しさん2016/02/27(土) 09:50:39.27ID:io3T81v1
> Cは間違っているとは誰も言ってないよね

変更しろというのは間違っているからこそじゃないのかそうなのか
お前らは正しく動くプログラムを変更するのか。


> みんな普通に使ってるのになw

そうやってお前らは話を捻じ曲げる
まずは日本語勉強しろ
日本語が正しく理解できてないから英語もできないんだ
0552デフォルトの名無しさん2016/02/27(土) 11:44:32.39ID:V2uKDAxq
よく考えたらwindowsは別に情報を無料で教える気なんてなかったんだから
dllがメタデータを教えてくれない仕様は合理的じゃないか
0553デフォルトの名無しさん2016/02/27(土) 12:01:39.36ID:GVFLbtKJ
必要なら公開されてる仕様とか見ればいいだけなのにね
そういうのを調べないで使うって方が危険だよねぇw
0554デフォルトの名無しさん2016/02/27(土) 12:10:37.05ID:3w1ycjl3
この言語のライブラリ俺の使ってる言語から使いにくいから変えてくれよって事か
誰が日本語読めないかは明らかだな
0555デフォルトの名無しさん2016/02/27(土) 15:44:11.65ID:Y/UBH+ZW
>>551
>変更しろというのは間違っているからこそじゃないのかそうなのか

誰もそんなこと言ってないわけだが
0556デフォルトの名無しさん2016/02/27(土) 15:48:05.67ID:Y/UBH+ZW
日本語すら読めないくせに偉そうな奴はどうしようもないな
今さらC言語のライブラリの仕様を変えろとか、そんな横暴なこと言う奴いるわけねーし
そういう常識を念頭において他人の文章が読めないのをアスペって言うんだろうな
0557デフォルトの名無しさん2016/02/27(土) 15:54:37.05ID:Y/UBH+ZW
リアルでこういうやつと会話するのは不可能なんだろうな
どうでもよい言葉の節々ばかりに着目するとか、そんな感じなんだろうかね
皆常識の上でテキトーに世間話しているのに、一般常識が無いんじゃどうしようもないね
常識が無いから言葉の一部だけに着目してあーだこーだ言ってくるんだろうな
子供の屁理屈www
子供が常識無いのは仕方ないが、おっさんがそれではね
0558デフォルトの名無しさん2016/02/27(土) 16:01:27.80ID:Y/UBH+ZW
例えば、「日本も車は右側通行で左ハンドルの方が良かったね」
と、言った人がいたとするでしょ?
実際それはその通りなわけで、妄想交じりに今更論の理想を言ってるに過ぎないわけだが
その人だって別に、今更左ハンドルにしろとか、それが可能だとか、思っているわけじゃないことぐらい分かりそうなもの
0559デフォルトの名無しさん2016/02/27(土) 17:36:56.30ID:GVFLbtKJ
仮定に説得力が無いから、その結果、説明にも何の説得力も無い
0560デフォルトの名無しさん2016/02/27(土) 17:50:45.14ID:V2uKDAxq
その場で本人に言うのがベスト
後になって、こういう奴いるよねって味方を集めるのは、一対一で勝てなかったってこと
0561デフォルトの名無しさん2016/02/27(土) 20:26:04.32ID:NGoIxJDI
いやマジでここ最近オッパイソンさんのリリースラッシュは何なの?
3月にも出るし毎月数冊出てねえか?www
0562デフォルトの名無しさん2016/02/27(土) 22:36:50.20ID:NGoIxJDI
機械学習で人気? 言語別年収1位は651万円でPython、スタンバイが調査
http://jp.techcrunch.com/2016/02/25/language-income-ranking/
0563デフォルトの名無しさん2016/02/27(土) 22:45:38.23ID:xfshl45r
派遣ドカタの割合に反比例してるだけだろこれ
0564デフォルトの名無しさん2016/02/27(土) 22:51:30.20ID:cWIFZRAa
仕事でpython書いてたけどその半分くらいだったぞ
0565デフォルトの名無しさん2016/02/27(土) 23:20:44.37ID:V2uKDAxq
機械学習ってpythonよりもっと速い言語の方がいいんじゃないの?と言ってみる
0566デフォルトの名無しさん2016/02/28(日) 00:19:37.98ID:5eQj6Dkt
話それるけど、脳は、ギガヘルツのCPUなんかなくても、すばらしい能力をもっている
やっぱノイマン型の電子計算機の延長であるかぎりだめだろう
0567デフォルトの名無しさん2016/02/28(日) 00:41:15.74ID:b7qY0//8
おちんちん
0568デフォルトの名無しさん2016/02/28(日) 00:51:31.79ID:8uZi9XeY
>>566
半導体のCPUなんて面積は切手くらいじゃない、
脳の面積はどのくらいだっけか
しかも皮質には多層で積み重なってて
内部の配線層も立体スパゲッティ
i7が100万個くらいを高速なネットワークで繋ぐくらいでないと
リソース的にかなわないんじゃないかと思います
0569デフォルトの名無しさん2016/02/28(日) 00:59:43.33ID:dpHobIH1
人間にできないことを機械がすればよいんだから、今の延長で良いだろ
人間では到底太刀打ちできない速度で万に一つも間違いなく計算したり
一度覚えたことはハードウェアが壊れない限り一字一句完ぺきに永久に覚えていたり

コンピュータは人間には出来ないことが出来るから価値が有るんだよ
人間もコンピュータもお互いにな
さもなくば、ターミネータの世界になる
0570デフォルトの名無しさん2016/02/28(日) 03:55:18.18ID:3V3Hoj/K
>>547
swigは基本自動で、痒いところも手動割当が簡単にできて超いい。
ネイティブAndroid開発に使ったけど、開発効率が激変する。
だけど更新が滞ってるのと使用者が少ないせいで、微妙な立ち位置。そんな感じ。
0571デフォルトの名無しさん2016/02/28(日) 05:06:48.00ID:CTSpMkZb
>>568
最新脳科学では縦方向に5層程度で2,30程度のモジュールのネットワークと考えられている
スパゲッティというほどではない。
0572デフォルトの名無しさん2016/02/28(日) 09:05:03.40ID:GpBzrwey
MSがXamarin買収するらしいな
モバイル分野はもうC#で決着か
0573デフォルトの名無しさん2016/02/28(日) 10:07:36.74ID:3V3Hoj/K
>>572
どうだろ。以前はPhoneGapのが使えるという程度だったからなあ。
今どれだけ進化してるのかな。
0574デフォルトの名無しさん2016/02/28(日) 11:16:15.00ID:L2QjY/1G
C#で泥もiOSも開発いけるのんか?
0575デフォルトの名無しさん2016/02/28(日) 11:30:57.44ID:depe+QNk
>>574
そうらしいね
昔iOSだと他言語は禁止されていたが、2010年には既に解除されていたようだ
対抗馬はむしろブラウザだけ借りる形のオフラインウェブアプリかな
0576デフォルトの名無しさん2016/02/28(日) 11:33:03.24ID:QIQTr9Pj
できるけど高かった
MSに買収されることで無料になる可能性が高い
0577デフォルトの名無しさん2016/02/28(日) 12:11:46.95ID:3V3Hoj/K
昔はそんなに制限なかったよ。
Monoが駄目すぎて(質的に)使えなかったけど。
0578デフォルトの名無しさん2016/02/28(日) 13:26:04.85ID:0IPYNjgU
C#使う人はいいけど作る人大変そう(小並感)
0579デフォルトの名無しさん2016/02/28(日) 21:36:18.09ID:qX9WRNgF
Railsを使うプロジェクトで1年ほど開発たけど、open classとmethod missingを把握することが辛くなってきた。脳内メモリが足りない。
0580デフォルトの名無しさん2016/02/29(月) 10:08:21.94ID:nByWuiD1
C++CLIのようなメタ情報ついたアセンブリをほか言語が使用可能なようにすれないい、ってことでしょ。
0581デフォルトの名無しさん2016/02/29(月) 10:29:58.47ID:6HaEf+Iy
40年前 C言語
20年前 Java
15年前 C# (.NET)
ハードの発展と過去の反省から、できることが増えるのは自然な流れだな

メタ情報の観点では、JavaScriptという機械語では退化の傾向だが
また進化をやり直すことになるのかな
JSから取れるのは関数名だけで、引数や型がわからないから、C DLLと似てる
0582デフォルトの名無しさん2016/02/29(月) 10:45:14.43ID:nFq7qn1m
>>581
引数も取れるが?

それを利用して、関数の定義に引数があれば〜という
タイプの非同期処理ライブラリがあるんだが。
0583デフォルトの名無しさん2016/02/29(月) 10:56:16.07ID:6HaEf+Iy
>>582
引数の数は Function.length で取れたね。それは訂正する
でも数だけじゃないの? arguments に触っていたら正確な値とも限らないし
0584デフォルトの名無しさん2016/02/29(月) 11:39:52.65ID:nFq7qn1m
変数に型がない=どんな型にも対応しているのだから数があれば十分だし、
argumentsのようなものは例外。めったに使わないのだから、その程度どうでもいい。
0585デフォルトの名無しさん2016/02/29(月) 15:42:49.77ID:Rh2l+sTx
JSはソースのままDLするから情報量の観点では退化しないよ
ソースと別にヘッダを用意する必要もない
だが、ヘッダをなくしても殆ど何も進化しないことが証明されただけだった
0586デフォルトの名無しさん2016/02/29(月) 17:16:20.81ID:Jh4yxlk4
npmの入門記事を読んだけど、ライブラリはただのテキストファイルだから
globalでなくってproject毎にlocalにinstallすること薦めてたりする

es6よりはtypescriptへ進化する方へ賭けるよ
babelを設定する手間はtypescriptを設定する手間と変わらないし
0587デフォルトの名無しさん2016/03/01(火) 00:42:23.54ID:THcyQoud
今日からjavascript勉強しまーす
頑張るぞ〜
0588デフォルトの名無しさん2016/03/01(火) 01:02:05.26ID:2k23NxY9
テキストファイルの読解力には格差がある
つまり学習コスト高すぎて無駄遣いの疑いがある
0589デフォルトの名無しさん2016/03/01(火) 04:29:44.83ID:zu9dHl7K
>>586
> npmの入門記事を読んだけど、ライブラリはただのテキストファイルだから
> globalでなくってproject毎にlocalにinstallすること薦めてたりする

テキストファイルなのが理由じゃないでしょ?
というか、Pure JavaScriptライブラリならそうだが、
バイナリもあるはずなんだが。

プロジェクトごとにインストールする理由は、
プロジェクトごとのライブラリのバージョンが違うからだよ。

別のプロジェクトのライブラリをアップデートしたら、
他のプロジェクトまで影響出ちゃったとかありえないでしょ?

この考え方は、nodeだけじゃなくて、rubyやpythonでも同じ
プロジェクトごとにインストールするのが今の主流。
0590デフォルトの名無しさん2016/03/01(火) 04:55:17.72ID:4sUvNp3q
ttps://nodejs.org/en/blog/npm/npm-1-0-global-vs-local-installation/
Install it in both places.
Seriously, are you that short on disk space?
It’s fine, really. They’re tiny JavaScript programs.
0591デフォルトの名無しさん2016/03/01(火) 05:05:41.51ID:zu9dHl7K
>>590
英語読みたくない人へ
http://3100.github.io/blog/2014/06/28/npm-global-vs-local.html
0592デフォルトの名無しさん2016/03/01(火) 10:25:31.60ID:/ttyk1GM
side by side でしょ 昔からある
Windows XP当時は馬鹿にされながらも今や一般的に
0593デフォルトの名無しさん2016/03/07(月) 22:35:50.83ID:QPL9M93K
そのころ馬鹿にしてた連中が今のDockerとか見たら発狂するだろうな
0594デフォルトの名無しさん2016/03/08(火) 08:37:59.90ID:c3cSycoQ
>>593
まぁ、そういう人達は、どちらにせよこの世界じゃついて行けない人達だよ。
0595デフォルトの名無しさん2016/03/08(火) 14:32:38.41ID:RxyrkoR/
何が出ても、「あー、俺も昔、おなじこと考えたことある。やっと実装、来たのか」って言ってコソーリ情報収集。
0596デフォルトの名無しさん2016/03/08(火) 16:12:14.80ID:c3cSycoQ
>>595
賢い。
0597デフォルトの名無しさん2016/03/09(水) 06:57:50.93ID:OSTywQv6
最近は、才能のある人たちが何処に向かって何を実装しようとしていて、
どこのコミュニティについていけば、無難にタダ乗りできるかしか考えなくなかったよ
コードなんて書くぐらいなら裏庭に核融合炉でも作った方が
もっとずっと幸せな人生なんじゃないかって、そんな気がするんだ
0598デフォルトの名無しさん2016/03/09(水) 08:38:44.91ID:/2RTk7Xo
あー核融合炉か、俺も中ニの時、おなじこと考えたことある。
やっと裏庭タイプ、来たのか
0599デフォルトの名無しさん2016/03/09(水) 09:21:46.36ID:DS2b3Gl+
俺は車に核融合炉のせるアイデアを持っていたな。
0600デフォルトの名無しさん2016/03/09(水) 11:03:38.77ID:OSTywQv6
ttps://www.ted.com/talks/taylor_wilson_yup_i_built_a_nuclear_fusion_reactor?language=ja
0601デフォルトの名無しさん2016/03/09(水) 11:59:23.12ID:KiIkCQ11
コミュニティは狐狗狸さんみたいなもんだろ
無難じゃなくて意外な結末を見てみたい時に使う
0602デフォルトの名無しさん2016/03/09(水) 17:29:54.17ID:gceSYQgA
核エネルギーって放射線が人体に有害じゃなかったとしたら最高のエネルギーじゃね?
コンビニで燃料棒買ってきて、制御棒抜いておけば放っておいても温かいんだぞ
冬には朝起きたらまず暖房機の制御棒を抜く作業がお決まりの仕事だったことだろう
0603デフォルトの名無しさん2016/03/09(水) 18:37:40.09ID:U2csdxnD
「Java開発者もSwiftやブロックチェーンを学んで」IBM幹部 (1/2)
>とはいえ、今回の発表で最もインパクトが大きかったのは、やはり“Swift on Bluemix”だろう。
>これは、iOS向けプログラミング言語としてスタートしたSwiftを、サーバーサイドアプリケーションのオープンな開発言語としても利用可能にする取り組みだ。
>そのために、IBMではSwiftコミュニティに参加してコードを提供(コントリビューション)しているほか、Swiftコードをテスト実行できる「Swift Sandbox」やSwift向けパッケージカタログなどの提供を始めている。
>さらには、すでに提供されているx86 Linux版Swiftだけでなく、今年の中頃にはメインフレームLinuxでも使えるようにする計画だという。
>IBMはなぜSwiftに注力するのか、という質問に対し、カーター氏は「Swiftを通じて世界中のモバイル開発者にリーチできる」からだと答えた。
>Swiftコミュニティは過去12カ月間で急成長しており、GitHub.comで「最大の言語」になるほど開発者からは人気が高い。その一方で、エンタープライズの世界では新たなサーバーサイド開発者を必要としている。
>そこで、サーバーサイドもSwiftで開発できるようにして、モバイルの世界にいる開発者をより多くサーバーサイドに(そしてBluemixに)呼び込もうというもくろみだ。
http://ascii.jp/elem/000/001/130/1130788/

案の定Swiftの天下が来そうだな(´・ω・`)
0604デフォルトの名無しさん2016/03/09(水) 19:15:52.26ID:6C51vxnv
androidも早くkotlinに移行すればいいのに
0605デフォルトの名無しさん2016/03/09(水) 19:33:53.53ID:wC8YUP1c
おまえらスクリプト言語のバトルしろよ
0606デフォルトの名無しさん2016/03/09(水) 19:43:50.22ID:vHYGdF7A
>>603
こんなところまでSwiftの宣伝しに来たの?
ゴリ推すと逆効果だよ
0607デフォルトの名無しさん2016/03/09(水) 19:52:35.98ID:EeWIJdrp
IBMに支援されてもなあ
その記事に出てるBluemixとか試したことある?
IBMのくせにビジネスどころか遊びで使うことすら躊躇われるクォリティだぞ
昔の栄光は見る影もない
0608デフォルトの名無しさん2016/03/09(水) 20:02:41.48ID:o4gUEAUb
IBMはAppleと提携してるからな
エンタープライズ向けにiPadなどを使ったソリューションをやってるから、
有利に供給を受けるためにAppleに媚を売っとくのは重要なわけ
0609デフォルトの名無しさん2016/03/09(水) 20:06:13.89ID:DqU70MS2
でも結局はSwiftさんを使えなければ話にならない時代が来るんでしょw
ならさっさと勉強しといた方がいいよね
0610デフォルトの名無しさん2016/03/09(水) 20:15:01.43ID:8kThrIH6
>>609
来ない
0611デフォルトの名無しさん2016/03/09(水) 20:20:48.01ID:DqU70MS2
でもモバイルはアップルさんの庭でやれない奴は仕事にならないじゃんよー
0612デフォルトの名無しさん2016/03/09(水) 20:25:46.67ID:o4gUEAUb
そうでもない
特にIBMが扱うような(金になる)分野だと、iPadやiPhoneを使うといってもネイティブアプリじゃなくて
業務システムをWebブラウザで触るだけというのがほとんどだよ
0613デフォルトの名無しさん2016/03/09(水) 20:47:30.81ID:rspRQwDu
もはやLL自体流行りはとうに過ぎたからこのスレいらんだろ。
次はgo、scala、rustあたりでスレ立てれば
0614デフォルトの名無しさん2016/03/09(水) 20:53:25.93ID:gceSYQgA
スクリプト言語は皆こぞって示し合わせたかのように動的型言語という過ちを犯したからね
0615デフォルトの名無しさん2016/03/09(水) 21:29:30.25ID:KiIkCQ11
>>614
Swiftが妙に偉そうだったりObjCやJSが見下されたりする理由は単にそれだけだね
AppleもIBMも寄与していない
0616デフォルトの名無しさん2016/03/09(水) 22:25:55.37ID:F5lnOBI6
動的言語=型が変わる、程度の認識の奴はまだまだ多いんだな。
0617デフォルトの名無しさん2016/03/09(水) 22:37:18.48ID:gceSYQgA
モルモン教はキリスト教の亜種みたいなもんで
キリスト教は罪を犯したときは懺悔して悔い改める風習がちゃんと有るので
Rubyの松本さんも、3.0で静的型を取り入れたいって言ってるね
過ちや罪を犯すことは誰にでもあることだからね、仕方ないね
0618デフォルトの名無しさん2016/03/09(水) 22:40:02.94ID:R7oQ7N64
動的言語と動的型言語のどっちの話をしているのか
0619デフォルトの名無しさん2016/03/09(水) 23:20:23.00ID:KiIkCQ11
強力な型システムの問題は
人間の責任感や正義感は不要という印象を与えることだ
そうすると人間自身が悔い改める風習は廃れる
0620デフォルトの名無しさん2016/03/10(木) 00:00:16.36ID:+k30OZL3
バトルもなにも地方都市だとJS+phpの仕事だらけです。
パイソンなんてラズパイやってる変態さんが使ってる言語という認識しかありません。
0621デフォルトの名無しさん2016/03/10(木) 01:45:21.85ID:IYu42M3/
そら、まともな情報系の大学を出たヤツから真っ先に地方から逃げ出すわ。
phpの代替にpythonを使えばいいだろ。
0622デフォルトの名無しさん2016/03/10(木) 03:10:07.42
Pythonは、自動でExcelやPDFのメール送るとか
ftpでファイルやり取りとか、スクレイピング
ネットのクライアント側に使ってるななぜか
サーバ側はPHPばっかりだ
0623デフォルトの名無しさん2016/03/10(木) 05:16:17.36ID:IYu42M3/
ふつうはscipy周りを使いたいと思うはずだけど
0624デフォルトの名無しさん2016/03/10(木) 09:03:55.73ID:/KMYK0BP
>>614
インタプリタ作るのもスクリプト書くのも圧倒的に楽だから
ぶっちゃけ原始的な言語
示し合わせるとか過ちとかそういう話じゃない

過ちがあるとすれば
プロトタイプで組んだシステムが【成功したあと】に
本格的な静的システムに乗り換えるタイミングが遅れること
0625デフォルトの名無しさん2016/03/10(木) 09:07:00.92ID:1xnVZ4wK
そうそう
これまではWebはあれこれ開発環境を模索する時期が続いてたから、
品質よりもやり方を改善していく方が結果的に良いものができてたわけ
それがやっと落ち着いてきて、品質を高めていく段階に入ったということだね
0626デフォルトの名無しさん2016/03/10(木) 09:12:16.69ID:IYu42M3/
RubyやPHPを使うぐらいなら、大喜びでgolangを覚えるよ
0627デフォルトの名無しさん2016/03/10(木) 09:35:34.69ID:cOoRDwdC
>>625
ウェブ業界では品質を高める方法が
高度にシステム化されてるのが素晴らしいよね。

テストコードによる自動化。
メトリクス測定による品質チェック
壊れることを前提とした冗長化による低コストのシステム構築
インフラまで含めたコードによるシステムの構築

手動と人海戦術による品質の担保とかいう人間的に消耗するやり方よりも
高い技術を使った品質の担保っていうのはやる気も出るし楽になるし素晴らしいな。
0628デフォルトの名無しさん2016/03/10(木) 09:36:09.20ID:BGKEE21p
>>605
なんで喧嘩煽ってんの?
0629デフォルトの名無しさん2016/03/10(木) 09:36:58.42ID:BGKEE21p
>>607
正直言って要らない。これが本音。
0630デフォルトの名無しさん2016/03/10(木) 09:37:40.48ID:BGKEE21p
>>626
おれはそれらやるくらいなら、Javaやるわ。
0631デフォルトの名無しさん2016/03/10(木) 09:46:13.84ID:yDg2+Nha
>>627
ウェブ業界で一括りっていうのが、おめでたいというかなんというか
0632デフォルトの名無しさん2016/03/10(木) 10:00:02.82ID:m0t72v/B
ごく一部の意識高い系の声ばかりが増幅されてるだけだからな
自動テストやソフトウェアメトリクスなんかSIerの方がまだちゃんとやってるわ
0633デフォルトの名無しさん2016/03/10(木) 10:02:02.64ID:cOoRDwdC
> SIerの方がまだちゃんとやってるわ
証拠ない。
ぐぐってもSIerの悲惨さしか出てこないし。
0634デフォルトの名無しさん2016/03/10(木) 10:12:57.07ID:la5WEUke
>>625
新しいものを作るのにどの言語が向くかではなく
使いたい既存のものに合わせて言語を選ぶだけになったのかな
棲み分けが進んで、バトルロワイヤルが起こらなくなってるんだろうな
0635デフォルトの名無しさん2016/03/10(木) 10:17:15.39
パナソ配下の某SIerはルールエンジン知らなかったので
ifがこれ何重になってんだよっていうソース書いて
その機能に関するバグてんこ盛りにしてたで
0636デフォルトの名無しさん2016/03/10(木) 10:18:46.98ID:la5WEUke
>>635
ソースを書いた時点でSIerでは無い
0637デフォルトの名無しさん2016/03/10(木) 10:19:00.82ID:cOoRDwdC
>>635
テストをしっかりやれば問題ないだろ
0638デフォルトの名無しさん2016/03/10(木) 10:35:42.64
>>637
でも、if (条件A) & (条件B)
で4通りテストがいるじゃない?
それが6重だと、4096通り必要になってまう
0639デフォルトの名無しさん2016/03/10(木) 10:39:07.66ID:cOoRDwdC
4096 × 1件あたり10秒かけたとしても
40960秒、682分、11.5時間程度である。2日あれば終わる。
十人で手分けすれば1時間ちょっとだな。
0640デフォルトの名無しさん2016/03/10(木) 10:48:32.36ID:/KMYK0BP
なるほど 6重のif が使える対価として妥当だな
0641デフォルトの名無しさん2016/03/10(木) 10:56:18.04ID:BGKEE21p
>>640
なんでswitch文はダメなわけ?
0642デフォルトの名無しさん2016/03/10(木) 11:24:53.49ID:uXmkzhPs
>>638
ifのネストで実装したら4096通りになるテストが、ルールエンジンだといくつに減るの?
0643デフォルトの名無しさん2016/03/10(木) 11:47:13.49ID:xOT5W4ii
ルールエンジンだと、個別のルール単位でテストすればいいから…
4条件×6個のif で24パターンかな

テスト支援環境?の話だとVerilogとかVHDLはすごいね
まあLSIでテストしないでバグ残ったらちょう痛いから当然か
0644デフォルトの名無しさん2016/03/10(木) 16:43:59.00ID:9KSS9t5I
テストをしっかりやれば、の定義があやふや過ぎるだろ。

マトリックス書いてあり得ないケース潰して、分配則とドモルガンでまとめて手数が少なくなるようにテストケース作ったら、
あとは人海戦術でもツールでも結果が同じになる事が保証できたら何でも良くないか?どのみち自分でかけるのは単体テストレベルだろうし。

CIツール使ってデグレ検出とか言うけど、変更点のテストケースの精査もせずにただツール通したら意味ないし、即ちそれで手数が劇的に減る訳では無いだろ。
技術で品質を担保するって発想自体おかしいわ。
品質を担保する為に、何かしらの方法を使うだけ。

自動テストは別に技術じゃなくても何とでもなるしね。
テスト屋に挙動の変更点と、それで直したテストケースと、出荷パックを投げるだけ。
0645デフォルトの名無しさん2016/03/10(木) 16:47:47.90ID:cOoRDwdC
テストケースの精査とかはどちらでもやるだろ?

どちらでもやる部分に関しては差がないんだから、
それを持ち出す必要はないよ。
0646デフォルトの名無しさん2016/03/10(木) 21:48:25.92ID:FMY2mhqF
>>645
総合すると、
・テストケース作るのは人間。
・品質の担保はテスト自体ではなく、テストケースによって行われる。
・テストケースはどちらでも等しく作る。
・どちらでもやる事は除外する。
≡品質は人間によって保証される

だよね。
全く「技術で品質を担保する」のでは無いんだから、分かってればいいよ。
0647デフォルトの名無しさん2016/03/10(木) 22:54:50.44ID:XIXQ4NCN
>>643
それは変な話。ルールエンジンを使ったからといってパターンが減るわけじゃない。
もともと「4条件×6個のif で24パターン」で済むなら最初から6重のネストになんか
しなけりゃいい話で。
0648デフォルトの名無しさん2016/03/10(木) 23:39:22.11
状態遷移使うと、状態ごとにテストすればいいので
掛け算から足し算になってケース数は減るよね
0649デフォルトの名無しさん2016/03/10(木) 23:58:10.65ID:1xnVZ4wK
「状態」もパラメータの一つに過ぎないんだから結局掛け算だろ
ififififに比べるとテストコードの共通化は多少やりやすいかもしれないが
実質的には同じだ
0650デフォルトの名無しさん2016/03/11(金) 00:37:29.37ID:Vl37e6Fr
もしバグを見つけたら賞金がもらえるとしたら
テストケースに漏れがある方がコスパは良さそう
完璧なテストだけが正解ではない
0651デフォルトの名無しさん2016/03/11(金) 03:22:02.39ID:GyLU4RX1
>>647
品質を担保するには時間(コスト)を減らさないといけないんだよ。
その為に技術が重要になる。
0652デフォルトの名無しさん2016/03/11(金) 03:30:54.24ID:gqSPdP7N
VHDLとかだとこんな話だったか
入力が1/0の8ビット、256パターンあって内部状態が4ビットで16種類あるとして
256x16全部ではテストパターンは4096通り必要

「この状態の時はこれとこれの信号しか見なくていい」
とか条件ないと節約にならないんだったと思うわ
例えば状態一個につき二つの信号見ればいいなら、4×16で64パターンくらいで済むようになる

ソフトで言うと、
引数による閾値が12個有る関数のテストは4096種で大変なので、閾値が少ない関数(ルール)複数に分解する

そりゃそうか?
0653デフォルトの名無しさん2016/03/11(金) 09:53:50.43ID:exfMFwE7
>>651
言い方弱くなってるな。
品質を担保するには時間ないし工数を減らす必要がある、か。
そんなわけ無いだろw
時間ないし工数をただ減らすだけなら、テストせずに出荷して問題が起これば対処したら良いだけだよ。
先行β版の有償試用を提供すればいいだけ。
品質はこれです、とSLA決めて同意できればそれで良いんだから。

技術とはほぼ関係ない。
その上で、便利に使えるものは便利に使う、くらいの気持ちで使わないと大怪我するよ。
なんかWeb屋って自動テストに拘るけど、テストしましたよってエクスキューズが欲しいのか、手でやったテストがレビュー通らなかったとか、トラウマでもあるのかなって思ってしまうわ。
0654デフォルトの名無しさん2016/03/11(金) 09:57:06.68ID:exfMFwE7
>>652
ステート持つと、組み合わせはもっと爆発するよ。

だからモジュール単位で作ってテストかけて、組み合わせの数を絞ってから、塊としてのインとアウトだけしっかり定義して、塊同士の結合試験やって、結合試験やったものを集めて総合試験するんだし。
ソフトウェアでも同じ。
0655デフォルトの名無しさん2016/03/11(金) 12:35:00.56ID:GyLU4RX1
>>653
やっぱりその程度の発想かw
終わっているな。

周りを見回してみなよ。
SI業界とかソフトウェア業界じゃないよ。

どんな業界でも新しい技術を取り入れることで生産性を上げている。
積極的に取り入れる意思がないとだめだよ。

何かを取り入れれば生産性が上がるだろうという発想じゃなくて
生産性を上げるために技術開発をするんだよ。積極的にね。
それはすなわち今までやってきたことと違うことをやるということ。

> なんかWeb屋って自動テストに拘るけど、テストしましたよってエクスキューズが欲しいのか
違うね。ウェブ屋がこだわっているのは生産性。
テストは時間がかかる。だから時間がかからないようにするにはどうするか?
その答えを追求している。

あんたらって、あれでしょ?どうすれば顧客から怒られないか?を考えて行動しているでしょ?
顧客が満足するかではなくて、顧客が不満を持たないかで行動している。
だからどうしても開発が遅くなる。遅くなるという不満を与えないために
最初から長くなるという理由を探している。
0656デフォルトの名無しさん2016/03/11(金) 12:51:33.10ID:ca2UWNqv
長文乙だけど、ここスクリプト言語スレなんだよね
業界どうこうはよそでやれよ
0657デフォルトの名無しさん2016/03/11(金) 12:54:20.74ID:We4YLNv1
これが技術がなく顧客の不満も知らない典型的な自己満ウェブ屋です
0658デフォルトの名無しさん2016/03/11(金) 12:55:49.48ID:exfMFwE7
>>655
使わずに言ってる訳じゃなくて、使って言ってるんだけどね。
勿論だけど、コミット時の自動ビルドやら、複雑性検査やら、敢えて前回のレシピでテストしての機械的仕様変更抽出、レポート挙げは有意義に動いてるよ。
新しい技術だから大丈夫、これを使えば品質が上がる、って発想自体に疑問を唱えてるだけで、
有意義に使えば有意義に使える事は否定してない。

生産性を上げるために技術を取り入れるってのは当たり前。
テストに時間が掛かるから、テストに時間を掛けないようにするには、別に技術じゃなくても良いし、それは効率の問題であって品質の問題じゃない。早くて乱暴な話をすると、札束でテスト屋引っぱたけば同じ事が出来る。
そこにコストとかそういう事を入れるから、新しい技術を使おうか、となるだけで。

うちはパッケージ作ってるからまたSIerと話は変わるけど。
品質が高いという満足と、開発速度が不満だと言う不満は、
満足と不満と見れば対のように見えるけど、品質と開発速度と見た場合は全く対では無いから、
解決方法として混同しちゃいかん、という論旨なんだが。

最初から長くなる理由なんか要らんよ。正しい期間が出ればそれで良い。
0659デフォルトの名無しさん2016/03/11(金) 13:01:39.73ID:GyLU4RX1
> 新しい技術だから大丈夫、これを使えば品質が上がる、って発想自体に

そんなこと言ったっけ?むしろ新しくないし、普通だし。
っていうかテストの自動化が新しいという発想が出るほうがおかしいよw

> それは効率の問題であって品質の問題じゃない。
品質を上げる方法が、効率を上げることなんだよ。
短い時間でできるようになれば、従来はできなかったこともできるようになる。
0660デフォルトの名無しさん2016/03/11(金) 13:02:42.46ID:T/ph3NsD
ジャッジの結果、ID:exfMFwE7の勝利となりました。
ID:GyLU4RX1はこれ以上頑張っても視野の狭さが露呈するだけなので、とっとと引き揚げてください。
0661デフォルトの名無しさん2016/03/11(金) 13:24:07.68ID:yWvwgvTj
開発者たちの自己満足な機能を追加して、
本来必要としている機能に致命的なバグがあったらキレるよな
0662デフォルトの名無しさん2016/03/11(金) 13:30:13.77ID:GyLU4RX1
>>660
必死だなw
0663デフォルトの名無しさん2016/03/11(金) 13:31:37.78ID:GyLU4RX1
>>661
本来必要としている機能にバグがなければ
何も問題ないのでは???
0664デフォルトの名無しさん2016/03/11(金) 14:00:09.56ID:Vl37e6Fr
>>659
>短い時間でできるようになれば、従来はできなかったこともできるようになる。

時間が余れば、足りないところに時間が滴り落ちてくるとかいうアレだな
こういうのを読んで直感的にバグがありそうって分かるやつが優秀なんだよ
0665デフォルトの名無しさん2016/03/11(金) 14:01:54.81ID:GyLU4RX1
>>664
お前の文章にはバグがありそうだねw
0666デフォルトの名無しさん2016/03/11(金) 14:03:40.91ID:+X87dz7B
>>663
それは成熟した技術にこそ言えることだろ。
言ってること滅茶苦茶だな。
0667デフォルトの名無しさん2016/03/11(金) 14:10:17.99ID:GyLU4RX1
>>666
ん? 何が成熟していないと?
0668デフォルトの名無しさん2016/03/11(金) 14:17:17.81ID:+X87dz7B
>>667
新技術=成熟していないだろ。
日本語どころか論理的思考も不自由なのかお前は…。
0669デフォルトの名無しさん2016/03/11(金) 14:31:39.53ID:GyLU4RX1
>>668

>>659で新技術じゃないって言ったけど?
> んなこと言ったっけ?むしろ新しくないし、普通だし。
0670デフォルトの名無しさん2016/03/11(金) 14:51:38.16ID:49om0mRF
>>663
そういう無難な奴はとっくに入っている
誰にも気づかれずに秘かに侵入している

ヤバい奴はグズグズと遅らされて
望まれぬメジャーバージョンアップとして強引に入ってくる
0671デフォルトの名無しさん2016/03/11(金) 15:05:41.38ID:exfMFwE7
>>659
>>627 高い技術を使った品質の方が良い
>>651 品質を上げるにはコストを減らす必要がある≒生産性を上げると品質が上がる(※)
>>655 生産性を上げるために新しい技術を取り入れる
を挙げてるんだよね。

※が破綻してることはおいといて。

従来は出来なかった、が存在するのがおかしい。
時間が無いから充分なテストしてないモジュール納品してましたって事か?
逆に言えば、充分であればそれ以上はする必要が無い。

それは、品質が上がったんじゃなくて、やっと品質が保証出来ただけ。

新しい技術じゃない?とは言ってない?
>>655
で言ってるよw
0672デフォルトの名無しさん2016/03/11(金) 15:17:55.51ID:GyLU4RX1
>>671
意味が違うw

その会社にとっては新しい技術であって
世間一般にとっては新しくもなんともない。
0673デフォルトの名無しさん2016/03/11(金) 15:20:11.59ID:GyLU4RX1
> 時間が無いから充分なテストしてないモジュール納品してましたって事か?

残業してな。

そんな余裕のないところでは、新しいことに挑戦することも出来ない。
その結果、前例がないということで、いつまでたっても
何も変わらないことになる。変えようと思っても前例はないし、時間もない。

要するに悪循環ってやつだ。
0674デフォルトの名無しさん2016/03/11(金) 16:10:02.32ID:exfMFwE7
>>672
どの会社の事を指してるんだろう?
うちは使ってるんだけどね。

>>673
お前一体何想像してるんだ?
余裕があるないに関わらないだろ、それ。
そもそも「残業して」って見積もりが甘いか、そうでもしないと仕事取れないだけじゃないか?
新しい事をする、ってのも、余裕があるからやるんじゃないよ、本来。
新しい事をするって計画を立てて、アウトプットを明確にしてやるもんだよ。
そうでない自慰行為は、家でやって欲しいもんだ。
0675デフォルトの名無しさん2016/03/11(金) 16:15:33.86ID:nAypi/ek
さすがに学生だろ
Web屋でもこんなお花畑見たことないわ
0676デフォルトの名無しさん2016/03/11(金) 16:18:31.89ID:ca2UWNqv
技術的に遅れてる会社がこのままではマズイぞっていうのは中の人たちが
考えればいいことであって、外からギャーギャー言うのは好きじゃないな
しかもスレ関係ねえし
0677デフォルトの名無しさん2016/03/11(金) 16:40:47.01ID:0Hu19p0z
>>676
ですね
0678デフォルトの名無しさん2016/03/11(金) 17:08:37.58ID:+X87dz7B
現実のWeb系の環境なんてテストフレームワークも野暮ったいのにね。
mongoやangularなんかに夢見てた類の人かな。
という事で>>675に一票。
0679デフォルトの名無しさん2016/03/11(金) 17:09:43.46ID:FPsQG88O
おまえらスクリプト言語のバトルしろよ
0680デフォルトの名無しさん2016/03/11(金) 17:41:34.73ID:exfMFwE7
>>678
jQueryでアホがDOM崩壊させる→Seleniumで感激したけど、
VMフレームワークの登場で、DOM構造とか壊れにくいけど、今度はサーバも含めたデータ構造まで構築してテストしなきゃならんとか、日進月歩だしね。

うちはSeleniumはPythonでドライバ書いてるし、>>634の言うとおり、適材適所で言語選定する時代になったのかもな。
0681デフォルトの名無しさん2016/03/11(金) 18:47:15.45ID:SWPjPYYe
>>679
喧嘩する奴はタダの馬鹿。
0682デフォルトの名無しさん2016/03/11(金) 18:52:42.25ID:FPsQG88O
>>681
スレタイに「バトルロワイヤル」ってあるんだが、目ついてる?
0683デフォルトの名無しさん2016/03/11(金) 20:03:51.95ID:Vl37e6Fr
速すぎて見えないバトルって漫画でよくあるだろ
現実のバトルは陰湿すぎて見えないんだよ
0684デフォルトの名無しさん2016/03/11(金) 20:23:20.99ID:SWPjPYYe
>>682
プww
0685デフォルトの名無しさん2016/03/11(金) 22:35:44.55ID:F3PNHT3l
ルールエンジン君が話を引っ掻き回してウヤムヤにしたという印象。
0686デフォルトの名無しさん2016/03/12(土) 01:01:11.31ID:DXbZ87aH
>>632
あいつらはテスト項目のドキュメントだけは大量に出してくるな
0687デフォルトの名無しさん2016/03/12(土) 01:26:50.60ID:MdoZbOS8
SIerは大量に資料を作ることが
真面目に仕事をやってる証だと思ってるんだよw
0688デフォルトの名無しさん2016/03/12(土) 02:05:29.00ID:ZYqjIn06
SIerはウォーターフォールを未だにやってるからな
ああいう世界では確かに自動テストは無駄だと思うわ

Webのような継続的なリリースがあるところでこそ自動テストは役に立つからな
そりゃ1回(もしくは数回)のテストのためにわざわざ自動テストを書こうとは
思わないわな
0689デフォルトの名無しさん2016/03/12(土) 02:49:04.48ID:Ju2LSRuA
いくら継続的リリースが、とか、テンポっちゃえば良いとかそういう発想でも、
データが巻き戻せないと意味ないからな。
0690デフォルトの名無しさん2016/03/12(土) 03:04:10.82ID:qLJjevmt
>>678
Foursquare やForbes、googleの技術者がこんなとこ来るわけないだろ
0691デフォルトの名無しさん2016/03/12(土) 03:20:33.69ID:Ju2LSRuA
>>690
mongoでドキュメント志向DB、スキーマレスだ!
→ノウハウなさすぎて弁慶の仁王立ち
angularでリッチクライアントだ!
→クラサバ的作り方を理解できないjs書きがマトモな品質のコードを書けなくて燃え上がってる所に、
コールバックとかなんだそれみたいなクラサバアプリ屋が投入されて、
いよいよカオスになってる
みたいな話なんじゃないの?
0692デフォルトの名無しさん2016/03/12(土) 08:24:16.21ID:MdoZbOS8
>>691
カオスの原因(技術力不足)をどうにかしよう。
0693デフォルトの名無しさん2016/03/12(土) 08:41:25.89ID:+KV61A6e
そもそもまともな実装技術があるならむやみにあれこれ入れる必要も少ないんだけどね
現実にはSQLわかんないとかJSONで直接出し入れできるのが便利だとかでmongo入れちゃうようなアホばっか
0694デフォルトの名無しさん2016/03/12(土) 11:14:24.55ID:E7Edoi4N
アホにもわかるように教えてほしい
スクリプト言語でcgiの時代がなんで終わったのか
まさか某言語は起動が遅すぎてcgiに向かないとか?
0695デフォルトの名無しさん2016/03/12(土) 11:21:02.29ID:+KV61A6e
フレームワークがアホみたいに肥大化してロードに時間がかかるようになったから
0696デフォルトの名無しさん2016/03/12(土) 11:30:29.77ID:EoQAsOaz
儲かる分野が狭く特化されてきて
それ用の技術が洗練されてきたから
0697デフォルトの名無しさん2016/03/12(土) 11:40:05.62
>>694
別に昔のperlのcgi持って来て、mod_perlで動かすようにしてもええんやで
0698デフォルトの名無しさん2016/03/12(土) 11:49:28.87ID:lny39CUL
>>692
そうだねえ、Web屋さんを教育しといてね。
0699デフォルトの名無しさん2016/03/12(土) 13:01:51.25ID:MdoZbOS8
>>968
よーくわかってるじゃないかw

自分の胸に手を当てて考えてみな。
誰が憎いのかを
0700デフォルトの名無しさん2016/03/12(土) 13:11:35.48ID:xmc3dh7U
>>699
0701デフォルトの名無しさん2016/03/12(土) 13:29:52.19ID:MdoZbOS8
>>698の間違いだね。
訂正を促してくれてありがとうw
0702デフォルトの名無しさん2016/03/12(土) 14:34:58.89ID:lny39CUL
>>699
誰も憎くはないよw。
js/phpだから、すぐ直すから、いつでもリリースできるから、そのためにテストは自動化して何度もかけるから
みたいな思想で作られたフロントエンドがゴミだなぁって思ってるだけ。

手を動かす前に考えるフェーズもっと取ったら?って思う。
楽だから、慣れてるから、って全部ボタンやら領域のクリックイベント拾ってjQuery使うんじゃなくて、
これは実質このメニューのステートの切り替えだから、チェックボックス+CSS3の隣接セレクタの方が適当だな、とか。

Web屋はそもそも、ドキュメントをどう考えてるんだろう。
どうせスタイル当てるからって全部DIVで書いたりするし、ポップアップを動的に作る時(!)にわけわかんない所に要素足してfixedで引き千切って画面の真ん中に持ってきたりするし。
0703デフォルトの名無しさん2016/03/12(土) 14:36:31.17ID:MdoZbOS8
なぜか自動化すると、その他がおろそかになるって考えてるなw

お前が言う○○したら?っていうのは自動化することで
空いた時間で、手動の場合よりも、より多くやってるんだよ。
0704デフォルトの名無しさん2016/03/12(土) 14:39:10.92ID:ggoRgLi7
>>702
お前がやれって言ったことは、全部してますーw

お前が書いていることは全てお前の周りができてないことだろwww
0705デフォルトの名無しさん2016/03/12(土) 14:46:31.27ID:O6LMe2aR
自分以外はCIしてない前提で話してる奴がいるよなw
0706デフォルトの名無しさん2016/03/12(土) 14:52:00.27ID:t9dltuNa
というか、CIしてないってありえないだろw
0707デフォルトの名無しさん2016/03/12(土) 14:52:35.90ID:7VyaL0td
ぶっちゃけCIしてない所はソフトウェア業界から
足を洗ったほうがいい。
0708デフォルトの名無しさん2016/03/12(土) 15:10:00.21ID:lny39CUL
>>703
そんな事言ってないじゃんw
何度も言うが、やってるよ。
前回レシピからの仕様変更点の機械的洗い出しとかしてる。

>>704
やれって言ったことって具体的にどんな事?
当たり前の事しか書いてないのに、やらされてると思う方がおかしいな、って思うんだけど。

うちの協力会社さんはその辺丁寧だよ。
展示会で、「機器メーカーって画面周り苦手でしょ、名刺もらって!」みたいなWeb専門屋が、どこも確かに激安で。
どんなもんかと思って見せてもらったらそう言うアホみたいな仕事してたから、
世のデザイン屋上がりのWeb屋ってこんなもんなんだなーって思ってるだけ。
0709デフォルトの名無しさん2016/03/12(土) 15:17:36.94ID:Nh5EYxrT
意味不明な言い訳始めたなw
0710デフォルトの名無しさん2016/03/12(土) 15:58:59.07ID:VClvi+pB
今時自動化がないなんてありえないから論外として、
制約の緩いはずのテストコードで、利便性を妨げる行為は避けたほうがいいだろう。

でもフレームワーク頼りで頭全く使わずに、
テスト1サイクルの間に休憩時間とか言ってる馬鹿も実際よく見るからね。
ま、まさか効率厨だらけのここにはいないと思うが。
0711デフォルトの名無しさん2016/03/12(土) 18:02:43.58ID:LbFlQDpS
そろそろ何に噛み付いてるのかわからなくなってきてるな
言語がどうとかのバトルより前にその言語で飯が食えてるのか疑問
0712デフォルトの名無しさん2016/03/12(土) 18:05:47.52ID:buhzzVgc
>>711
なんで喰う食わないの話してんの?ww
別問題だろ。マ板にでも帰れよザコ
0713デフォルトの名無しさん2016/03/12(土) 18:12:04.37ID:LbFlQDpS
>>712
それが成り立たないならただの絵に描いた餅じゃん。
絵に描いた餅を美味い(に違いない)ともてはやすことくらい誰にでも出来る。
人が描いた絵なら余計に。

飯が食える程度になってれば逆説的に言って成り立っていると考えていいんじゃねえの?
0714デフォルトの名無しさん2016/03/12(土) 18:44:06.24ID:LbFlQDpS
乗ってる車が調子悪くなったとして、
整備工場のにいちゃんと、ただの車オタのDQNどっちに聞くかって話。

誰かがそいつに金払ってるってのは、少なくともそいつの仕事は金払っても良いって程度価値があるって事。

車オタの知識があるないとかそういう話じゃなくて、その時点で車の免許持ってない女の運転アドバイスレベル。

その免許持ってない女が集まって理想の運転について討論して、何かドライバーにとって有意義な結論がまとまると思うの?
ドラテクバトルロワイヤルするなら免許持ってて当然だよね、って話。
真似事が出来るから討論できるとか思うのは、遊園地のゴーカートに乗れる程度の奴が勘違いしてるようなもんだよ。
0715デフォルトの名無しさん2016/03/12(土) 19:01:17.40ID:qB7EO4wq
スクリプト言語バトルスレなのに、バトルすればなんでもいいと思ってる奴w
0716デフォルトの名無しさん2016/03/12(土) 19:08:04.94ID:Jsp+ISaa
python本のリリースラッシュは何なの?
pythonさんの覇権くるの?
0717デフォルトの名無しさん2016/03/12(土) 20:28:07.00ID:3tB1SOA1
意味不明なたとえ話程、要らない物は無いな
0718デフォルトの名無しさん2016/03/12(土) 20:30:36.82ID:MxC67hfW
もう全部Pythonでいいんじゃね?みたいな流れになったほうが、別に特定のスクリプト言語に思い入れがあるわけでもない俺には嬉しいな
0719デフォルトの名無しさん2016/03/12(土) 20:53:42.10ID:tjv4HiV4
>>718
JavaScriptがまさにその位置になる…と思っていたが、どうなんだろ
ブラウザを抑えているのは強いが、必ずしもそうでもないのかな
0720デフォルトの名無しさん2016/03/12(土) 21:03:51.28ID:3tB1SOA1
言語が乱立しすぎるとパワーが分散するから良くないというのは有るが
一方で多様性という物も大事で、ある程度の言語の乱立は必要なんだよね
しかし、乱立具合のコントロール不可能なので、ちょうど良いバランスというのは無理だろう

一つの答えとして
どの言語からも手軽に使える最低限の機能を備えた標準のライブラリ仕様を決めてしまうことだな
こうすれば少なくともライブラリに関してはパワーが分散しないので、いくら言語が増えようが
生産性の高い状態を保つことが出来る
自分でライブラリを作る場合も、そのライブラリの仕様に合わせておけば、どの言語からでも使えるし
自分で言語を作る場合も、仕様を合わせればライブラリで困ることは無い

bmpやpngはフォーマットが仕様で決まっていて、どのアプリからでも読み書きできるから非常に便利なわけだが
これと同じことをライブラリでもした方が良い
ソフトウェアエンジニアならそう考えるだろう

がんばってくれ
0721デフォルトの名無しさん2016/03/12(土) 21:12:47.14ID:3tB1SOA1
せっかく自分がPythonで作ったプログラムが、Rubyで使えないとか、そういう問題が発生してくるので
一つの言語に一本化してほしいということだと思うんだけど

本当の問題はライブラリの仕様が言語ごとに異なることなんだよね
もしライブラリやランタイムなどの標準的な仕様が決まっていたら
ある言語で作ったライブラリを、どの言語からでも使えるから
パワーも分散しないし、言語が乱立しても気にしなくて良いんだよ

つまり、言語の多様性を保ちつつ、パワーの分散を防ぐことが出来るね
0722デフォルトの名無しさん2016/03/12(土) 21:15:56.65ID:buhzzVgc
>>715
バトルする = 喧嘩する事だと思ってるアホがいるからな。
いわば、ディベートみたいなものだというのに。
0723デフォルトの名無しさん2016/03/12(土) 21:19:49.80ID:Nh5EYxrT
>>721
.NET Frameworkがその世界を実現している。
0724デフォルトの名無しさん2016/03/12(土) 21:20:59.90ID:3tB1SOA1
しってる
真似した方が良いね
F#みたいなマイナー言語がそれなりにやっていけるのは
ライブラリの仕様が共通化しているからに他ならない
0725デフォルトの名無しさん2016/03/12(土) 21:29:34.01ID:EHy/vOH7
>>720
そうそう,そろそろ言語から離れたところでライブラリ体系が確立してもいいと思うんだ
java のを C/C++ に移植できないものかねえ
0726デフォルトの名無しさん2016/03/12(土) 22:07:25.03ID:Nh5EYxrT
Cの問題点は例外が無いこと。
そのせいでCとその他の言語でどちらからも
使いやすいライブラリを作ることが出来ない。
0727デフォルトの名無しさん2016/03/12(土) 22:18:47.67ID:ZYqjIn06
>>720
その点はMatzも言ってた

「PerlがあるのにわざわざRubyなんか作ってリソース分散させてけしからん」と、とある人に
かみつかれたそうな

それに対するMatzの答えは人間は効率のみに動くものにあらず、モチベーションで動くものだ
0728デフォルトの名無しさん2016/03/12(土) 22:26:17.17ID:ucu1F7iL
>>726
C++で例外投げるライブラリがあったとして、他言語で使うなら結局binderで一旦catchしてから
その言語の例外なりに載せ替える必要があるんじゃないか?
エラーステータスを返すCライブラリと手間にそう差があるとは思えんが。
0729デフォルトの名無しさん2016/03/12(土) 22:30:55.76ID:Nh5EYxrT
>>728
その言語の例外に載せ替えられるなら問題なし。

例外の重要な機能は、例外が落ちた時点で(キャッチしていなければ)
呼び出しスタックを自動的にさかのぼって行く機能。

この機能をC言語で実現するには、すべての関数において、戻り値がエラーなら
上位に返すという処理を書かないといけない。つまり一行の関数呼び出しが、複数行になる。

例えば、例外がある言語であれば、 foo(bar(baz()) と書けるコードが
(面倒くさいので省略)というコードになる。

これでは、C言語でライブラリを使っているという感覚ではなくて、
独自のコーディングルールを追加した"書き方"になってしまっている。
0730片山博文MZ ◆T6xkBnTXz7B0 2016/03/12(土) 22:42:03.20ID:PAxzfn3Q
C言語にはsetjmp/longjmpという関数があって、
これを使うと関数呼び出しを飛び越えることができる。
0731デフォルトの名無しさん2016/03/12(土) 22:44:35.61ID:Nh5EYxrT
>>730
それは例外の動きとは違う
0732デフォルトの名無しさん2016/03/12(土) 22:52:29.74ID:EHy/vOH7
例外?
C++ のアレで妥協できないか?
C でも setjmp/longjmp で代用できるので,それを決めうちで使うとするのなら十分射程に入る
0733デフォルトの名無しさん2016/03/12(土) 22:54:48.10ID:EHy/vOH7
>>731
いや,わりと setjmp/longjmp でいける
C で互換を書くとすればたぶんこれでやれるはず
0734デフォルトの名無しさん2016/03/12(土) 23:05:47.37ID:3tB1SOA1
どっちにしたって、C言語のライブラリは、どの言語からも利用できる標準的なライブラリ仕様、には成り得ないよ
Cヘッダありきの仕組みだからね
移植すれば利用可能というのがせいぜい

現状だと、.netかJavaVMにでもタダ乗りするのが正解かと
0735デフォルトの名無しさん2016/03/12(土) 23:11:56.77ID:3tB1SOA1
F#やScalaは利用者が少ないのに使っている人たちはこれと言って困っていない
とくにF#はかなりマイナーなのにな

本来、ライブラリの仕様さえ統一されているなら、言語のシェアは気にする必要ないんだよ
ライブラリを作る側も、それを利用する側も、言語を作る側も、みんなが幸せになる
バトロワスレも要らない
0736片山博文MZ ◆T6xkBnTXz7B0 2016/03/12(土) 23:15:20.27ID:PAxzfn3Q
>>734
Cヘッダから読み取った型情報を完全に他の言語で利用可能にすればいいんだろ?
ちょうど作ろうと考えてたところだ。俺が一ヶ月で作ってやろうか?
Amazon券3000円賭けても良いぜ。
0737デフォルトの名無しさん2016/03/12(土) 23:19:56.88ID:3tB1SOA1
どっちにしたってCのライブラリはGCを想定していないし
上にも挙がっているが例外も無いので
結局ラッパーを書かなきゃ楽に使えない

どの言語からでも使えるライブラリの標準仕様のあるべき姿とは違いすぎる
0738デフォルトの名無しさん2016/03/12(土) 23:22:07.20ID:3tB1SOA1
あと、Rubyで作ったライブラリをPythonで使うというソフトウェアエンジニアの夢を考えると
一旦Cのライブラリを経由するのは現実的ではない
ランタイムも問題になってくる
0739デフォルトの名無しさん2016/03/12(土) 23:22:18.47ID:ucu1F7iL
>>729
>その言語の例外に載せ替えられるなら問題なし。

C関数でもエラーステータスが返ってきたらその言語の例外をthrowすりゃいいわけだし。

>例外の重要な機能は、例外が落ちた時点で(キャッチしていなければ)
>呼び出しスタックを自動的にさかのぼって行く機能。

ライブラリの境界でそれやるには呼び出し規約が一致してなきゃならんだろ。
0740デフォルトの名無しさん2016/03/13(日) 00:32:44.79ID:58BbyE9d
>>736
swig使えばいいだろ。
いらんもん作んなや。
0741デフォルトの名無しさん2016/03/13(日) 04:49:24.36ID:0UIYI/Zz
>>720
libcじゃダメなの?
0742デフォルトの名無しさん2016/03/13(日) 04:59:46.97ID:1W5FpZpk
>>737
ラッパーが要るのか、ラッパーは邪悪なのか、ラッパーは邪悪だから要る言語はゴミなのかわからんが、多分最後が言いたいんだろうな。

一旦Cのライブラリを経由するとランタイムの問題が、もよくわからん。
そんな事言ったら、言語自体が巨大なランタイムなんじゃないのかな。
まさかmsvcrt.dllみたいな話でも無いだろうし。
0743デフォルトの名無しさん2016/03/13(日) 06:05:20.26
PHPでオレオレORM?を書いて、テーブル名からPostgreのupsertファンクション、PHPのREST API、JSのコントローラとHTMLのビューを出力できた
簡単な画面一個追加が一時間くらいで出来るやべえ
でも上司には言わないぜ
0744デフォルトの名無しさん2016/03/13(日) 06:42:26.33ID:ugQKdrMu
>>737
仮にC++だってラッパーが必要なのは変わらないんだが。

>どの言語からでも使えるライブラリの標準仕様のあるべき姿とは違いすぎる

そのためにCORBAやCOMが作られた、って前回指摘されてたろオマエ。
せいぜい布教に努めるんだな。
0745デフォルトの名無しさん2016/03/13(日) 07:39:12.89ID:cS0e2/lt
OSS界隈のまともなアプリケーションなんて殆どpython製じゃん
多様性とか不毛なことしてるのなんて、せいぜいWebぐらいだよ
0746デフォルトの名無しさん2016/03/13(日) 09:01:02.04ID:F55aTdzk
python製のOSS界隈のまともなアプリケーションを5つぐらい言え
ただしアプリケーションなので単なるライブラリは除く
0747デフォルトの名無しさん2016/03/13(日) 09:36:04.68ID:Hq7xpUBC
ipython (notebook)と一緒に使えば
numpyやpandasのようなライブラリも
全てアプリケーションとして使える
0748デフォルトの名無しさん2016/03/13(日) 12:41:43.74ID:F55aTdzk
せめて一つぐらいはアプリケーションの
名前言えるかと思ったんだけどなw
0749デフォルトの名無しさん2016/03/13(日) 13:12:33.79ID:ArI227Be
横からだけど、DropBox ぐらいしか確かに思いつかないなぁ…
ってあれはOSSじゃないか
0750デフォルトの名無しさん2016/03/13(日) 14:23:18.15ID:cS0e2/lt
Orca, blender, openstack, ansible, Ren'py
0751デフォルトの名無しさん2016/03/13(日) 14:29:03.85ID:lg2dIvOz
swiftのビルドにpythonが必要らしいな
ソースは前スレ
0752デフォルトの名無しさん2016/03/13(日) 14:33:19.14ID:58BbyE9d
>>750
前読んだことあるけどBlenderはC/C++だろ?
0753デフォルトの名無しさん2016/03/13(日) 14:47:33.12ID:cS0e2/lt
tar玉開いて、ファイルを2,3ほど開いただけで、
ソースを読んだっていう自己評価の高い人って居るよね
0754デフォルトの名無しさん2016/03/13(日) 14:54:07.79ID:/IeFIwK1
スクリプト言語だと、主役の場合と脇役の場合があるからな
Blenderの主役はPythonじゃないって言いたかったんじゃねーの?

脇役PythonはLuaに取って代わられた感がある。Civ 4 → 5 とか
主役Pythonのアプリもまだまだあるんだろうけど
0755デフォルトの名無しさん2016/03/13(日) 15:20:32.62ID:WSVNTLZk
>>750
せめてどんなソフトかぐらい書いてくれないか。
なお、一般のお母さん(お父さん)にこれ便利だよ、使ってみて!と
言えるようなアプリケーションはないって印象が得られるラインナップだね。

スクリーンリーダー
https://en.wikipedia.org/wiki/Orca_(assistive_technology)

3Dモデリングソフト
https://ja.wikipedia.org/wiki/Blender(C++ & Python)

IaaSクラウドコンピューティングプロジェクト
https://ja.wikipedia.org/wiki/OpenStack

構成管理ツール
https://en.wikipedia.org/wiki/Ansible_(software)

ビジュアルノベルツクール
https://ja.wikipedia.org/wiki/Ren%27Py
0756デフォルトの名無しさん2016/03/13(日) 15:25:45.25ID:ArI227Be
>>755
いやー、ansible とか openstack はお世話になってるけどなー
Python とは知らなかったけど
0757デフォルトの名無しさん2016/03/13(日) 15:30:40.73ID:WSVNTLZk
> はお世話になってるけどなー

開発者はそうだろうね。

でも今は開発者以外の人の話をしている。
0758デフォルトの名無しさん2016/03/13(日) 15:32:25.75ID:58BbyE9d
>>753
今確認してきたけどやっぱりC++じゃねーか
無能のくせにでしゃばるなクズ
0759デフォルトの名無しさん2016/03/13(日) 16:06:10.68ID:u42Op47M
>>719
逆にどんどん下火になってPythonがあっさりトップに君臨してしまった
どうしてこうなったのかw
0760デフォルトの名無しさん2016/03/13(日) 16:13:31.75ID:ArI227Be
>>758
トップか…?
>>755 のアプリのいくつかは確かに使ってるけど、さすがにトップじゃないよな
0761デフォルトの名無しさん2016/03/13(日) 16:14:24.18ID:ArI227Be
アンカ間違えた
>>759 ね
0762デフォルトの名無しさん2016/03/13(日) 16:21:24.53ID:58BbyE9d
Blender眺めてるが以前とほとんど変わっとらん。
少しはPythonで刷新されたかと思って期待て開いた俺が馬鹿だった。

Tracとかヘルプデスクにも使われてたまともな物もあるのに、
(今はRedmineに食われてるが)
さすがまともなプログラム作れない連中。権威頼りで声だけ大きい。
0763デフォルトの名無しさん2016/03/13(日) 16:39:35.42ID:lg2dIvOz
pythonの標準ライブラリは結構多いよ
例えば「tar玉を開く」ライブラリとか.NETにもないんじゃないの
0764デフォルトの名無しさん2016/03/13(日) 16:45:33.25ID:VQ49EEy6
>>763
アホな比較してるねお前。
0765デフォルトの名無しさん2016/03/13(日) 20:21:42.26ID:N6Vxxlvc
>>763
そういうかゆいところをかいてくれるライブラリが膨大にあるのはうれしいね
tar 玉だけか?tgz, tbz とかは?
0766デフォルトの名無しさん2016/03/13(日) 20:27:37.79ID:WSVNTLZk
Pythonのすべてを公式が標準で用意してくれるという
考え方自体は好き。標準なのでサポートが続くと期待できる。
.NETやJavaもその点は同じなんだが、種類が偏っている気がする。
0767デフォルトの名無しさん2016/03/13(日) 21:04:00.32ID:lg2dIvOz
>>765
gz bz2 xz zip tar

要は定番のコマンドをライブラリにしてるだけ
コマンドなら言語関係なく使えるけど
何故かコマンド嫌いな人もいるから言語毎にライブラリが作られる
0768デフォルトの名無しさん2016/03/13(日) 21:42:41.21ID:eFalnhKH
> Cヘッダありきの仕組みだからね

スクリプト関係で調べてていいものを見つけたんで紹介しておきます。

PDBからCのヘッダを作成するソフト
http://lab.planetleaf.com/windows/development-win/software-to-create-a-c-header-from-the-pdb.html

C言語で書かれたプログラムだからと言って
C言語のヘッダを読む必要なんかないんじゃないかね。
直接コンパイルされた実行コードを解析して勝手に呼び出せばいいじゃん。
0769デフォルトの名無しさん2016/03/13(日) 22:08:48.83ID:N6Vxxlvc
「C/C++ のライブラリ」となればせめて静的リンクができないとね‥
0770デフォルトの名無しさん2016/03/13(日) 22:22:24.72ID:WSVNTLZk
>>768
実行コードを解析してもまともな情報はてにはいらないぞ。
だからMSのPDB(デバッグ情報)ファイルを解析しているわけで。
0771デフォルトの名無しさん2016/03/13(日) 23:01:54.04ID:/IeFIwK1
C++のマングルされた名前を解析して型情報を取り出す話を思い出した
リバースエンジニアリングに近い手法で、日常的に使うものではないだろうね
0772デフォルトの名無しさん2016/03/14(月) 04:53:57.35ID:6oy8Vbh7
>>762
issue trackerなんて、どの言語にもあるから敢えて書かなかったんだけど
perl,PHP,Rubyにあるものはpython実装があるし、
翌月には腐ってるWebに関していえばnode.jsにまで領域を侵されている
0773デフォルトの名無しさん2016/03/14(月) 05:03:23.88ID:6oy8Vbh7
>>755
学習不能な世代に計算機の使い方なんて教えるなら猿まわしか、
ひよこ鑑定士でも目指した方がもっとずっと有意義な人生を送れるぞ
ひよこなら、まだ世代交代による突然変異で父母以上の知能を備える確率だって高い
0774デフォルトの名無しさん2016/03/14(月) 05:22:38.98ID:okW80xYI
>>773
> ひよこ鑑定士でも目指した方が

お前と一緒の職業なんてイヤダ!
0775デフォルトの名無しさん2016/03/15(火) 05:10:57.18ID:57zaz6Kn
 ヾヽヽ
 (,, ・∀・) 1羽でチュン!
  ミ_ノ
  ″″
0776デフォルトの名無しさん2016/03/15(火) 07:38:17.20ID:LRD+Ivrn
tar書庫を開くライブラリ、とかそんな汎用性の無いライブラリを重宝がるとか変わってるな。
パイプで流し込めばいいんじゃないの?
コマンドは単機能であるべきだろうし、入力/出力がtarになること自体ナンセンスな気がするわ。
0777デフォルトの名無しさん2016/03/15(火) 08:21:26.23ID:i+2J/gfr
>>776
っていうか、今あまり使わないからね。tar玉なんて。UNIXの世界ですらzipが当たり前になって
いて、tgzなんてあまり見ない。
0778デフォルトの名無しさん2016/03/15(火) 09:02:59.01ID:oNBxh/Wy
そのtar玉って言い方なんとかならんの?だせえww
0779デフォルトの名無しさん2016/03/15(火) 09:08:29.80ID:i+2J/gfr
>>778
それこそ、1995年以前からそういう読み方だったみたいよ。ただ、完全にUNIXの世界から
の発祥なので、Linuxはそれを受け継いだだけ。もともと、UNIXerな奴らがそう読んでいた
ようだ。
0780デフォルトの名無しさん2016/03/15(火) 11:22:44.75ID:AZnFiAdE
アーカイブよりデータベースの方が汎用性があるという意味ではtarとzipは汎用性がない
0781デフォルトの名無しさん2016/03/15(火) 11:36:48.76
tarでくれ
0782デフォルトの名無しさん2016/03/15(火) 11:47:21.39ID:oNBxh/Wy
歴史はどうでもよくて、tarballより言いやすくもタイプしやすくもないのにあえてそんな呼び方してるのがダサいw
0783デフォルトの名無しさん2016/03/15(火) 12:10:45.24ID:LRD+Ivrn
もっとこう、その言語にあって意味のあるライブラリは無いのか。
pythonならshelveとか。
そこで、jsにはJSONオブジェクトあるし、一部の切り出しが必要ならnedbが便利で、mongoにも移行簡単だとか、そう言う話になるんじゃねえの?
0784デフォルトの名無しさん2016/03/15(火) 17:35:16.72ID:knleZm04
Ruby/Rails
これがあまりにも強力すぎてスタダ決めるWEB系ベンチャーには必須の選択
0785デフォルトの名無しさん2016/03/15(火) 22:09:43.99ID:vgWvBE4N
レールから外れた事しようとすると面倒なんだよなぁ
0786デフォルトの名無しさん2016/03/15(火) 22:32:07.60ID:3NttT/rt
>>784
なんで?
俺はJavaScriptのみをやってる人間だから、アレなんだが、そんなに
Railsって良いの?

何がどう絶大に良いのか?を教えて頂きたい。
0787デフォルトの名無しさん2016/03/15(火) 22:43:05.22ID:LRD+Ivrn
>>786
モデル絡みもほぼ全て揃うexpressのgeneratorみたいな感じ。
モデルも、クラス書いとけば(ごく適当に)DBのテーブル切ったりしてくれる。
ルールに沿って書けばアホにでも書けるのが強み。

場合によってはRDBの基本も知らない奴がごく使いやすいように無計画にRDB作るので、あとあと正規化やらパフォーマンスチューニングとかで泣く事になる。
railsならマトモな物が作れる、なぜなら(....)みたいな物もrails製だ!というアホも居るが、それは別にrailsである必要は無かったが手数の問題でrailsを使ったというマトモなプロジェクトで、
railsを使えばマトモな物になるというのは幻想だが、往々にして炎上、爆死する
0788デフォルトの名無しさん2016/03/15(火) 22:49:30.29ID:LRD+Ivrn
一択!みたいな感じでRoR推すやつは、cakePHPしか知らないPHPerみたいな感じだな。
使いようによっては便利だろうが、それは充分なmixinやら共通関数のライブラリ資産があってこその「便利」だからな。
またラッパー()とか叩かれるんだろうけど。
0789デフォルトの名無しさん2016/03/15(火) 22:50:37.80ID:9TmQQfsX
Railsは出た当時は、良かっただけだよ。
今は他のフレームワークもRailsに追いついてきてるので
そこまで差はない。
0790デフォルトの名無しさん2016/03/16(水) 02:25:57.73ID:4BDrWnpI
Rubyなら、RoR, Sinatra
PHPなら、CakePHP
Pythonなら、Django

Javaの、JSP/Servlet
Groovyもある
0791デフォルトの名無しさん2016/03/16(水) 02:26:48.42ID:3zVfThFH
とはいえRailsはいまだにRails系の中ではトップランナーであることは疑いようはない
これだけ長い間開発し続けるというのはすごいことだね
0792デフォルトの名無しさん2016/03/16(水) 02:31:26.31ID:2471fwbe
Ruby気になってんだけど、Rubyの素晴らしさを一言で言うと?
0793デフォルトの名無しさん2016/03/16(水) 02:47:57.38ID:ep15VVAz
Railsがあること
0794デフォルトの名無しさん2016/03/16(水) 03:10:35.49ID:4BDrWnpI
Rubyは、{ } でも書けるし、これがうっとおしいなら、do 〜 end でも書ける

よく言われる、ミスを誘発する言語設計である、
++, -- 演算子や、switch文での、fall through が無い

ブロックにスコープがあるから、ブロック変数を持てるし、
またブロック外の変数も参照できる

プログラミングしにくい、シェルスクリプトの代わりになる

黒魔術であるメタプログラミングがしやすく、DSL向き。
Rubinius のように、LLVM, C++, Ruby で作った処理系もある

日本語の情報が多い

この2冊を順に読むといい
たのしいRuby 第4版、2013
みんなのPython 第3版
0795デフォルトの名無しさん2016/03/16(水) 03:11:55.27ID:BFPYGSUK
システム構築において、もはやスクリプト言語に優位性なんてない
書き捨てのツールを書くための言語だよ
0796デフォルトの名無しさん2016/03/16(水) 03:21:49.27ID:5OxmqQ15
>>791
Rails系がまず下火だろw

>>792
・言語仕様が程よく汚い。
・今風のなんとか指向を大体「〜を意識したコーディング」レベルで書ける。mixinによる〜みたいな。
くらいじゃないの?

cgi.rbが致命的に終わってるのと、rubyistの視野が狭すぎるのと、もう少し言語仕様に破綻してる所がないと使いづらいのが難点な位じゃないかな。

ワンライナーにも使いづらい、nodeより遅い、isomorphicとかそう言うのからも程遠い。その割に冗長なコーディング。
原付にも7人乗りワゴンにもならん。軽自動車くらいの存在。
0797デフォルトの名無しさん2016/03/16(水) 03:26:51.39ID:5OxmqQ15
>>794
すぐ上に書いてあったなw
小さな親切大きなお世話を意味ありげに語るとか。
++,--は、INC,DECで実行してくれりゃ何より便利なカウンタなのに。
0798デフォルトの名無しさん2016/03/16(水) 03:53:37.54ID:4BDrWnpI
言語に、++, -- が存在すれば、素人が、

ary[i++]
func(i++)

みたいに書くから、不必要なバグが増えて、開発効率が下がり、
プログラマーの給料も下がって、言語の魅力も下がる
0799デフォルトの名無しさん2016/03/16(水) 04:21:25.38ID:4BDrWnpI
Goでは、++, -- 文は、他の文と組み合わせられず、
必ず単独で使わなければならない

Goのswitch文では、breakが無くても、直後のcaseには行かない。
直後のcaseに行きたい場合は、fallthrough を明記する
0800デフォルトの名無しさん2016/03/16(水) 04:38:33.53ID:ep15VVAz
Rubyのいい所が、それだと些細な違いしか無いとしか
言いようがない。
0801デフォルトの名無しさん2016/03/16(水) 04:40:11.66ID:ep15VVAz
>>796
> Rails系がまず下火だろw

軽いフレームワークが出来る
→機能を追加するたびに重くなる
→機能を減らした軽い新しフレームワークが出来る
→機能を追加するたびに重くなる
→機能を減らした軽い新しフレームワークが出来る
→機能を追加するたびに重くなる

以下繰り返し
0802デフォルトの名無しさん2016/03/16(水) 06:24:26.01
Railsのマイグレーションとかどうなのよ
「勝手にテーブル作るなや」と思うのは旧いんかな
0803デフォルトの名無しさん2016/03/16(水) 06:48:43.88ID:bMi5zd8N
>>790
いつの時代の話だよ
PHPはlaravel, javaはSpring MVCからJ2EEへ戻ったぞ
0804デフォルトの名無しさん2016/03/16(水) 06:56:31.72ID:1ywTtF5W
イマイチよくわからないんだが

JavaScriptはクライアント側でしか動けないので、サーバサイドやるなら
Node.jsが必要になる。これはやってるからわかる。

PHPは基本サーバサイドで、Javaも同じ。

Ruby on Railsというのも、サーバサイド専門なのかい?JavaScriptのよう
に両方やれるのかい?ブラウザで動くのか?サーバサイドもしくはクライアント
側やる場合に特殊な何かが必要だったりするのか?
0805デフォルトの名無しさん2016/03/16(水) 07:05:30.08ID:bMi5zd8N
js/cssとtemplateが一緒になってる
0806デフォルトの名無しさん2016/03/16(水) 07:21:13.26ID:3zVfThFH
>>804
クライアントサイドではJavaScriptしか動かないよ
ほかの言語(のサブセット?)からJavaScriptへのトランスパイラはいくつか
あるけど、どれも広く使われてるとはいい難い
0807デフォルトの名無しさん2016/03/16(水) 07:25:30.28ID:055k0p4j
>>802
勝手に作ってるわけではないだろ
単に実行したコマンドを履歴として残してるだけのことで、
railsのマイグレーション使うかどうかはともかく考え方自体はメインフレーム時代からあるわ
0808デフォルトの名無しさん2016/03/16(水) 08:56:45.59ID:nFTNY+lz
>>798
そりゃ、普段使いする言語にその機能なけりゃ見慣れないんだから可読性もへったくれもないだろ。
while(i--){...}なら、iが尽きるまで回るんだなあとか、
do{
if(token[ai]=....) vals.push(token[++ai]);
if(token[ai]=... &&... ) vals.push(f(token[++ai],token[++ai]));
}while(token[++ai]);
ならなんとなくパーサなんだな、くらいわかるじゃん。

>>804
Rubyは言語。
RoRは、express+mongo+jadeとかそんな感じのフレームワーク。
0809デフォルトの名無しさん2016/03/16(水) 12:56:19.77ID:7mvUCTDl
>>808
問題はi++と++iとで挙動が違うこと。
これがバグを出しやすい。
0810デフォルトの名無しさん2016/03/16(水) 14:12:50.36ID:5OxmqQ15
>>809
そりゃ、同じように書いて挙動が違うなら問題だろうが、
違う書き方したら違う挙動するのは当たり前なんじゃねえの?
0811デフォルトの名無しさん2016/03/16(水) 14:57:53.59ID:nFTNY+lz
>>809
低レベルすぎるだろ
0812デフォルトの名無しさん2016/03/16(水) 14:58:03.34ID:OTGMU2oM
RoRは学習コスト高いというか自由すぎてなのか覚える事多くて大変なんですが、
PythonのDjangoも同じような感じですか?
RubyよりPythonの方がシンプルなんじゃないかと期待してるんですが。
0813デフォルトの名無しさん2016/03/16(水) 15:02:55.51ID:nFTNY+lz
>>812
あんま変わらんどころか、Pythonらしい所はインデントくらいになる。

なんかWi-Fi調子悪いな。
ID:nFTNY+lzもID:5OxmqQ15も俺だよ。
0814デフォルトの名無しさん2016/03/16(水) 15:12:07.23ID:HxjxLvJs
RoRもDjangoもなんだかんだで息が長いよな
PHPのフレームワークなんて気が付くと世代交代してたけど
0815デフォルトの名無しさん2016/03/16(水) 16:58:49.28ID:nFTNY+lz
>>814
流行ったからな。
定石があって、工数がある程度見積もりやすくて、かつその工数がおおよそView数に比例して客に説明しやすい。
restのapi数なんか説明しても微妙に納得させにくいし。
0816デフォルトの名無しさん2016/03/16(水) 17:26:17.10ID:i2B1QT75
もうスクリプトはパイソン1択だよなぁ
これからはパイソンとSwiftも使えるようになっとけば問題ない気がするぉ(´・ω・`)
0817デフォルトの名無しさん2016/03/16(水) 17:44:40.49ID:DHBfGds7
>>809
Javaの++はintとかいう非Objectに許される演算
もし全てがObjectなら++が存在しないのは自然なことで、意図的な工夫とはいえない
0818デフォルトの名無しさん2016/03/16(水) 18:30:02.39ID:BFPYGSUK
>> 817
Javaの+はintとかいう非Objectに許される演算だけど、
もし全てがObjectなら+も存在しないのが自然なの?
0819デフォルトの名無しさん2016/03/16(水) 18:32:22.05ID:nFTNY+lz
>>817
proxyクラス、暗黙のキャスト、to_intといった黒魔術が存在していて良くそれが言えるなw
to_int出来りゃ、足して戻そうとして(その結果can't convertが出るかもしれんが)って動作は自然だと思うんだが。
まぁ、何を足すかが不定なのはかわらんが、他の言語のように一足せばいいんじゃねーの?って感じ。
美意識がいびつ。
0820デフォルトの名無しさん2016/03/16(水) 18:35:43.89ID:nFTNY+lz
>>818
そこだけだと自然。
オブジェクトないし演算子は、何から何にどの演算子を使うとどう処理するかかを持っているべき、は普通の発想。
配列と配列を足した時だって、配列をコンカチしたいのか、配列の中身同士を足したいのかそもそも定義する必要あるよね、って話。
オブジェクトなら、そいつの持っている要素同士を足すのか、オブジェクトをマージするのかって問題。
0821デフォルトの名無しさん2016/03/16(水) 18:52:01.21ID:HxjxLvJs
演算子を関数と考えるかメソッドと考えるかは言語の設計による。
関数なら、function "+" (L: number, R: number) だから数値に変換しようとするだろうし
メソッドなら、 L."+"(R) という "add" の別名に過ぎないから、L側の実装に任せることになる。
インクリメントなら「1を加える関数」なのか「一歩進むメソッド」なのかってこと。

どちらにせよ、一貫性があればいいと思うよ。
某言語のように、"+" を数値の加算と文字列の連結の両方に使っておきながら、"-" で両辺を数値に変換しようとするのは糞。
0822デフォルトの名無しさん2016/03/16(水) 19:26:50.65ID:nFTNY+lz
>>821
そりゃおまえ、演算子のオーバーロードが出来ない言語で、文字列への引き算ってが定義されてないなら、それは変わりようがないんだから、算術の引き算しか有り得なくて、
ならばまず左辺値を型変換して、次は右辺値を引こうとするが、これも文字列だが引き算しかありえないため、数値として解釈され、引き算を行ってるだけじゃん。
合理的じゃねーの?
+を文字列と数値両方に使ってると言うが、使えるトークン増えるじゃん。左辺値に引きずられるのが嫌なら左辺値から0引いときゃいいだけなんだから。
全然一貫性あると思うけど。

関数ならって言うけど、オーバーロードできない関数なんかカスだろ。どのみち実装依存。
0823デフォルトの名無しさん2016/03/16(水) 19:48:06.69ID:DHBfGds7
>>819
++や+=は代入演算子の仲間だな
値型の演算子だから、C++なら定義できるがJavaやRubyではできない
さすがにC++の黒魔術を再発明する必要はないだろ
0824デフォルトの名無しさん2016/03/16(水) 19:59:02.29ID:X1wUkCGN
動的型言語の多くで文字列連結に+を使えないのは一貫性とかじゃなく単に曖昧になるからだよ
コード中に書かれた一つの+演算子が実行時に文字列連結と算術加算の両方として機能するのは99.9%バグ
0825デフォルトの名無しさん2016/03/16(水) 20:06:15.42ID:HxjxLvJs
>>822
加算と連結の演算子が異なる言語もあるが、ご存じない?
その場合 + は算術の足し算しかありえず、連結演算子は文字列の連結と解釈される。
+ を複数の意味に使うと決めた(つまり言語組み込みでオーバーロードしている)
なら、その言語は他の演算子のオーバーロードもサポートすべきだ。

自分の感じる「美意識」は、こういう感じ。

>>823
Pythonのように += はあって ++ が無い言語もあるぞ。
0826デフォルトの名無しさん2016/03/16(水) 21:06:22.11ID:DHBfGds7
代入は左辺と右辺が同じケースを忘れるバグが多い
x=x
x+=x
0827デフォルトの名無しさん2016/03/16(水) 21:14:15.64ID:ep15VVAz
>>825
> なら、その言語は他の演算子のオーバーロードもサポートすべきだ。

ちなみに、どうするのが良いと?
文句ばっかり言わないでどうするべきかを言おうね。
0828デフォルトの名無しさん2016/03/16(水) 21:32:36.93ID:ep15VVAz
他の演算子のオーバーロードっていうからには
当然/ * ^ % なんかも含まれるんだろうなぁw
0829デフォルトの名無しさん2016/03/16(水) 21:53:11.34ID:HxjxLvJs
>>827
え?結構な数の言語がサポートしているじゃないか?
Ruby, Python, Lua、いくつもあるよ。
当然、それらは数値演算子はオーバーロードできるよ。

>>824 曰く、
>+演算子が実行時に文字列連結と算術加算の両方として機能するのは99.9%バグ
JavaScriptは存在そのものがバグらしいから、それは仕方ない。

あと、流れとしては ID:nFTNY+lz の言う「美意識」からの流れだから
「どうするべきか」と言われれば、「文句を言いながらもそれぞれの流儀に合わせる」つもりだよ。
0830デフォルトの名無しさん2016/03/16(水) 22:17:03.64ID:5OxmqQ15
>>825
知ってるよ。
vbもphpも出来る。貴重な&を失い and,(ごく近年になってさらにブサイクなandalso)を使わざるを得なくなったり、
->みたいなクソ文法になってるよね。

言語組み込みでオーバーロードじゃないよ。
その演算子には2つの意味があるだけで、それは左辺によるだけ。
まさに同じ動きをするto_xxxを捨てた言語に言われるならわかるけどねえ。パスカルとか。

>>829
美意識って何だよw
俺は言語仕様的に破綻してるぐらいじゃないと実用に耐えないと言ってるぞ、もともと。

言語に対して並々ならぬ情熱があり、既存の言語への問題意識を持つ偉い学者が、問題点を列挙し、
一つずつ、直交性を高めて、なおかつ論理的な整合性の取れる形にして整理し、
センテンスどころか覚える単語すら減るように、最低語彙を決めて、いささか冗長ではあるもののその組み合わせで文を構成し、
解釈を可能とした、さぞ便利だろうと思う言語が、

エスペラント語だ。
こうはなりたくないもんだけどな。
0831デフォルトの名無しさん2016/03/16(水) 23:11:09.82ID:EUSrB3CA
V8、Firefox、Microsoft Edgeが「WebAssembly」の実装を発表。将来のWebの共通バイナリフォーマットへ期待
http://www.publickey1.jp/blog/16/v8firefoxmicrosoft_edgewebassemblyweb.html

いよいよ前世紀最悪の糞言語たるJavaScriptの息の根を止める試みが本格化してきたな
0832デフォルトの名無しさん2016/03/17(木) 01:13:30.94ID:0wcZlKUx
>>831
WebAssembly非対応スマホが
なくなるまであと10年ぐらいかな?
0833デフォルトの名無しさん2016/03/17(木) 02:33:21.68ID:FQ/IwtfE
>>831
どこがクソ言語なんだろう。言語自体は悪くないと思うけど。
ブラウザの非互換性はかつて問題だったけど、ironPythobとCPythonとJythonとPython3を並べて全部に文句いう程度に暴論だからなぁ。
まぁ、そもそもWebAssemblyは、gccにおけるインラインアセンブラみたいなもんで、隙間埋めだよ。
replacementではなくcomplementだと本家のどっかに書いてあったはず。

糞の息の根を止めるものではなくて、糞をわざわざ補完するものを挙げてもらえるとは思わなかったな。
キャッチーな言葉で撫でるだけでなく、理解するまで調べてから煽れば良いのに。。
0834デフォルトの名無しさん2016/03/17(木) 06:12:44.32
luaがブラウザ組み込み言語に採用されればよかったんや
0835デフォルトの名無しさん2016/03/17(木) 08:39:24.16ID:xo9gyKTV
>replacementではなくcomplement

そんなもん最初は並行して動くところから始まるに決まってるだろw
普及した段階でjavascriptはflashみたいに非推奨になってサポートされなくなるのは目に見えてる
googleもmicrosoftもjavascriptを消したいと思ってるんだからな
0836デフォルトの名無しさん2016/03/17(木) 08:43:42.96ID:L+JGJcXi
WebAssemblyを吐くJSが使われるだけ
0837デフォルトの名無しさん2016/03/17(木) 08:55:46.32ID:L+JGJcXi
>>812
djangoはtemplateを見て避けようと思った
pythonistaってインデントがズレたらどうしてるんだろう
0838デフォルトの名無しさん2016/03/17(木) 09:35:00.60ID:2Htg2ogu
>>833
Luaを知るといいよ。オブジェクト回りは明らかにベターJavaScriptと感じるはず
インデックスの開始が1なのと、中括弧を使わない構文は、好まれないとは思うが
0839デフォルトの名無しさん2016/03/17(木) 09:59:49.43ID:Lr213s2+
>>833
(function(){}());
レキシカルスコープのためにいちいちこんな醜いイディオムを用いなきゃいけないのってクソだと思わない?
0840デフォルトの名無しさん2016/03/17(木) 10:37:30.52ID:HdWF8tWc
そういうこと言われてすぐ仕様変更するのも酷いパターン
だからreplacementではないと言いましたよね
0841デフォルトの名無しさん2016/03/17(木) 10:55:00.74
>>837
インデントを削除したソースを読ませたら発狂するので
0842デフォルトの名無しさん2016/03/17(木) 11:19:33.15ID:2Htg2ogu
仕様変更しろなんて誰も言ってないぞ
「言語自体は悪くない」に対して、「いや言語自体が糞だろ」というだけ

速度が必要な部分だけ置き換えると思うならreplacementだろうし
どうせAltJSを使うならreplacementして、より良いAlt言語を望むのも当然の反応だ

異なる価値観があっても良いじゃないか? 最終的に残るのは手を多く動かした陣営なだけ
0843デフォルトの名無しさん2016/03/17(木) 11:29:11.76ID:2Htg2ogu
訂正
速度が必要な部分だけ置き換えると思うならcomplementだろうし
0844デフォルトの名無しさん2016/03/17(木) 12:42:47.24ID:iXvI6/rP
唯一のwebブラウザ標準言語であるというjavascriptor唯一の心の拠り所が消えた
そうなると残るは糞言語使いであるというどうしようもない事実のみ
0845デフォルトの名無しさん2016/03/17(木) 14:10:10.04ID:0wcZlKUx
どの言語にもクソなところはある。
そしてどの言語にも修正する機会はある。

あとはどれだけ力を入れるかだよ。
MS、Google、Apple、Mozila これだけの大きな会社、団体が
力を合わせて改良している言語はJavaScriptぐらいしか無いよ。
0846デフォルトの名無しさん2016/03/17(木) 14:50:04.83ID:L+JGJcXi
PHP 一見、カレーに見えるものの、実際に食べてみると本当はウンコ
JS 企業と標準化団体が主導権を狙う現代の聖地。
Ruby DHHとMatzを信じて、多くのプログラマたちが砂丘を彷徨った。
python 他と比較してコミュニティが冷めているのは永久凍土のせい
golang Zen of Google。言語を通して空の概念を説いた。docker以外は何もない
perl 今まで魚をありがとう
0847デフォルトの名無しさん2016/03/17(木) 14:55:54.52ID:0wcZlKUx
その他の言語 ネタにする価値すら無い
0848デフォルトの名無しさん2016/03/17(木) 15:50:48.91ID:FQ/IwtfE
>>835
最初は並行して動くところから始まったものは、
最後まで並行して動くものだよ。

>>838
知ってるよ。
悪くはないと思う。
ただこぢんまりしすぎ。
インデックスが1始まりとかは瑣末な問題だよ。

>>839
まぁ、レキシカルスコープというより、それはクロージャ内で定義された変数なだけだからね。
プロトタイプベースなんだから。
嫌なら誰かに持たせるしか無いんじゃないの?
そんなに寿命の長い変数を持つべきかから悩んでほしいけど。

>>846
phpは、カレー味のうんこはカレー味なんだから、もうこれカレーで良いんじゃない?って感じじゃないか?
0849デフォルトの名無しさん2016/03/17(木) 18:37:14.63ID:0xom+21x
javascriptもバッチリ並行して行くよとか言っているのはmozillaだけだろう
googleとmicrosoftはjavascriptを事あるごとにクソクソ言って問題を指摘してるし
時期がくれば引導を渡すだろう
0850デフォルトの名無しさん2016/03/17(木) 18:42:37.28ID:r8Uypp4J
問題を指摘する=改善するということ
0851デフォルトの名無しさん2016/03/17(木) 18:54:11.52ID:0xom+21x
改善には様々協力してきたけど
javascriptがwebの発展に実害が出るレベルで問題を抱えているからで対策も応急処置に過ぎない
今後もjavascriptを積極的に存続させたいなどとは微塵も考えていない
google,ms陣営は時期がくれば喜んで切り捨てる
0852デフォルトの名無しさん2016/03/17(木) 20:19:37.31ID:5H9J/RFd
>>830
今ならエスペラントではなくロジバン
https://ja.wikipedia.org/wiki/%E3%83%AD%E3%82%B8%E3%83%90%E3%83%B3
だろうね.
でも,なんで「こうはなくたくない」と思ったの?
エスペラントは欧米系としてはバランスがとれていると思うよ
0853デフォルトの名無しさん2016/03/17(木) 21:15:28.99ID:4x4s3mAU
>>852
tranc^i(切る)+il(〜する道具)→tranc^ilo(ナイフ)

程度なら可愛いもんだが、
patro(親父)+in(女の) →patrino(母親)
とかもう少しなんとかならんのかと思う。
さらにec(性質、っぽさ)を足して、partineco(母性)になる。

バランスが取れているとは思うよ。
それが、便利とか使い物になるかどうかは置いておいて。

英語のmotherか、余力があるならmaterと格を覚えてれば良いよ。ラテン語の。実際問題として。
0854デフォルトの名無しさん2016/03/17(木) 21:28:00.81ID:4x4s3mAU
>>852
今更色々読んでみたけど、ロジバン、面白いな。
これBNFかなんかで書かれた方が理解しやすいかも。

しかしこれも「俺、きつね」「俺も」はできんのだな。
0855デフォルトの名無しさん2016/03/18(金) 09:06:45.02ID:lH6dzSdk
>>854
それって 「きつね for me」「Me too」とは異なる研究対象なの?

英ペディアにはGrammarについて一言あるね
https://en.wikipedia.org/wiki/Lojban#Lojban_as_a_programming_language

>>830 「こうはなりたくない」って、単に利用者が少ないことを言っているだけでしょ。
公平な語根の選択や、活用のない単語の順序と限られた助詞から構成できるという話であれば
多くのプログラミング言語は既にそうなっている感がある。
0856デフォルトの名無しさん2016/03/18(金) 11:06:22.21ID:iS2YUzi8
話し言葉は訛りとか微妙な発音の違いで格差を広げようとするから言語が増える
それに比べればプログラムのような書き言葉は簡単
0857デフォルトの名無しさん2016/03/18(金) 12:11:03.71ID:FwCiTxKU
>>855
基本的にはかわらんよ。
あえてコンテキストに依存させて、構文の上では明確な差を持たせないような書き方、ができるかって事。

利用者が少ないような言語を作り出すような事はしたくないし、そんな現実見えてない学者か素人みたいな事も言いたくないもんw
0858デフォルトの名無しさん2016/03/18(金) 14:27:24.06ID:UovkKYqM
>>848
カレーのように歩き、カレーのように鳴くウンコだよ
0859デフォルトの名無しさん2016/03/19(土) 03:34:33.78ID:lSVqWpsa
そのウンコはカレーにちがいない
0860デフォルトの名無しさん2016/03/19(土) 04:45:23.21ID:gkC+pF10
altJSといっても最早型の部分くらいしか違いは残っていないことだし、
今のJavaScriptにそんなに欠点は見つからない。
個人的には正直型指定よりも、decimal型やらの実装が重要だと思う。
value-objectってやつね。
0861デフォルトの名無しさん2016/03/19(土) 07:31:05.40ID:iKSB+QiN
>>860
型指定は流れだからね。PHPやRubyでも導入されつつあるんでしょ?
全体を把握した個人が手早く使うよりも
複数人によるテスト重視の開発が重要視されるようになれば、必然だろうとは思う。

value-objectも、算術演算子が欲しいだけなら単なる構文糖だけど
うっかり共有して書き換えを防ぎたいなら readonly の型指定に帰着できるかもしれない。
0862デフォルトの名無しさん2016/03/19(土) 07:58:25.23ID:Mfce26aO
flowって、どーなの?
0863デフォルトの名無しさん2016/03/19(土) 08:12:42.34ID:qOC5h4tk
TypeScriptにアノテーション無しの型推論を追加したらいいだけのことなのに
わざわざ新しい言語を作っちゃうのがな
プログラミング言語はフロントエンドのノリでコロコロ変えるわけにはいかないというのを
Googleをはじめとした言語作りたがるWeb屋はいつになったら学習するのだろう
0864デフォルトの名無しさん2016/03/19(土) 08:17:13.27ID:Mfce26aO
Microsoftが主導権を握っていたから、forkしたんだろ
0865デフォルトの名無しさん2016/03/19(土) 08:20:08.75ID:I8MCjrAg
>>863
新しいものを作りたがるのはエンジニアの習性みたいなもんだよ
逆にそれがなくなったら進化も停滞してしまうだろうね
0866デフォルトの名無しさん2016/03/19(土) 08:27:46.04ID:qOC5h4tk
>>864
いや直接のforkじゃなくてOCamlで全部作り直してるよ(TypeScriptはブートストラップ)
俺言語を作っておきながら自分ではJS使わない、だったらそもそもOCamlでいいのではないか?
という一貫性の無さもポイントだ
学生のノリのままで何も考えていないだけ
0867デフォルトの名無しさん2016/03/19(土) 08:32:03.42ID:Mfce26aO
>>866
Ocaml,Haskellって言語作りが得意な言語だから、
1から作りなおした方が早そうだっただろうね
pugs(perl6の実装)がhaskellで1ヶ月程で作られて話題になってたよ
0868デフォルトの名無しさん2016/03/19(土) 08:36:21.25ID:UQOfvNWi
>>861
個人より複数人って発想は古くないか?
戦国時代じゃあるまいし
兵器も無人化してるしAIもあるし
0869デフォルトの名無しさん2016/03/19(土) 09:01:14.55ID:iKSB+QiN
>>868
そうなん? このスレから説明のためにレスを拾うと、
「古代」 >>538 (内容はともかく、雰囲気として)
「近代」 >>646 テストという「法が納める」時代
という理解だったんだが、「現代」はもう次の段階へ進んでいたのか?

ただ、自分が言いたかったのは、人海戦術ではなく、
(自動化を含めて)個人の資質に頼らなくなったことなので、
もしかすると同じことをイメージしているかもしれない。
0870デフォルトの名無しさん2016/03/19(土) 10:06:32.65ID:fyB3VJ2p
理論から作られた言語は実用に満たないが
実用を重視するとPHP見たいなことになる
0871デフォルトの名無しさん2016/03/19(土) 10:18:30.44ID:8xzNOdhj
asm.jsについて学べる簡単なサイトを教えてくらさい
0872デフォルトの名無しさん2016/03/19(土) 12:32:07.07ID:6DDHhdLw
>>871
公式の仕様見れば十分
手で書くもんじゃないし
0873デフォルトの名無しさん2016/03/19(土) 16:16:48.59ID:makxOBwM
今はもうオッパイソン1択だろ
0874デフォルトの名無しさん2016/03/19(土) 17:04:08.12ID:4q7Jg/LX
おれもpythonが好きなんだけど、機会学習とか知らんから仕事ないから仕方なくrails
0875デフォルトの名無しさん2016/03/19(土) 17:23:12.14ID:Mfce26aO
railsできる仕事がdjangoできない理由がわからない
0876デフォルトの名無しさん2016/03/19(土) 17:30:02.04ID:4q7Jg/LX
前職はdjangoだったんだけど他にdjango使ってる所無くてなぁ
0877デフォルトの名無しさん2016/03/19(土) 17:39:11.70ID:Mfce26aO
冗談でしょ?その辺に個人事業者が転がってるのに
0878デフォルトの名無しさん2016/03/19(土) 17:57:37.93ID:EIXPsoT/
モンティ・パイソン
0879デフォルトの名無しさん2016/03/20(日) 10:41:16.42ID:aYI+fyB6
SC取って情確士に転生する予定だから今からオッパイソン勉強しとくわ(´・ω・`)
0880デフォルトの名無しさん2016/03/20(日) 10:52:27.09ID:TtjNwfG2
SCは残念ながらJavaとC++しか出ない
そしてお前が想像しているような内容ではなく組織のセキュリティマネジメントの試験だ
0881デフォルトの名無しさん2016/03/20(日) 11:53:18.78ID:ds0auvtV
>>880
資格は建前上取るってだけでワイの転生先の本質はセキュリティエンジニアよ、うふふ(´・ω・`)
0882デフォルトの名無しさん2016/03/20(日) 13:10:16.45ID:ds0auvtV
The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
0883デフォルトの名無しさん2016/03/20(日) 13:21:45.46ID:ds0auvtV
python公案(Tim Peters作)

醜いより美しい方がいい。
暗黙より明示の方がいい。
複雑より単純の方がいい。
極端な複雑よりただの複雑の方がいい。
入れ子よりフラットの方がいい。
密よりも疎の方がいい。
読みやすさは大切だ。
特殊条件だからといって原則を破っていいわけではないが、実用性は純粋性に勝る。
わざと黙らされている場合を除き、無言でエラーを次に渡してはならない。
曖昧なものが出てきたときに推測に頼るな。
仕事をするための当然の方法はひとつある。むしろ、ひとつだけと言いたいところだ。
ただし、オランダ人でなければ、最初からその方法を当然とは思わないかもしれないが。
今するのはしないよりもいい。
もっとも、しないままの方が慌てて今すぐするよりもいいことが多い。
実装を説明するのが難しいなら、それは悪いアイデアだ。
実装を説明するのが簡単なら、それはいいアイデアかもしれない。
名前空間は素晴らしいアイデアのひとつだ。もっとアイデアを出そう!
0884デフォルトの名無しさん2016/03/20(日) 13:59:21.78ID:Byvmq8tF
Perlが酷過ぎただけで、他の言語と比べてPythonが特に美しいとも思わない。
Pythonが手本になったという可能性もあるが。

あと、Pythonの型ヒントは、お世辞にも美しくはなかった。
後付けだし、必須でもないとはいえ。
0885デフォルトの名無しさん2016/03/20(日) 15:44:23.73ID:q4Z7qzSh
インデントでブロックを表現するっていうのがやっぱりだめだな。

一時的にデバッグprintとかやりたいときはわざと目立つように
インデント無しで書いたり、実験的に、コードを入れてみるとか
実行順を入れ替えてみるとか、そういう些細なことをするときでも
インデントを揃えないといけない。

そもそもまともにコードを書ける人は
インデントもちゃんと出来るわけで強制することに意味はない。

Pythonのメリットは言語仕様が美しいとかじゃなくて、
ライブラリが標準で多く用意されているから、
みんな同じライブラリを使うって所ぐらいだろう。
0886デフォルトの名無しさん2016/03/20(日) 15:58:40.74ID:6XcGtncn
じゃあRubyとPythonではどちらがより美しいのさ?
やっぱRuby?
0887デフォルトの名無しさん2016/03/20(日) 16:02:44.91
Rubyは逆に、カッコ使わせろよって思うことがある
0888デフォルトの名無しさん2016/03/20(日) 16:02:50.57ID:q4Z7qzSh
美しいコードっていうのは人間が書くものだよ。
同じ日本語でも人によって美しいかどうかが変わるのと一緒。
ただ言語によって、どこまで美しく出来るかが変わってくるだけ。


Pythonはインデントの強制で最低レベルを保証することは出来るが
そのせいで最大レベルも制限されてしまう。

Rubyなどの自由な構文だとPythonよりも低いレベルになることもあるが
ちゃんとした人が書けばPythonよりも美しいコードを書くことが出来る。
0889デフォルトの名無しさん2016/03/20(日) 16:07:05.36ID:YlJ66Eyf
すぐに枯れる美しい花
0890デフォルトの名無しさん2016/03/20(日) 16:10:26.63ID:F85l2ARQ
フォーマッタ使えないとつらいね。
人が全部やらないとならないってのは「教育的」効果はあるのかもしれんが。
0891デフォルトの名無しさん2016/03/20(日) 16:25:24.34ID:q4Z7qzSh
フォーマッタというのは統一するためにあるもの。
一番美しくするためにあるものではない。

マニュアル操作とオートマ操作みたいなものよ。
技術ある人はマニュアル操作の方が美しくかけるが、
複数の人間が関わるならば統一したほうが楽だからフォーマッタを使う。

フォーマッタは楽にするために使うものでなので
フォーマッタに従ったコードが一番美しいと勘違いしてはいけない。
0892デフォルトの名無しさん2016/03/20(日) 16:38:45.39ID:29yt69lx
ちからぬけよ
0893デフォルトの名無しさん2016/03/20(日) 16:39:35.93ID:cCJjbwe1
Excel方眼紙に罫線にオートシェイプなクールジャパンとは違って向こうの人はアウトラインをちゃんと使えるからな
その感性の違いがRubyとPythonの違い
0894デフォルトの名無しさん2016/03/20(日) 16:44:04.83ID:Byvmq8tF
制御構造のインデントは、流儀も限られてるし大したことない。
括弧を使う言語でも、せいぜい { を行頭にするか行末にするか程度。

より個性が出てしまうのが、引数や仮引数が多くて行を折り返すケース。
これはPythonでさえ流儀が1つでもなければ強制力もない。
https://pep8-ja.readthedocs.org/ja/latest/
0895デフォルトの名無しさん2016/03/20(日) 16:48:55.40ID:F85l2ARQ
コードを読みやすくしたい、理解しやすくしたいというのは理解できるが、
美しくしたいって価値観は理解不能だわ。
0896デフォルトの名無しさん2016/03/20(日) 16:56:52.00ID:q4Z7qzSh
コードを読みやすくしたい、理解しやすくしたいとということを
「美しい」と表現しているだけ。
0897デフォルトの名無しさん2016/03/20(日) 17:12:01.27ID:29yt69lx
一方、分かりやすさより、見た目に拘った言語がC言語

int func( int *ptr );

宣言時に型名を前に書いたり
ポインタ型変数の宣言を実際に利用するときの形に合わせるなど
非常に視覚的に感性に訴えかける文法
Pascalはダメダメだね、文法は綺麗かもしれないが、感性に訴えかけるものが無く、直感的じゃない
0898デフォルトの名無しさん2016/03/20(日) 17:15:18.29ID:4KEIidVf
感性工学的にはRubyが最強か?
ここは感性工学という分野を開拓した日本人に軍配かな
0899デフォルトの名無しさん2016/03/20(日) 17:15:53.16ID:TKB/ZglQ
>>896
であれば、見た目を強制する構文は不要で、機能を強制する構文が必要なんじゃないの?
片手落ちだけど。

Zen of Pythonの
Simple is better than complex.
Complex is better than complicated.
の訳ひどいな。公式訳なのこれ?
complicatedとcomplexの差は複雑さだけではないでしょ。
ただひたすらややこしいよりも、複数のものが組み合わさって複雑である方がマシ、って意味なのに。
0900デフォルトの名無しさん2016/03/20(日) 17:18:36.00ID:B3NGK1ug
>>897
pascal はたぶんポインタが(デフォでは)ないのが致命的なんだよ
参照変数では追いきれない
0901デフォルトの名無しさん2016/03/20(日) 17:21:58.78ID:F85l2ARQ
>>896
そうであればね、同じことが書いてあれば同じように見える、逆に、同じように見えれば
同じことが書いてあると予測できる、という意味で表記の統一はそれ自体重要なわけよ。
>>891は別物みたいに書いてるけど。
0902デフォルトの名無しさん2016/03/20(日) 17:23:27.04ID:29yt69lx
特にポインタ型変数の宣言のセンスはちょっと常人離れしていると思う
ポインタは実際に利用するときは*ptrって使うのだから
宣言の見た目もint *ptr;っつー風に合わせようっていうね
配列の宣言も同様だが、まず常人だと思いも付かない文法だ

あっても、int* ptr; とか *int ptr; とかだろう
もしくはポインタを生成するという意味で、int& ptr; とか &int ptr; とか
まさかptrの方に「*」や「[]」を付けようとは考えもしない

だって今宣言したい変数の名前がptrで、それの型を指定するっつーんだから普通の常人は
型名 ptr; って考えるわけだから、ptrの方に*を付けようとは考えないでしょ
0903デフォルトの名無しさん2016/03/20(日) 17:31:34.80ID:29yt69lx
int *array[10];
っていう書き方がもう凄すぎるっつーか
確かに変数を実際に利用するときはそういう書き方をするから、感性に訴えかけるものがるので説得力はあるが
常人なら絶対に
int*[10] ptr;
って文法にする、というか、理屈先行で考えると、それしか思いつかない、普通そうなる、絶対に
C作ったやつはマジ変態、理屈や分かりやすさよりも、視覚的なものや感性を優先している
0904デフォルトの名無しさん2016/03/20(日) 17:39:20.74ID:bOQIaBhI
昔は今のように型が絶対的な存在ではなかったんだよ
プリミティブ型を直接使うことが多く、型っていうのは変数の種類を示す属性の一つに過ぎなかった
だからポインタかどうかも変数の属性の一つとして型とは独立してるのはそれほど違和感が無かったの
0905デフォルトの名無しさん2016/03/20(日) 17:48:37.78ID:B3NGK1ug
というか,ポインタの型が int *, char *, double * という風に分かれている必要もあまりなかったというか
めんどくさいから void * にキャストしてやっちまう,とかも理解できるし
発想がアセンブラだったんだよ昔は
0906デフォルトの名無しさん2016/03/20(日) 17:56:39.65ID:bOQIaBhI
COBOLやPL/1の時代は型といえばビルトイン型だったんだよ
構造体は型ではなく変数のグループに過ぎなかった
そのことはstructの仕様にも名残を残してるよね
実装上はポインタは型の一部であっても、当時の人には感覚的に受け入れ難かったんだろうね
0907デフォルトの名無しさん2016/03/20(日) 18:11:46.24ID:TtjNwfG2
現代人が「切腹なんて理解できない」というようなもんだな
型に対する意識が根本的に違っており、今の価値観で論ずることはできない
0908デフォルトの名無しさん2016/03/20(日) 18:23:54.33ID:q4Z7qzSh
>>901
> という意味で表記の統一はそれ自体重要なわけよ。
具体的に例を上げて言ってみて?
0909デフォルトの名無しさん2016/03/20(日) 18:57:25.84ID:F85l2ARQ
インデントなんかはまさにそれだね。
0910デフォルトの名無しさん2016/03/20(日) 19:27:38.32ID:q4Z7qzSh
つまり逆に言えばインデントぐらいしかないってことでしょう?
0911デフォルトの名無しさん2016/03/20(日) 19:33:09.19ID:q4Z7qzSh
俺が言いたいのはつまりフォーマッターはインデントを
そろえる程度でいいってことだよ。

その他にもいろいろ統一する機能ついているけど、
それは単に統一するだけであって、
美しくするために使ってるわけじゃない。

マニュアル操作でやればもっと美しく出来るが、
楽だからフォーマッターを使う。

>>891で言ったことを繰り返してるだけだけどさ。
0912デフォルトの名無しさん2016/03/20(日) 20:08:06.64ID:TKB/ZglQ
>>902-903
見た目を揃えてんじゃねえよ。
Cで型を書き表すときは宣言から識別子を取っ払ったもの、とパースしたいんだよ。

そうすりゃ、配列へのポインタを宣言する時の(*)[256]なんかの、「()」って何者かちょっとわからないか?
*の右に、仮に識別子置いたらしっくりするよ。
考えの浅いやつだな。

>>905
インクリメント出来ねえだろ
0913デフォルトの名無しさん2016/03/20(日) 20:16:25.91ID:F85l2ARQ
逆に言えばというか、最初からその話しかしてないんだが。
コードを理解しやすくする上でインデントの統一は重要な要素のひとつだし、
仮に人が手を加えた方がより優れているとしてもそれは変わらん。
「一番美しく」なければ意味がないと言っているのならやっぱり理解不能だわ。
0914デフォルトの名無しさん2016/03/20(日) 20:22:21.81ID:B3NGK1ug
>>912
void * を自分でsizeof 分だけインクリメントすればいいだけの話
0915デフォルトの名無しさん2016/03/20(日) 21:08:47.33ID:U4AxuRm/
フォーマッタかけた程度で損なわれる美しさなんていらねえw
0916デフォルトの名無しさん2016/03/20(日) 21:10:27.51ID:q4Z7qzSh
>>913
一番美しくなければ意味がないってどこに書いてあんの?
思い込みで書き込まないようにね。

フォーマッターは統一するためのもので
一番美しくするためのものじゃないって最初から言ってる。
0917デフォルトの名無しさん2016/03/20(日) 21:11:36.52ID:q4Z7qzSh
>>915
ブス専という言葉があるように、美しさがいらないって人がいることは知ってる。
0918デフォルトの名無しさん2016/03/20(日) 21:11:49.64ID:29yt69lx
>そうすりゃ、配列へのポインタを宣言する時の(*)[256]なんかの、「()」って何者かちょっとわからないか?

これは何を言っているのかちょっとわからないが
仮にint *array[10]; を int*[10] array; と書く文法だった場合
int (*ptr)[10]; は int[10]* ptr; になるだけなんじゃないの?

>型を書き表すときは宣言から識別子を取っ払ったもの、とパースしたいんだよ。

ってことらしいが、キャストなんかで型を書かなきゃならないときは、int[10]*、って書けばよいだけでは?
int[10]* ptr; が int[10]* だから
この方式でも、「型を書き表すときは宣言から識別子を取っ払ったもの」は守られているわけだが
ちょっと何が言いたいのかよくわからない

それとももっとほかの別のことを言っている?
君の文章をそのまま受け取れば、俺が(*)[256]の()の意味が分からないって事になっているみたいだけど
そんな話したっけ?
0919デフォルトの名無しさん2016/03/20(日) 21:14:32.12ID:U4AxuRm/
>>917
ちまちまスペース挿入して行頭を揃えないとコードが頭に入らない馬鹿がいることは知ってるよw
0920デフォルトの名無しさん2016/03/20(日) 22:02:32.58ID:4KEIidVf
【徹底比較】プロが解説!プログラミング言語ランキングTOP10
http://www.sejuku.net/blog/2439

グーグル先生三大言語の一つPythonも捨て難いが、やっぱりRubyに軍配が上がるか
0921デフォルトの名無しさん2016/03/20(日) 22:08:26.02ID:TKB/ZglQ
>>914
アホか。
0922デフォルトの名無しさん2016/03/20(日) 22:19:27.21ID:4+hRejg8
webシステムを作るなら言語の差が決定的な問題ではない
フレームワークの差こそ問題
0923デフォルトの名無しさん2016/03/20(日) 22:42:28.50ID:4KEIidVf
railsは強力すぎるな
0924デフォルトの名無しさん2016/03/21(月) 03:30:16.24ID:lwkXzPK7
>>919
エディタの機能を使いましょう。

それともコード書いているときに
フォーマッターの機能を使って整えてるんですか?
一行一行w
0925デフォルトの名無しさん2016/03/21(月) 03:39:24.87ID:l2fUORC9
なんで1行書くごとにフォーマッタかけるって発想になるかな。
0926デフォルトの名無しさん2016/03/21(月) 03:50:56.95ID:Hl1v4nfR
Rails is a Ghetto
0927デフォルトの名無しさん2016/03/21(月) 04:11:51.76ID:lwkXzPK7
>>925
書いてる途中のコードは、インデントがガタガタってこと?
0928デフォルトの名無しさん2016/03/21(月) 05:07:26.72
>>922
フレームワークより、オレオレジェネレーターの方がすこ
Excelのテーブル定義からSQLとPHPとHTML出力みたいな
0929デフォルトの名無しさん2016/03/21(月) 08:40:11.32ID:p3S9wzo3
>>928
作りっぱなしならいいが、運用に乗せた後も変更が入るなら最低の悪手
絶対に乖離し破綻する
0930デフォルトの名無しさん2016/03/21(月) 09:07:18.44ID:WGqduxPw
>>927
ガタガタはしてないけど、俺は一行で書いてるコードも多いかな。
オブジェクトとか。
Beautifyでまとめてるが。
0931デフォルトの名無しさん2016/03/21(月) 09:37:36.32ID:lwkXzPK7
>>930
自動でインデントしてくれるエディタ使ったほうがいいよw

そのおかげでフォーマッターなんかまず使わない。
0932デフォルトの名無しさん2016/03/21(月) 09:47:56.47ID:WGqduxPw
>>931
インデント程度はしてくれるけど、
例えばオブジェクトの配列とか書いてる時かな。
最終的にショートカットでBeautifyする。

最近、エディタがBracketsに落ち着いてしまった。
軟派者向けかと思ってたが、使ってみると割と便利だわ。
0933デフォルトの名無しさん2016/03/21(月) 09:53:53.63ID:lwkXzPK7
なぜBeautifyを使わないといけないのか?
普通に書けばいい。
0934デフォルトの名無しさん2016/03/21(月) 11:09:42.66ID:WGqduxPw
>>933
自動で整形してほしいのか、手で書けばいいのかどっちが言いたいんだ?
beautifyの方が良いよ。こう書いたと思い込んでるのが間違ってればそこからインデントズレるから気づくし。
0935デフォルトの名無しさん2016/03/21(月) 18:38:38.43ID:lctU7n/4
あかん俺には向かん、パイソンやら基本の数学からやり直してるがやっぱり向き不向きがあるなこの数値の世界は
クリエイティブコーディング始めようとProcessing弄ってるときは脳汁出まくりだったんだがなぁ
俺には視覚表現の世界が向いてるみたいだw糞残念orz
0936デフォルトの名無しさん2016/03/21(月) 19:26:30.98ID:6CCzeR6o
Processingなんて実質只のJavaのラッパーなわけだし
それ自体がクリエィティブかどうかなんて関係ないだろ

再帰とか数学的な手法による表現(フラクタルとかね)を使えるようになると
もっと表現の幅広がるよ
0937デフォルトの名無しさん2016/03/21(月) 19:53:59.91ID:O91tDVvZ
Processingみたいなのって生成された画像単体ではあまり意味がなくて、
美しいアルゴリズムから驚くような結果が出ることに意味があるんだろ
ただお絵かきしたいだけならIllustratorでもさわってればいい
0938デフォルトの名無しさん2016/03/21(月) 21:12:39.59ID:W47zDOKQ
>>937
ちゃうちゃう。ただビジュアライザに特化してるだけや。
アルゴリズムの視覚化なんて言語なんて関係ないわ。
0939デフォルトの名無しさん2016/03/21(月) 21:36:09.07ID:6CCzeR6o
別にビジュアライザ?に特化してるてわけではないよ
単に手続きがめんどうくさい画像を扱うクラスや関数をまとめてるだけで
普通にプログラミングできる
0940デフォルトの名無しさん2016/03/21(月) 21:49:33.25ID:W47zDOKQ
>>939
何言うとるんや
これ視覚的なもんに特化させる目的で作った言語やで
0941デフォルトの名無しさん2016/03/21(月) 22:20:09.78ID:6CCzeR6o
いや、ただのJAVAで書いたライブラリを使用するIDEでしかないよ
0942デフォルトの名無しさん2016/03/21(月) 22:23:57.96ID:kJZpQOMQ
また噛み合わないで話してる
元々はビジュアル関係で楽にできる物だったけど最近色々できる様になっただけだろ
0943デフォルトの名無しさん2016/03/21(月) 22:33:39.79ID:W47zDOKQ
最近いろいろできるて、js実装の方じゃJava呼び出せないやろ。
0944デフォルトの名無しさん2016/03/21(月) 22:36:47.56ID:6CCzeR6o
だからprocessing.jsもprocessing.jsのモジュールからクラスや関数を呼び込んで
JSの形式で書いてるだけだよ
0945デフォルトの名無しさん2016/03/21(月) 22:40:14.48ID:W47zDOKQ
>>944
いやいやいやいやなに言うとるんや
書くのはJSじゃないで?君触った事ないやろ?
0946デフォルトの名無しさん2016/03/21(月) 22:43:34.37ID:W47zDOKQ
なんやこれ、なんでこんなくだらない事知ったかぶるんや?
びっくりするわ。
0947デフォルトの名無しさん2016/03/21(月) 22:45:37.54ID:6CCzeR6o
processingもprocessing.jsも、しょちゅう書いて遊んでるよ
0948デフォルトの名無しさん2016/03/21(月) 22:56:54.48ID:W47zDOKQ
もしかして、テキスト表示とかキー操作をいろいろできるって意味で言ってたんか?
そんなら謝るわ。
0949デフォルトの名無しさん2016/03/21(月) 22:59:33.24ID:49NnzOUU
>>947
遊ぶって 楽しいの?
0950デフォルトの名無しさん2016/03/21(月) 23:00:51.18ID:6CCzeR6o
>>947
いや言語じゃなくてライブラリを使っているに過ぎないってことだよ
DirectX言語とか、Unity言語っていわないでしょ
0951デフォルトの名無しさん2016/03/21(月) 23:03:47.58ID:6CCzeR6o
>>950 おっと安価ミス、スマソ

>>947 -> >>948 ね


>>949
楽しいよ
0952デフォルトの名無しさん2016/03/21(月) 23:12:22.69ID:W47zDOKQ
>>950
それはないで。color型とかJavaとも明らかに違う部分があるし、構文解析もしとる。
そもそもjs上で動いている時点で、Processingはちゃんと独立した言語や。
0953デフォルトの名無しさん2016/03/21(月) 23:15:33.26ID:p3S9wzo3
今ではJSで動かすのが基本になってしまって
わざわざ言語作った意味はほとんどなくなってしまったけどね
結局普通にJSのライブラリでよかったっていう
0954デフォルトの名無しさん2016/03/21(月) 23:32:21.40ID:6CCzeR6o
>>952
javaにもawtに、java.awt.Colorとか有るし
それのラッパークラス書けばいいだけじゃん

>そもそもjs上で動いている時点で、Processingはちゃんと独立した言語や

これは、意味フ
0955デフォルトの名無しさん2016/03/21(月) 23:42:12.73ID:TgkbVDdP
colorリテラルとかあるようだし、若干の言語拡張はあるんじゃねーの?
でもまぁ「ExcelVBA楽しいよ」ってのと同種だからなぁ
0956デフォルトの名無しさん2016/03/21(月) 23:46:25.97ID:6CCzeR6o
もしかして外部拡張でpdeファイルを外部から読み込む事をそう言ってるのかなあ?

chromeだとローカルのファイルで実行できないから自分はそういうやり方はしないけど
それってjava形式⇒JS形式に変換してるようなものだから
直に動いてるわけじゃないから独立した言語っていっていいものやら
0957デフォルトの名無しさん2016/03/22(火) 00:52:25.57ID:K9F4/b6Q
「Pythonista」iOS上で動作するPython統合開発環境がv2.0にアップデート!その物凄い内容とは
http://hitoriblog.com/?p=34268
Python 3.5.1ベースのiOS用Python IDE「Pythonista 3.x」がβプログラムの登録受付開始
http://hitoriblog.com/?p=36156
0958デフォルトの名無しさん2016/03/22(火) 21:14:16.27ID:JoOYqM3n
>>954
> これは、意味フ
ある言語の上に別の言語を作るのはよくある話。
0959デフォルトの名無しさん2016/03/22(火) 23:18:51.44ID:ISJEv1tY
それ言い出したらあらゆる言語に同じ事言えるんじゃね?

それが独自性のある言語かどうかが問われてるのであって
0960デフォルトの名無しさん2016/03/23(水) 07:43:05.07ID:KJQ0pnVx
Processingというクリエイティブとエンジニアリングの横断領域に嫉妬する奴多すぎてワロタwww
それだけ土方が多いってことかな
0961デフォルトの名無しさん2016/03/23(水) 08:02:11.43ID:x1IxaEYS
まあTSとかがそうであるように、JSにどう変換されるのかが透けて見えるという意味では
JSと同じようなものと言えるような気もしてこなくもない
0962デフォルトの名無しさん2016/03/23(水) 14:44:13.79ID:SO8bghGm
本家ProcessingもJAVAの規約上でしか書けないもんな

今はpythonモードやJSモードもあるけど、そのままJythonに渡してるだけだったり、
JSモードは普通のjavaスタイルで書いたものをhtm形式で書き出して
processing.jsを呼んでるだけだったりだし
0963デフォルトの名無しさん2016/03/23(水) 15:25:00.56ID:wcoEGWZt
Processingの人気に嫉妬
0964デフォルトの名無しさん2016/03/23(水) 22:26:48.08ID:wQhSXLia
Processingがいかに優秀であっても、
Processingからいつまでもステップアップできない言い訳にはならないので勘違いしないように
ああいうのは普通にプログラミングできる人が片手間に遊ぶもんだよ
0965デフォルトの名無しさん2016/03/23(水) 23:01:22.74ID:b/V8QLiP
優秀と言うより、見た目でわかりやすいよね、ビジュアライズすると。
視覚表現がうまいと、偉い人と極端なアホを納得させやすいから、色々中間管理職同士で研究してるな。
組み合わせ爆発をズームアップする太陽系みたいに見せるのと、走ってるクエリを拾ってexplainでプラン見せ続けるのはウケが良かった。
0966デフォルトの名無しさん2016/03/23(水) 23:06:59.25ID:V9ygGt9v
processingって学生用のオモチャじゃなかったんだ
0967デフォルトの名無しさん2016/03/23(水) 23:20:14.30ID:b/V8QLiP
>>966
別に手でも書けるけど、便利なのあるなら使わないとな。
説得する為の工数なんか積んでられんでしょ。
「簡単だけど手数がかかる」ってタイプ以外の簡単は何でも使うよ。
0968デフォルトの名無しさん2016/03/23(水) 23:51:55.39ID:V9ygGt9v
ハッカーと法律屋のトラブルはいつまで続くんだ
0969デフォルトの名無しさん2016/03/24(木) 18:51:42.10ID:gBpFViiN
>>964
何故Processingから脱することがステップアップになるのか謎
ツールなんだから各個人が成したいものを実現出来るのなら何でもいいんじゃないのかな
0970デフォルトの名無しさん2016/03/24(木) 23:20:27.45ID:KjBJksUA
まさかRubyが廃れてpythonが流行するとは
5年前はRuby強かったのに
0971デフォルトの名無しさん2016/03/24(木) 23:33:44.69ID:bRX025wQ
まさかRuby信者が消えてPython信者が現われるとは
数か月前はキモさといえばRuby信者だったのに
0972デフォルトの名無しさん2016/03/24(木) 23:45:56.07ID:vscoeD/v
つまりRubyもPythonもキモい
0973デフォルトの名無しさん2016/03/25(金) 00:17:22.73ID:enybkgjI
自分だけはキモくないという前提
0974デフォルトの名無しさん2016/03/25(金) 00:42:11.36ID:+Ze54dSh
大昔はLISP信者がキモかったぞ。
0975デフォルトの名無しさん2016/03/25(金) 01:39:28.37ID:u247mTrY
Rubyはもうグダグダのブレブレ
3.0はいつ出るんですかね
静的型はどうなったのかね
0976デフォルトの名無しさん2016/03/25(金) 03:06:43.76
型付スクリプト言語なんだけどコンパイラもありよ、
なんて言語は無いんすかね
開発中はコンパイル無しで配布するのは高速のコンパイル済みとか
0977デフォルトの名無しさん2016/03/25(金) 04:21:00.08ID:asmDpodL
HaskellでもDでもインタプリタ環境あるんだからそれ使えば良いじゃん
0978デフォルトの名無しさん2016/03/25(金) 06:52:53.28ID:cL/3f2q1
何の意味が?
IDEならコンパイルなんか意識する必要ないし、テキストエディタでもmakefileかなんかで
コンパイル&実行を一緒にやるようにするだけだよね
実行時に差し替えたいということなら静的型では事前バインディングの仕組み上インタプリタだろうと難しい
0979デフォルトの名無しさん2016/03/25(金) 07:01:02.88ID:cL/3f2q1
あと静的バインディングする言語は実行する前に全てのモジュールを処理系が把握してなきゃいけないから
インタプリタでも起動時に全体をロードする必要があり、コンパイル+実行と原理上それほど起動時間は変わらない
0980デフォルトの名無しさん2016/03/25(金) 07:48:53.24ID:dreyXuTm
スクリプト言語が開発された時代とは環境も変わったからな。
・即時実行 ← IDEが充実し、コンパイルが速くなった
・言語機能 ← 正規表現やクロージャはどの言語にも追加された
・動的型 ← やっぱり静的型のほうが良かったよ…

残る利点として
・サンドボックスを提供しやすい
はあるかな。ただ、カスタマイズや拡張のためにエンドユーザがコードを
書かなければ意味がないし、そういう状況も減少気味(モバイル、ウェブアプリ)。
0981デフォルトの名無しさん2016/03/25(金) 13:32:52.95ID:1OrvczFU
>>970
RubyもPythonも気持ち悪いです。

JavaScript一択
0982デフォルトの名無しさん2016/03/25(金) 13:38:00.06ID:4UQegrSb
>>981
やっぱりC言語風のシンタックスが好きですかw
0983デフォルトの名無しさん2016/03/25(金) 13:38:19.30ID:inErgih6
コンパイラのインストールはOS並みに面倒臭いだろ
perlとpythonとjavascriptを全部インストールはできるが、gccとllvmはできるかな
0984デフォルトの名無しさん2016/03/25(金) 13:45:52.54ID:1OrvczFU
>>982
他の多くの言語がそうであるように、JavaScriptもそうであるから学習コスト
が低くて助かる。しかし、RubyやPythonはわざわざ違う形式で書かせるのが
気に食わない。

forループ一つとってもそう。
0985デフォルトの名無しさん2016/03/25(金) 15:07:23.65
カッコ沢山有ったっていいじゃないすか
なんでTypeScriptとかCoffeeScriptとか言うんすか
0986デフォルトの名無しさん2016/03/25(金) 15:41:33.65ID:32TV4D8z
TypeScriptはカッコあるだろ。JavaScript+αの文法なんだから。

俺もカッコの有り無しは可読性や書きやすさにさほど影響を与えないと思ってる。

CoffeeScriptで実際にコードを書いた人ならわかると思うが言うほどコードの行数は減らない。
そして減った行を見てみるとそれはカッコだけの行だったりして
ステップ数に数えられないようなものばかり。
0987デフォルトの名無しさん2016/03/25(金) 16:17:52.15ID:HGDOrQd9
>>984
他の多くの言語ってJavaとC#のこと?w
0988デフォルトの名無しさん2016/03/25(金) 16:29:37.54ID:inErgih6
括弧というよりスコープだな
閉じ括弧を明示するのはデストラクタの呼び出しやファイルのcloseを明示するようなもの
0989デフォルトの名無しさん2016/03/25(金) 18:02:44.87ID:cjfLwLS2
Coffeeは文法が破綻していて理不尽なエラーが多発する
文法の健全性を保つ上では最低でも括弧またはドットのどちらかは必須であることをCoffeeは証明した
0990デフォルトの名無しさん2016/03/25(金) 18:02:59.84ID:dreyXuTm
そろそろ次スレ。タイトルどうする?
スクリプト言語だけでバトル時代は終わったようにも思うが
0991デフォルトの名無しさん2016/03/25(金) 18:19:18.01ID:inErgih6
beginを省略して破綻することはあるが、endを省略して破綻することはない
0992デフォルトの名無しさん2016/03/25(金) 18:29:36.86ID:asmDpodL
自分は逆だな
C/C++と似たような書き方のばっかり覚える方がめんどくさい

そんなにC/C++っぽく書きたいなら、C/C++で書いた方がいいわ
0993デフォルトの名無しさん2016/03/25(金) 18:45:16.61ID:iqGr7+me
>>990
Swiftの興隆もあるしな
プログラミング言語バトロワでオケ
0994デフォルトの名無しさん2016/03/25(金) 21:24:12.89ID:vT1OtVPi
ぶっちゃけスクリプトに関してはもうPythonで決着ついた感は否めない
書籍のリリースラッシュや流行りのAIや科学技術周りでの圧倒的シェアもあり、まさかの国内でさえ飛ぶ鳥を落とす勢いだしね
だからもう次スレからはスクリプト限定流行りの何の意味も成さないね確かに
0995デフォルトの名無しさん2016/03/25(金) 21:44:33.77ID:inErgih6
変数の型を書けとしつこく言ってくる連中に比べたらpythonの説教臭さは許した
強者が勝ったんじゃなくて悪者が許された感
0996デフォルトの名無しさん2016/03/26(土) 07:39:57.06ID:iBKPcu3c
ダンピングの原因は同業者による過当な価格競争によるものなんだ
僕は自身の客を取られないように、white spaceで書くことにしたよ
0997デフォルトの名無しさん2016/03/26(土) 08:20:17.93ID:UbEe2NQC
>>874
これからは、erlang elixir phoenix
0998デフォルトの名無しさん2016/03/26(土) 09:49:17.50ID:DqGVmsx1
次スレ
プログラミング言語バトルロワイヤル
http://echo.2ch.net/test/read.cgi/tech/1458953287/
0999デフォルトの名無しさん2016/03/26(土) 10:24:57.24ID:pAOtj1vo
【JavaScript】スクリプト バトルロワイヤル54【php,py,pl,rb】 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1458955459/

>>998
お前死ねよ
1000デフォルトの名無しさん2016/03/26(土) 10:25:47.99ID:pAOtj1vo
>>998は、荒らしが立てたスレなので使わないように
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 78日 20時間 53分 45秒
10021002Over 1000Thread
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
http://premium.2ch.net/
http://pink-chan-store.myshopify.com/
レス数が1000を超えています。これ以上書き込みはできません。