任天堂「今後C++は捨てJavaScriptで開発していく」
JavaScriptは開発効率高いからな。
JavaScriptはC言語の皮をかぶったマクロの無いLisp
泥沼になりそう
Javaと勘違いしてる輩が乱入、に1ペリカ。
6 :
デフォルトの名無しさん:2013/03/20(水) 13:14:38.07
速度出ないだろ
ソフトウェアの進化というのは
開発効率が高い遅い言語で
作りなおすことで進化しているのです。
どんどん遅い言語で作られるようになりますが
それこそ進化なのです。
HTMLとJavascriptで新作マリオ出してくれたら信用する
過去ソース使えねえな
移植効率悪そう
捨てるとは書いてないべ
Javascript のインタフェースを用意してみたんだけど使ってみてくんない?
って感じじゃないのか
モバグリの開発者を囲い込む戦略なんじゃね
HTML5のグラディウス完璧だったしな
そこそこの物は作れるんじゃないか
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
京都大学霊長類研究所
開発効率そんなに違うか?
14 :
デフォルトの名無しさん:2013/03/20(水) 18:38:38.33
レスポンス返って来なかったりメモリ不足がほぼ出ないようなシステムなら問題ないんだけどな
任天堂のゲームでそんなに高いパフォーマンスが必要だったものあったっけ
Cでマリオ作るの非効率だからやめるよ!ってだけの話じゃないの
C++とJavascriptだったら
どっちが開発し易いか微妙なレベル
速度は確実にC++だけど
まだアセンブラだと思ってた
PHPde開発しようZE
JSエンジンが裸で載ってたらデバッグで死ねるな
Javascriptでインタープリタなテスト工程を経て、
C/C++に落としてくれる環境ならば賛同する。
(本番はCPUに近いNativeで。)
アセンブラでマリオ作ろう
23 :
デフォルトの名無しさん:2013/03/21(木) 06:03:03.23
ビックリするかもしれないけどいまやJavaScriptのコードは平均してJAVA並の速度なんだよね
ループ内のコードを外に出したり、ハイコンテキストなのを逆に利用して効率のよいマシン語にすることができる
まぁ開発効率は高いわなぁ。スクリプトエンジンはどんどん高速になってるし
ブラウザ戦争のお蔭でとんでもない速度で最適化が進んだからなあ
早いって言ってもスクリプトエンジン次第だぞ?
任天堂自前で作るのか?
>>23 全然びっくりしないかもしれないけど
速いJavascriptエンジンはC++で書かれてるんだぜ
C#のが生産性高い
30 :
デフォルトの名無しさん:2013/03/21(木) 08:46:25.26
>>11 >HTML5のグラディウス完璧だったしな
コナミ社員の自作自演?w
31 :
デフォルトの名無しさん:2013/03/21(木) 08:48:45.49
いつまでもグラディウスにすがるコナミみっともない
32 :
デフォルトの名無しさん:2013/03/21(木) 08:50:15.82
MSX最大のネガキャンプロデューサー、コナミw
33 :
デフォルトの名無しさん:2013/03/21(木) 08:50:55.03
小島はMSXユーザーw
ブラウザゲームに速度は必要ないし良い判断だろ
ブラウザゲームに特化するのは良い判断とは思えないけどな
>>1に釣られる間抜けな馬鹿に言っておくけど、
JavaScriptで開発をするとは書いてあるけど、
C++を捨てるなんて書いてないからねw
速度が必要なところだけC++を使えばいい。
それにJavaScriptのエンジンはオープンソースの速いやつを使うだろ。
JavaScript実行環境はオープンソースにしないといけないけれど、
それで動かすアプリはクローズドでいいわけだし。
36 :
デフォルトの名無しさん:2013/03/21(木) 09:59:39.05
これは極端な例だけどJSがダントツで早い状況もある
http://nothingcosmos.blog52.fc2.com/blog-entry-155.html 最近のJSエンジンは本当に凄い
JSの数値は64bit浮動少数だけどint型で扱える範囲の時はそれで計算するとかはもう普通
配列も入っている型やばらつきによってそれぞれ最適化される
もう単純演算じゃあ差は出ない
正規表現とか高級言語の方が扱いやすいものもある
当然WEBとの相性はいい
反対に苦手なのがバッファを弄る処理
まあ苦手と言ってもCほどトリッキーなことはできないレベル
元々JSはIO全般と相性が悪かったけど最近はマシになってきた
37 :
デフォルトの名無しさん:2013/03/21(木) 10:26:39.28
JSの速度のことを指摘している人は検討違い
JSの言語自体の問題は無い
あるのはアウトプットをどうするかということ
正直今のWeb技術はバリバリのゲームなんか想定してない
WEBにはオーバースペックだと度々言われるWebGLだって
コンシューマ機として考えたらOpenGL ES 2.0だからしょぼすぎる
WiiUのGPUとマッチしてないと思う
2DゲームだってCanvas2D+CSSだけじゃあ寂しすぎる
エフェクトとかがかけづらいからほとんどWebGL使うと思う
本気でやるんなら新しいCanvasのコンテキストを用意するのはもちろん
リアルタイムオーディオ系API、今ChromeとFirefoxで全然別なのが乗ってて合併中だけどそれをどうするのかも決めないと
細かいとこだけどHTML5のテンプレートとかCSSのシェーダーとか
今実験段階の機能も載せないとダメだと思う
WiiUがスタンダードを決めるくらいの勢いでいかないと成功しない
でもあくまでWeb技術だから無茶もダメ、
ブラウザはもちろん、今年から出てくるMobileWebOSのベンダー何かとも相談する必要あると思う
そういうことが任天堂にできるよう体制考えていくのかっていうのが大事
任天堂の一大プロジェクトとして頑張ってくれ
>>37 何いってんだお前?
ライブラリさえ用意すれば、JavaScriptから
ファイルアクセスだってDirectX(Windowsの場合)だって
使えるんだよ。
Nodeなんかそうじゃん。言語はJavaScript
ライブラリはウェブ標準ではない。
JavaScript使うからってウェブ標準にする必要はない。
うわっ、コナミ社員w
41 :
デフォルトの名無しさん:2013/03/21(木) 10:58:08.26
>>38 だからそのライブラリを用意するのがものすごく大変だと言っている
せっかくWeb技術を使うんだからそれと全くかけ離れたものを作ってもしかたない
Node.jsはWeb技術(HTML)じゃない、JSだけ
それに完全独自じゃなくて他のサーバーサイドJS環境とともに標準仕様を決めている
それでもここまで来るのに何年もかかった
だけどまだNodeはバージョン0.10
フラッシュアップするのにもう1年はかかりそう
それほど大変
そんな中ゲームサイドを作ろうとしたらライブラリ作ればいいじゃすまない
任天堂だけの手におえないし、おってはいけない
それこそ仕様ができた頃にはWiiUの次がでてるようなことになる
それはさすがに無理だからWEB技術を中心に採用することにしたんだろう
でも採用するといっても使えそうな技術は実験段階だったり
標準化に手間取ってたりする
それを待ってるとやっぱりWiiUには間に合わない
でも既存のWEB技術だけじゃあ残念すぎる
なんとかそこら辺を上手くやらなくちゃいけない
じゃないともったいない
> だからそのライブラリを用意するのがものすごく大変だと言っている
今あるC++のライブラリのラッパーを作れば良い。
> それに完全独自じゃなくて他のサーバーサイドJS環境とともに標準仕様を決めている
CommonJSはオワコンで
参考にはするが、そんなのには従わないと
言ってるんだが知らないの?
44 :
デフォルトの名無しさん:2013/03/21(木) 11:21:23.46
C++はもうお荷物になってきたか
HTML5のグラディウスがコナミだとか
スーパーマリオ知らんってどんだけ情弱なんだよw
46 :
デフォルトの名無しさん:2013/03/21(木) 11:26:22.34
>>42,43
今はCommonJS関係ないよ
でもそれが種だった
じぶんはv0.1代の頃から知ってたからよく分かる
それに少し考えてご覧
ほぼストリームのIOだけ提供すればいいサーバーサイドとはスケールが違い過ぎる
絵も音も出さなくちゃいけない
それらはバッファやストリームのラッパーを作ればいい次元じゃない
既存のを使えばいいとか無茶ぶりすぎる
それならそもそもなんのためにJavaScriptを使うのか
仮に既存のCのラッパー大量に用意してはいどうぞ
はて、Cで開発していた頃と何が違うのか
既存のWeb技術を利用でき既存のWebアプリ開発者でも参入できるからいいんじゃないか
それに仕様ってのは作ったはい終わりじゃすまない
それで済むのならHTML5だってもめてない
長い時間をかけて改善を繰り返さないと完成しないもの
そこまでしてゲームサイドJS環境を作れたとしてどんな意味があるのだろうか
でもそれが種だった
でもそれが間違いだってわかった。
二度と同じ事を繰り返すことはないだろう。
> それらはバッファやストリームのラッパーを作ればいい次元じゃない
え? なんで?
根拠が無いなぁ(笑)
実行効率じゃなくて開発効率が悪いからかんべんしてほしいわ。
function hoge(x) {
x.maxLength = 100;
}
↑これをスペルミスで
function hoge(x) {
x.maxlength = 100;
}
↑と書いてもエラーにならないで、なんとなく動いちゃう言語。
時間がかかるのは標準技術だから
独自技術なら時間はかからない。
現にゲーム業界の速度は、標準技術を確立する速度を超えている。
JavaScriptつーかECMAScriptでstrictモード対応なら
>>49みたいな心配はいらないんだけどなぁ
C++を捨てる、なんてどこにも書かれてないな。
こういう釣りは、ゲハとかそっちの方面でやってくれ。
そもそも
>>49はhoge()がオブジェクトxの実装詳細を知っているのが前提という糞設計なのが問題
実装詳細ってなんだ?
公開プロパティだろ?
それともメソッドにすれば解決する問題だと思ってるのか?
>>55 > 公開プロパティだろ?
Javascript知らないのがバレバレ
メソッド(setter/getter)にすれば、少なくとも「なんとなく動いちゃう」は防げるだろ
ただし、それがJavaScript的なお作法に適合するのかどうかはわからんが
あ、typoが問題じゃ無くて、外部から新たなプロパティを設定できてしまうのが問題なのか
だったら、俺はその防ぎ型を知らんわ
>>55 他言語だって、変数を公開して、外で自由に触らせるのは良くない設計だよ?
61 :
55:2013/03/21(木) 15:29:18.67
こういう時のために、Object.seal()があるんだよ
無知どもめ。
いまどきメモ帳でコード書くわけじゃあるまいし
最底辺プログラマが書くC++よりは安全だろう
IDEのサポートが弱いのもダメだな。
動的型.vs.静的型の議論で「動的は簡単に書けて生産性が高い、
静的は安全に書けます。適材適所で使いましょう」みたいな大人の
意見を言うやつがいるけど、ぜったい動的は生産性低いだろ。
>>65 そういうのが出るってことは、やっぱ動的型の言語に問題感じてる人は多いんだろうな。
javascriptが速いのはx86とarmだけ
>>66 >
>>49の問題って何?
まんまその通りだけど。
・スペルミスしたときに
・と書いてもエラーにならない
・なんとなく動いちゃう
それ以外はwebいらないってことで
>>69 今度は、Object.seal()の機能をここにコピペしてみてよ。
>>71 Object.seal()の機能は知ってるから、どうやって
>>49の問題を防ぐつもりなのかだけ教えてくれればいいから。
正直ゲームなんて多少変な挙動あっても適当に動いてりゃ許されるだろ
バグまみれでも大して問題にならないのってゲームプログラムだけだよね
もうおしまいだ〜!!
C++はおしまいだ〜〜!!
>>73 ゲームの方が、(精神的な)子供が多いから大問題になる気がするが
>>72 Object.seal()の機能に、
>>69の問題を防ぐって書いてあるじゃん。
読んでないだろお前。
>>76 > Object.seal()の機能に、
>
>>69の問題を防ぐって書いてあるじゃん。
そうは思えないから、どうやって防ぐのか質問してるんだけど。
コード書いてよ。
78 :
デフォルトの名無しさん:2013/03/21(木) 17:34:38.59
>>45 >HTML5のグラディウスがコナミだとか
>スーパーマリオ知らんってどんだけ情弱なんだよw
もうみんなすごーいんだよーーー
↓
ムダな努力w
79 :
デフォルトの名無しさん:2013/03/21(木) 17:59:31.90
80 :
デフォルトの名無しさん:2013/03/21(木) 18:08:46.63
81 :
デフォルトの名無しさん:2013/03/21(木) 18:09:46.35
コナミがここまでグラディウスに執着してるとは思わなかったなw
断続的にガクガクになるのは、俺のPCがしょぼいせいか?
83 :
デフォルトの名無しさん:2013/03/21(木) 18:21:05.39
だからこれコナミじゃないってw
>>36 なぜ?という部分を解明してないと
学術論文的な所では確実に無視される
その程度の内容
そもそも、まともなソースコードすら示していないいw
85 :
デフォルトの名無しさん:2013/03/21(木) 18:30:12.17
>>81 是非とも横スクロール・オプション・レーザー付シューティング製作を!
86 :
デフォルトの名無しさん:2013/03/21(木) 18:30:58.70
ナムコナミ
87 :
デフォルトの名無しさん:2013/03/21(木) 18:32:21.85
1面しか遊べないジャン
88 :
デフォルトの名無しさん:2013/03/21(木) 18:58:42.16
パフォーマンス的にやば過ぎるなこれ
こんなの客に出したら社会問題になるな
89 :
デフォルトの名無しさん:2013/03/21(木) 19:30:19.85
>>85 1985年から28年間独裁してるから倒さなきゃな。
俺の知ってるニンテンドーのOSはCOMライクな作りでJSインターフェース持ってたよ。
それでブラウザ独自実装してたぞ。
92 :
デフォルトの名無しさん:2013/03/21(木) 19:56:18.14
馬鹿丸出しw
93 :
91:2013/03/21(木) 20:03:43.02
俺?
94 :
デフォルトの名無しさん:2013/03/21(木) 20:05:56.87
>>85 >是非とも横スクロール・オプション・レーザー付シューティング製作を!
コナミの真似をすれば馬鹿と思われるから誰もしないだけw
95 :
デフォルトの名無しさん:2013/03/21(木) 20:08:36.96
本物グラディウスのソースリストいる?
C言語ソースと68000ライブラリ。
>>95 それって、今から読んでもちゃんと読める?っていうか、アホでもよめる??
あと、著作権大丈夫?
97 :
デフォルトの名無しさん:2013/03/21(木) 20:14:45.84
>当時の革命的なシューティングゲームとして1980年の『ディフェンダー』と並び称される歴史的作品。
並ばねーよw
ディフェンダーに失礼。
98 :
デフォルトの名無しさん:2013/03/21(木) 20:15:58.44
グラディウスのストーリー自体はスターウォーズだな。
陳腐だけどw
99 :
デフォルトの名無しさん:2013/03/21(木) 20:19:05.77
>>99 おれ、釣られたの?
某社のOSはオプソだから知ってるんだよ。
知ってると書く奴の100%は何も知らないと言う法則
というか書ける奴は外部仕様を見れば書ける気がするし
書けない奴はソースコードなんか見ても書けない気がする
じゃー、しーらない。
まぁ、確かに、OSのソースよんだけど全然理解できなかったのはそうだな。
グラディウスのソースはあれだ文学として興味あるね。
どういう文体で書かれてるとか、どうやって動いてるだとか。
>>77 だからObject.seal()の機能書いてみ。
何をしてくれるのかわかってないだろw
ほらねw
始まったな宗教対立が
108 :
デフォルトの名無しさん:2013/03/21(木) 21:24:55.62
C言語独裁体制の崩壊
まあコード書けない低能は
この板ではゴミ
存在する価値すら無い
いよいよ崩壊
>>105 var a = {maxLength:0};
var b = Object.seal({maxLength:0});
var hoge0 = function hoge(x) {"use strict"; x.maxLength = 100; return x.maxLength};
var hoge1 = function hoge(x) {"use strict"; x.maxlength = 100; return x.maxlength};
hoge0(a) // => 100
hoge1(a) // => 100
hoge0(b) // => 100
hoge1(b) // TypeError: Can't add property maxlength, object is not extensible
型宣言しないのがきもい
>>111 こりゃ面白い。
Lispじゃなくて、JSがキビキビ動くようになったらまたAI戦争になるんかね。
まず作らなきゃなw
>>114 そりゃ大変だ。
JSがキビキビ動くようになったらソース互換でかなりすごいことになるな。今更だけどな。
やっとObject.seal()の機能を理解したかw
書けると言う奴の100%は何も書けないと言う事実w
俺はかけないと思うんだが、
他人がかけるというんだ。
>>112 これには同意だなー。プロパティを後付け追加で拡張されまくりで
ろくにデバッグされなくて、ゲーム開発環境がますます修羅場になる。
122 :
デフォルトの名無しさん:2013/03/21(木) 23:21:35.98
BASICになりたくてもなれないCとJAVA。
BASICってたしか関数やスコープもなかったと思うけど?
C++の開発環境が肥大化のせいでゲームの本質的な面白さの追求に至れてないなら
富豪プログラミング的発想でカジュアルなゲームでHTML5でもいい 枯れた技術の〜っていう発想に近いわけだし
ただなんでもHTML5でできるわけじゃないし、パフォーマンスチューニングは同じぐらいバッドノウハウある
全然質が違うチューニングだけどもね。モジラの次世代エンジンOdinMonkeyとか気が狂ってる
っていうか単にデベロッパーが減ってWeb屋吸収したいだけとも言える
>>123 関数も文字列操作も強力だよw
何も知らない癖に偉そうに書くと恥をかくよw
30代のリストラ - Cプログラマーの切り捨て
127 :
デフォルトの名無しさん:2013/03/21(木) 23:36:00.71
もうCプログラマーはいらないんじゃないのか?
>>125 他の言語と比べて
どんなことが優れてる?
無いと思ったけど。
129 :
デフォルトの名無しさん:2013/03/21(木) 23:36:37.73
企業のお荷物
130 :
デフォルトの名無しさん:2013/03/21(木) 23:37:08.22
>>130 なんだ。やっぱりただのかまってちゃんだったかw
, -=-‐〜--へ__,,- 、
< ヽ ゝ
ノ 二、___ゝ,/_/ヘ |
| ヲ | | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| ┤ ===、 , ==| | < 切り捨てられる覚悟を
ノ 彳 ―ェ 〈‐ェ〈 ゝ \ しなきゃいけない
ゝ、 イ6|ゝ / \ |‐" \_________
く .^| - ゝ
ヒi_,| \l [ ――.|
,,, -/\ \____,|
―'| \ \ |\_
| \ \. / 〉 \ ̄
|__,\ / ̄〕/ 、/
パソナルームw
134 :
デフォルトの名無しさん:2013/03/21(木) 23:57:05.60
135 :
デフォルトの名無しさん:2013/03/21(木) 23:58:07.39
Cプログラマーを声高らかに切り捨てる
136 :
デフォルトの名無しさん:2013/03/22(金) 00:02:41.00
ミミ彡ミミミ彡彡ミミミミ
,,彡彡彡ミミミ彡彡彡彡彡彡
ミミ彡彡゙゙゙゙゙""""""""ヾ彡彡彡
ミミ彡゙ ミミ彡彡
ミミ彡゙ _ _ ミミミ彡
ミミ彡 '´ ̄ヽ '´ ̄` ,|ミミ彡
ミミ彡  ゚̄ ̄' 〈 ゚̄ ̄ .|ミミ彡
彡| | |ミ彡
彡| ´-し`) /|ミ|ミ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ゞ| 、,! |ソ < 改革をあきらめるな!
ヽ '´ ̄ ̄ ̄`ノ / \________
,.|\、 ' /|、
 ̄ ̄| `\.`──'´/ | ̄ ̄`
\ ~\,,/~ /
\/▽\/
137 :
デフォルトの名無しさん:2013/03/22(金) 00:03:25.35
任天堂を切り捨てろ!
>>134 お前は超能力者かまってちゃんかw
だが、透視できてないぞ。ただのかまってちゃんだw
139 :
デフォルトの名無しさん:2013/03/22(金) 00:13:16.05
彡ミミミミ))彡彡)))彡)
彡彡゙゙゙゙゙"゙゙""""""ヾ彡彡)
ミ彡゙ .._ _ ミミミ彡
((ミ彡 '´ ̄ヽ '´/ ̄ ` ,|ミミ))
ミ彡 ' ̄ ̄' 〈 ̄ ̄ .|ミミ彡
ミ彡| ) ) | | `( ( |ミ彡
((ミ彡| ( ( -し`) ) )|ミミミ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ゞ| ) ) 、,! 」( ( |ソ < 感動した!
ヽ( ( ̄ ̄ ̄' ) )/ \_______________
,.|\、) ' ( /|、
 ̄ ̄| `\.`──'´/ | ̄ ̄`
\ ~\,,/~ /
左翼はCでいい思いをしている
サヨ認定キター
142 :
デフォルトの名無しさん:2013/03/22(金) 00:17:21.20
ひっくり返せ
>>116 まさかとは思うが、
>>111のコードで問題が解決したとか思ってないだろうな?
思ってたとしたら、プログラミングセンスなさすぎなんだけど。
解決したと思わないなら、お前自身のコード書いてみ?
文句言う前に先にお前が書けよ(笑)
は?
俺は、seal()では問題は解決しないという意見なんですけど。
解決すると思うんなら、コードで示してねってことで。
>>145 問題が解決するってひとが
>>111を書いてくれたんだから、
問題が解決しないって思ってるおまえが具体的なコード例を示せよw
>>147 めんどくさいなぁ。
君も
>>111のコードで良いわけ?
だったらプログラミングセンスなさすぎだわ。
>>149 何を書けって言ってるのかな?
分かるように言ってくれよ。
5分程度で書けない奴はプログラミングのセンス無い
>>152 seal()書き忘れるか、seal()が必要だって知らない人がメンテとかしたりしたらアウトだから。
書き忘れなきゃOKとか言う?それってtypoしなきゃOKと言うのと変わらないよ。
C++でnew禁止にできるみたいな、絶対に間違いが起こらない方法は無いと思うんだ。
あるなら教えてほしい。
あと、seal()しまくりなのは汚いし見づらいしエレガントじゃないよね。
C++知らない人がメンテとかしたらアウトだか。
>>153への皮肉はこんなもんでいいだろ?w
>>154 C++のnew禁止テクニックとseal()の違いがわからないなら、プログラミングセンスなさすぎだよ。
new禁止テクニックの話は一言もしてないw
new禁止テクニックのような根本的対策じゃなきゃ意味ないよって言ってるのが
理解できないのか、new禁止テクニックを知らないのか。どっち?
>>153 Object.seal()を直接書いて回るとか何の冗談だよ
いまどきJavascriptでそれなりのプロダクトを作るなら
クラス継承の手順なんかも隠蔽したオブジェクト生成関数を用意してそれを使う
センスとか以前の問題じゃね?
書き忘れたら書き間違えで新たなプロパティ扱いになるって言っても
C++はC++で書き忘れたら色んなものが解放されないという言語なのだけれど…
>>158 残念ながらそれでも駄目なんだ。
なぜなら、JavaScriptでは実引数の型を強制できないから、hoge({maxLength:10})とかできちゃうし。
>>159 念のため説明すると、new禁止にすると、hoge = new Hoge();でコンパイルエラーになるから
これが根本対策になり得る。
>>160 それはオブジェクトというより今時の大抵の言語にあるハッシュとしての使いかただね
Javascriptは両方とも同じものだけど
ハッシュのキーワードミスって別のプロパティ弄っちゃうとか
Javascript固有の問題じゃないだろう
オブジェクトの生成はプロジェクトで決めた生成方式で統一すればいい
オブジェクトの生成ルール決めてるプロジェクトでhoge({maxLength:10})とかやって自爆するのは
C言語で型とか適当でキャストしまくって自爆するのと同じようなものだろw
>>162 ルールを決めても、それを言語仕様的に強制できなければ、誰かが間違える可能性が残る。
誰かというのは、将来のメンテナも含めてね。
それと、xの仕様を変えることによって問題を解決するのなら、maxLengthを
プライベート変数にして、setter,getterにした方がいいと思うんだけど、どう?
>>163 自爆するのが悪いというのは、typoするのが悪いというのと変わらないよ。
>>164 >>49を見直してこいよ
maxLengthをset/getにしてもmaxlengthを作れちゃうから問題だと言ってるのに
>>165 どんな言語でも、言語仕様で強制される以外のルールも守らなければ自爆するって言ってるんだよ?w
JavaScriptでnew禁止するのは簡単。
>>161 ではC++で解放忘れをコンパイルエラーにする方法は?
どんなに優れた言語でもウンコードは書ける
TSRが書けなくなるの?
>>166 setterにすれば、
>>49はsetMaxLength()とsetMaxlength()のtypoの問題にかわる。
typoうんぬんが開発の生産性と関係あると思ってるヤツは素人
>>167 そんなの当たり前だが、今回の問題と何の関係があるのかな?
>>172 setterにすると
>>49のコードが具体的にどう変わるか書いてみてくれない?
>>177 function hoge(x) { x.setMaxLength() = 100; } // 正
function hoge(x) { x.setMaxlength() = 100; } // 誤
ってこと?
178
悪いが、JavaScriptを知らない奴にまで説明する優しさは持ってない。
>>179 いやおれは普通にこういうことだとおもったんだが
x = { val:0, get maxLength() {return this.val}, set maxLength(v) {this.val = v}}
function hoge(x) { x.maxLength = 100; } // 正
function hoge(x) { x.maxlength = 100; } // 誤
x.maxlengthに間違ったら意味無いよね?
ああ、xを実引数にしてhoge()を呼び出すと思ってくれ
>>180 俺の話からそんなコードを想像したのなら、そりゃ話は噛み合わないな。
念のため言っとくが(めんどくさいから、これが最後だよ)、その「正」は
正しくないよ。
コード書けないアホが無理するから...
>>179 >>178はこうか、
>>180を意識してたんでちょっと間違った
function hoge(x) { x.setMaxLength(100) } // 正
function hoge(x) { x.setMaxlength(100) } // 誤
実際にコード例を示さない奴が偉そうだなw
>>186 俺のレスをちゃんと読んでるか?
maxLengthをプライベート変数にし、と俺は言ったぞ?
>>188 >>180はmaxLengthをプライベート変数(=val)にしてるだろ?
少し日本語不自由じゃないの?具体的なコード書けば勘違いされないのに
さすがに今時全部x.setMaxLength(100)みたいにしろとかありえないんでseal()が導入された
>>189 x = {var maxLength;}
>>190 俺の感覚だと、sealしたインスタンスを戻すFactoryメソッドを定義して、それを使うのを
ルール化するというほうがもっとあり得ないんだけど、最近じゃseal使うのが流行ってたりするの?
>>191 >x = {var maxLength;}
文法エラーです
>>192 それは悪かった。今スマホなんで完全なコードを書くのが難しい。
var x = (function() {var maxLength;})();が完全なコードかな。
あと、seal()方式には重大な欠点がもうひとつある。
それは、x内部のtypoを防げないってこと。
>>191 インスタンス生成はフレームワークが提供するのを使うことも多いかな
seal自体は流行ってはいないんじゃないの?ES5サポートしてないブラウザもあるし
でもここは任天堂がこれから提供する独自環境の話をするスレだから、
strict mode前提でsealなんかのES5の機能を積極的に使っていけるんじゃないかなと思ってる
>>193 >var x = (function() {var maxLength;})();
意味がわからない。このコードじゃxに入るのはundefined
あんたがやりたいのはこんな感じのことじゃないのか?
var x={maxLength:0,
setMaxLength:function(v){this.maxLength=v},
getMaxLength:function(){return this.maxLength}};
>>194 seal()方式だとx内部にどんなやばいtypoが発生するの?
なんか基礎的な知識がなくて回り道しそうだから
お前らに最低限の知識を与えておこう
var hoge = (function() {
var private_variable;
function private_function() {
}
return {
public_function: private_function, // プライベート関数をパブリック関数として公開
}
}());
hoge.public_function();
201 :
デフォルトの名無しさん:2013/03/22(金) 11:03:48.66
OdinMonkeyっておぢんモンキーでいいの?
>>200 ありがと。
>>196 それだと、maxLengthを隠蔽できてない。
newを使う場合はこう。
var Foo = function() {var maxLength;};
Foo.prototype.setMaxLength = function(val) {maxLength = val;}
Foo.prototype.getMaxLength = function() {return maxLength;};
var x = new Foo();
console.log(x.maxLength); // => undefined
x.setMaxLength(100);
console.log(x.getMaxLength()); // => 100
console.log(x.maxLength); // => undefined
x.maxLength = 200; // => can't change Foo's property
console.log(x.getMaxLength()); // => 100
try {
console.log(x.getMaxlength());
} catch (e) {
console.log(e.message);
}
newを使わない場合はこう。
var x = {};
(function(obj) {
var maxLength;
function getMaxLength() { return maxLength; }
function setMaxLength(val) { maxLength = val; }
obj.getMaxLength = getMaxLength;
obj.setMaxLength = setMaxLength;
})(x);
console.log(x.maxLength); // => undefined
x.setMaxLength(100);
console.log(x.getMaxLength()); // => 100
console.log(x.maxLength); // => undefined
x.maxLength = 200; // => can't change Foo's property
console.log(x.getMaxLength()); // => 100
try {
console.log(x.getMaxlength());
} catch (e) {
console.log(e.message);
}
それでは、
obj.setMaxLength(1) を
obj.MaxLength = 1 と
間違えてしまうことを防げない。
JavaScriptにグローバル変数は存在しない。
>>206 実際のプロダクトコードでは、複数階層の名前空間に入れるけどね。
>>208 ためしに
var y = new Foo();
y.setMaxLength(200);
x.getMaxLength();
ってやってみたら?
>>210 あぁ、203に合わせると最後は
console.log(x.getMaxLength());
か
とりあえずやってみてよ?
基本的にJavaScriptでは「プライベート変数」はあきらめたほうがいいよ。
newも使わない方がいい。
男なら、publicなプロパティだね。
で、結局typoの問題は解決できないけど、それがJavaScriptってもんだ。
嫌ならTypeScriptがいいんじゃね(使ったことないから知らんけど)。
そもそもタイポと戦えないような奴はプログラマになっちゃいかん
そう、それがたとえ他人の書いたタイポであってもね
タイポは神様からの贈り物なんだよ
Javaをやってると奴隷とかドカタとか煽れるけど、スペルミスなんて、JavaやC#なら入力した
瞬間にエディタが教えてくれるに、それを人間が目で探すとか、動的型の言語のプログラマは
マシーンですか。
JSに限った話じゃないけどテストを書けば問題ないってのは机上の空論だな
>>203もテスト(らしきもの)を書いているけど、結局のところなんのチェックも出来てない訳だし
(203はそろそろ自分の間違いに気がついただろうか?)
JSか
>>203 だからこれは何なんだよw
>var Foo = function() {var maxLength;};
>Foo.prototype.setMaxLength = function(val) {maxLength = val;}
>Foo.prototype.getMaxLength = function() {return maxLength;};
意味がわからんぞw
偉そうなこというまえに基礎からやりなおしてこいよw
>>216 打ってる最中に画面見てないのか?
大文字小文字も規約決めてるだろうし…
l-1とか0-Oとか他人が打ち間違ったのを尻拭いする任務を与えよう
真に恐ろしいのは目の前で裸で立ちすくむソイツではなく
どこに潜んでいるかわからない見えないアイツ
2年前に学ばなかったのか
>>204とか
x.getMaxLength()をx.getMaxLengthってミスしてもとりあえず動いてしまうように見えるし最悪w
JavaScriptが開発効率高いなんてド素人の妄想
>>221 やっぱりスペルミスは目を皿のようにして確認してるのか。
安い底辺プログラマが使えるから開発コスト下げられるとか妄想してるんだろうけど
上のほうが他人のタイポがどうこう言ってる人がいるけど、
自分ならスペルミスしないってのもそうとう凄いと思う。
>>228 「上のほうが」じゃなくて「上のほうで」だな。
頭悪いから日本語でも誤字しまくりだわ。
実行時までエラー発覚しないような言語でバイナリ配信とかサポセン死亡か
>>217 間違いに気づいたよ。指摘ありがと。
普段はnew使わないんだけど(JSONでサーバからデータを受け取ることがほとんど)、
なんとなくnewの例も書いてみたくなって背伸びしちゃった。
ほとんどの場合がViewかViewModelらしきものを使うから、
>>204みたいなコーディングしてる。
あと、try-catchはテストじゃなくて、例外が発生することの確認。
結局、JavaScriptってtypoには無力だと思うんだが、反論ある人居る?
>>226 眼を皿って…typoしたときって自分で違和感ない?
「ん?俺今typoしたかな」って…その時だけ見ればいいじゃん
>>231 ES5以降で導入された(る)機能を活用すればインタプリンタが検出してくれたり、
エディタで補間なんかもやりやすくなるよ
>>203だってstrict modeならエラーがちゃんとでるし
もうちょっと勉強しましょう
>>232 ああそうなの。
おれ、タイポにぜんぜん気づかないときがあるわ。
IDEがスペルミスをチェックしてくれる環境とかすごい楽で好き。
スクリプトのstrictモードに需要があったり、JavaScriptにコンバートする
型付の言語が発表されたりするのをみたら、スペルチェックなんか
機械にやらせたいって人おおいんじゃないの。
>>232 俺はちゃんと resultってタイプしてるのに、resalutが正解だったりするからな。
コピペすりゃいいんだよ
240 :
デフォルトの名無しさん:2013/03/22(金) 18:48:03.66
中身はなかったなw
241 :
デフォルトの名無しさん:2013/03/22(金) 18:56:20.02
下請けイジメの任天堂
コナミには負けるw
243 :
デフォルトの名無しさん:2013/03/22(金) 19:56:03.80
はよ
>>239 ITドカタとか「お前の担当のこの画面、こっちのとだいたい同じだからコピペして作れ」みたいのが基本だからな。
つかJavaScriptもEclipseとかVSでエディットすればtypo減るだろ
良く分からんが、Javascriptの有名なライブラリがsealを中で自動的に
使ってくれるんじゃないの?
Javascriptにオブジェクト指向のclassやextendsのような構文を追加
するライブラリがわんさかあるって聞いたが、そのライブラリどもが
自動的に使ってくれるんじゃないのか
Luaのような使い方するんじゃないのかなと思ってたんだが違うの?
>>246 デフォルトでseal状態にされたら安全にはなるけど不自由になる
sealをサポートしてないブラウザの割合も多いし
正直、Javascriptの文法はアレすぎて
普通、コア部分はC/C++で開発して簡易なゲームロジックは独自スクリプトとかLuaとか使うもんじゃないの
そこをJavaScriptにするってこと?だったらもう少しマシというか新しい言語選んだほうがよくね?
252 :
デフォルトの名無しさん:2013/03/23(土) 10:40:21.59
コア部分なんて一回開発したら使いまわせるようにするだろ
ここまで、どういう経緯でこういう事になったのかの説明無し
http://www.nintendo.co.jp/ir/library/events/130131/05.html ゲーム機のソフトウェア開発が、どんどん大きな投資を必要とするようになった今、
ウェブサービスの転用、プロトタイプの作成、あるいは、インディーズゲーム制作など、いろいろなことを考えたとき、
ソフトウェアの作り手を広げる試みは非常に重要になってくると思っています。
3月のGDCでは、この『Wii Street U powered by Google』や、
いくつかのVoDサービスの開発に使用された、HTML5やJavaScriptなどのウェブ技術でWii Uソフトを開発できる環境や、
Unityという多くのユーザーに使われているクロスプラットフォームのゲームエンジンなど、
ソフトウェアの作り手を広げる試みについて、いくつかご紹介できる予定です。
はいはい解散解散。
誰でも参入できるのかー
でもやっぱり専用環境購入とロイヤリティはお高いんでしょ?
日本のゲーム会社は無能のカスしかいないのに
なぜか全部自分のとこで作ろうとする
固定長メモリの不安感のせいだと思う。
C時代のレベル、ヒープとかあまりメジャーじゃなかった頃はまだイケてた。
海外の文献見てもメモリ管理怪しいのに何で向こうは気にしないんだろうね。
258 :
デフォルトの名無しさん:2013/03/24(日) 10:15:40.18
Unity 風味前提で、って話でしょ。
この古臭いレスの輩たちは何なの?
Unity 風味?
Unity 風情と書き方ったのではないか?
Unity 一味
UnityのJavaScriptはJavaScriptと全く違うだろ
同じだと主張してたのか?誰が?
Unity風味の人じゃね
あの文章みてUnity風味っていうんだからそういうことだろ
そもそもお前ら
> UnityのJavaScriptはJavaScriptと全く違うだろ
↑これが理解できるのかw凄いな
知らないなら黙ってればいいのに。
その程度をエスパーできない奴にプログラムを書かせちゃいかんな
HTML5ベースのJavascriptの環境とUnity環境両方用意するって話だよね
知らないなら黙ってればいいのに。
今回はunityは関係無いぞ
273 :
デフォルトの名無しさん:2013/03/27(水) 22:18:03.24
274 :
デフォルトの名無しさん:2013/03/27(水) 22:19:43.96
> /*
> * Are you a C++ expert? PLEASE ADVICE ME!
> */
くそこいつまじでむかつく
素人がベンチマーク取んなや
275 :
デフォルトの名無しさん:2013/03/27(水) 22:26:48.58
ttp://phoboslab.org/log/2012/08/letter-to-john-carmack > Native code developers shouldn’t be defensive about true accusations of security and stability
> limitations, and JS developers shouldn’t be defensive about true accusations of inefficiency.
「ネイティブコード開発者はセキュリティと安定性の限界に対する正しい非難に抗弁するべきではないし、
JavaScript開発者は非効率性に対する正しい非難に抗弁するべきではない」
とかのJohn Carmackがおっしゃっております(´・ω・`)
心より同意するものです(´・ω・`)
276 :
デフォルトの名無しさん:2013/03/27(水) 22:32:21.95
HAL-NOTEとMSX-VIEW
セキュリティて
CならともかくC++はあんま起きないだろ
>>273 こういう、ベンチマークで10倍差だからとかいう奴って、ほんと頭悪いわ
279 :
デフォルトの名無しさん:2013/03/27(水) 22:42:24.09
280 :
デフォルトの名無しさん:2013/03/27(水) 22:44:51.67
まさかの任天堂スマホアプリ参入宣言かと
281 :
デフォルトの名無しさん:2013/03/27(水) 22:47:07.94
HAL-NOTE
282 :
デフォルトの名無しさん:2013/03/27(水) 22:47:38.30
OSをHAL-NOTEに!
284 :
デフォルトの名無しさん:2013/03/27(水) 22:55:18.23
HAL-NOTEあげ
>>283 そういう事を言ってるんじゃないんだが
お前には理解できんか
人のせいにしないで、自分の説明能力をうたがいましょう。
287 :
デフォルトの名無しさん:2013/03/27(水) 23:22:25.30
MSX-VIEW
Enchant.jsってやつ使ったけどhtmlとjsでここまでできることに感動した。
javaと比べたら平均して2倍遅い程度か
意外とすげえな
速いじゃん
タイトルからウソまみれのスレで喧嘩すんなよ
webkitベースか
294 :
デフォルトの名無しさん:2013/03/28(木) 22:25:05.92
JavaScriptは言語であって、コンパイラが優秀であればC/C++に匹敵する速度は出る。
任天堂は、専用コンパイラを開発する、しているはず。
言語的にはC/C++と似通っていてるが、自由度が高く開発効率はいいんだろう。
295 :
デフォルトの名無しさん:2013/03/28(木) 22:30:09.45
(*´・∀・)(・∀・`*)ヘー
296 :
294:2013/03/28(木) 22:35:24.46
読んだら違ってた。環境自体は独自開発じゃなく既存品を使うんだな。
せっかくだから任天堂はfirefoxos採用しれ
何や彼や言って、結局上手く行かんべさ、アホか?
いい機会だからasm.js採用したら
別にほっといたってC++なんか捨てられるのはわかってるんだからわざわざ騒ぐ事でもないな
これからスクリプトでやっていく流れは皆わかってるだろうし、JavaやC#とスクリプト言語を使い分けていくでしょう
webkitベースということだからfirefox系のものを使うことは無いな
JavascriptVM自体はどこから持ってきたのか説明はあったのかな?
>>300 C++自体が捨てられるなんてことはほぼ無いぞ
環境自体はほぼC++で作ってるんだから
まぁそう思いたかったらそれでいいんじゃないの。
スクリプトなんて昔から使ってるから
なぜ態々この発言をしたかが今にわかると思うよ
C++に取って代わる高級アセンブラが出てこない限りC++は残る
どういう機械語に翻訳されるかわかるという点で
C言語は高級アセンブラと言えるが、
C++は高級アセンブラとは呼べない。
だからそこが覆るのよ ふふふ
JacaScriptの動的コンパイルやJVMやレンダリングエンジンも皆JacaScriptでやるんすね!
さすが動的バインド半端ない
JSのコンパイルってそのままやるんだったらLispとほぼおんなじ方法になるよね。
だったら、C++あたりにトランスコードしてコンパイルする羽目になるんじゃないか??
C++一本で食ってるやつなんていないんだろうから気にするこたぁねえよ
C++が消えるというか完全に裏方になるのはいいのだが、
JavaScriptメインで開発とか正気かよ
もうちょっとマシなスクリプト言語いくらでもあるだろ
普通はそう思っちゃうよね
だけどGoogleとかの勢いが何かを思わせるんだよね〜
というより、スクリプトメインにするほうが儲かるのは間違いない
>>309 さてはお前JVMって何かわかってないな
C++はJVMに残るのみというまさに屈辱の形になりそうだねww
JavaじゃなくてJavaScriptの話なのに何でJVMが出てくるんだ?
エンジンがRhinoだとおもってるのかな?
以上、JavaScript大好きだけどゲーム開発には何の興味もないワナビーの皆様の声をお届けいたしました
ワナビーの意味、間違って覚えてないか?
んふーふっふふっふふう♪
JavaScript たのっすぃー
>>313 Googleのコードで圧倒的に多いのはC++らしいぞ
大部分はChromeのコードらしいけど
JavaScriptエンジンだってC++だろ
結局、基盤的なところは今までもこれからもC/C++だよ
C++敵視するアホの期待とはうらはらに
昔のJava厨はまだ良かった
C・C++を知ってたから
「JavaとC/C++は普通に書けば同じくらいの性能
徹底的にチューニングしたらさすがにC/C++には勝てないけどね」
ぐらいの主張だったけど
JavaScript厨はコンピュータに関する知識が少ないから
「今のVMはすごい。昔とは違う。
Javascriptは最強最速だから」
とか言ってくるんだからな
jsのコンパイラ次第だな
性的片付けがないから厳しそうだが
>性的片付け
おそうじフェラかと
最適化のための構文とかキーワードとかバシバシ追加されたら
そういう寝言にも付き合ってやろう
寝言言ってんのはお前だw
>>325 型推論備えたJSとか無理なのかなと思ったが…クラスベースならともかく、プロトタイプベースとは相性悪そうだな
型情報もってない動的型付け言語の型推論を事前に行うなんて無理っぽい
そういうわけで、Google V8のように実際の実行時に型情報を統計的に推測して
マシンコードに変換する手法が現状最速になってるわけよ
まあそれでもブラウザ用と違ってゲーム端末用途なら
事前コンパイルでバイトコードみたいなものに変換しておくのはいいかもね
最適化とマシンコードへの変換は実行時に行う必要があるだろうけど
>>330 今はそもそもコンパイルが辛いからJITしてるって段階だけど、速度を追い求めてた結果としてもJITが要求されたりする
C/C++みたいな言語でもコンパイラで最適化するだけじゃなく実行時にも最適化掛けたほうが早くなる見込みはあるからな
Ruby処理系Topazとか、PyPyの構造で高速化されるあたりJITによる動的な最適化ってなかなかバカにできん
PyPyってのは「JIT付きPythonインタプリタ上で動くPythonで書かれたPythonインタプリタ上でPythonコードを実行したら、JIT付きPythonインタプリタ上でPythonコードを実行するより早くなる」っていうPythonインタプリタな
UnityのJavascript(もどきw)は型情報を付与してAOTしてるが、そういうアプローチで最適化とかはできんのか?
Unityみたいなアプローチじゃ、
Web技術のHTML5+javascriptでそのままプログラミングできるって用途には使えん
任天堂はUnityとHTML5+javascriptの両方用意するんだから、Unityの方を使えばいい
任天堂限定の話じゃなくてWeb技術の方でそういうアプローチが普及しないのは
各ブラウザの足並みが揃わなきゃ誰も使ってくれないからかな
OS統一すればよくね?
>>336 これはasm.jsをサポートするブラウザが増えなきゃ技術の無駄使いだね
現時点ではFirefoxOS上で動かすためぐらいしか意味が無い
Firefoxだけでしか動かんなら、Cからjavascriptにわざわざ変換せんでも、
Windowsでネィティブに動かせばいいわけで
ああでも、Firefoxが動いていればMacでもLinuxでも動作可能なゲームが作れる?ことになるのか
それはひとつの利点かもな
339 :
デフォルトの名無しさん:2013/03/31(日) 15:17:44.71
Javascriptは統一言語になっていない。
javaやC#のほうが互換性が高い。
Javascriptは非常に処理系(ブラウザ)に影響される。
c#とか実質的にプラットフォーム依存じゃないかw
>>340 2005年ぐらいからタイムスリップしてきたのか?
>>341 Windows上で動くC#で作ったプログラムがほぼMono環境で実用になると思っていいの?w
おうよ
ゲーム用にキワどいところまで攻めたチューニングでもばりばりうごくぜ
Wineでもういいじゃない
ついにWPFとかもサポートされたのか
言語とライブラリの区別はつけようね。
そういうレベルの互換性でいいならJavascriptだってほとんど問題無いだろ
>>346 そういう言いぐさしたらC最強じゃねぇかw
オレ「今後JCは捨ててJSを開発していく」
asm.jsは歓迎だけどな。数値計算分野でのJavascript整備を進めてほしいところ。
FORTRANとか時代錯誤なんで物理シミュも余裕でJavascriptにしてほしい。
352 :
デフォルトの名無しさん:2013/04/01(月) 02:02:42.20
そんなにやるならCかFORTRANかアセンブラへのコンバータの方がいい。
asm.jsは速いとしても限界がある。
同じ様に書いた(物凄い非効率で遅い)ネイティブコードの
二倍程度で済むって話でしょ。
ネイティブコードで書く必要があるような場面って
結局そこからの最適化が勝負だから、
ネイティブを置き換えるのはさすがに無理だろうな。
asm.jsっていうのは、CとかFORTRAN(フロントエンドあるのかな?)で書いたコードを
バイナリへコンパイルする代わりに特殊な中間言語に変換するものだよ?
CとかFORTRANを置き換えるとかっていうのは使用方法を勘違いしてる
C++とアセンブラとjavaしかできない俺は取り残されていくんだろうか‥
356 :
デフォルトの名無しさん:2013/04/01(月) 17:22:13.67
取り残されていく
変化に対応できない人間は弱いな
C++・アセンブラ・Javaできれば他の言語なんてあっというまに覚えられるだろ?
アセンブラ、C、Java、JavaScriptができれば
大体のところは網羅してると思うな。
360 :
デフォルトの名無しさん:2013/04/01(月) 22:25:07.14
覚えられても、あえて覚えない拘りをもつんだろ。
ダーウィンだったかが、必ずしも強者が生き残るのでなく環境に適応したものが残るとかいってた。
正直、言語一つ極めれば大抵の他言語は余裕で覚えられる
手続き型から関数型はちとつらい
俺が生きてる間には関数型が覇権握ることはなさそうだし
とりあえず無視しとく
node.jsとか時代はJavaScriptなん?
>>358>>359>>361 それだけでは、とてもじゃないけど関数型言語を使いこなせる気がしない
極めるのうちに自前で他パラダイムの要素混ぜ始めるのまで含めなければ、だけど
>>365 JavaScriptの応用がホットなのは確かだけど、最終的には適材適所じゃね?
>>365 flashが倒れた以上後釜を狙う立場にいるのは確か
>>366 ループの処理を再帰に変換するのが脳内で一瞬でできるようになれば
そんなに難しくはないような気がしてる。
>>368 最終的には再起を先に考えてしまって後でループに直したりし始めるけどなw
関数は第一級オブジェクト
jQueryとHTML5で既にFlashの後釜
node.jsはローカル鯖テストに使ってる。便利な気がする。同一言語で扱えるので。
コンパイラが絶滅する時代が来るのかな。
(C++は進化してきているのがわかる。JavaScriptに近い部分もあり。)
生のJavaScriptを書くやり方の方が絶滅すると思う
JavaScript(or そのサブセット)を出力するコンパイラが主流になる
変換無しで実行できるっていうのもひとつのメリットだからね
主要ブラウザで直接実行可能なのがJavascriptだけな状態が続くなら
絶滅させるのは難しい
374 :
デフォルトの名無しさん:2013/04/02(火) 16:06:59.30
将来のプログラマはCもjavaも両方出来ないとダメになったぞ
まぁ、移植の手間が省けるぶんゆとり化が進むだろうけど
JavaScriptとJavaが同じだと思ってる人が何人かこのスレに居るな
任天堂のハードの機能に依存したソーシャルゲーとかが作りやすくなるってことか
それこそ個人のサイトでも任天堂ハードを利用したアプリが公開できる
>>376 それできるの?
セキュリティとかロイヤルティとか難しい気がするが
そもそもソースの隠蔽が無理
「JavaScriptは遅い」って言う人はプログラミングについて完全に誤解してる
「JavaScript(を機械語に変換する特定の処理系)は遅い」なら正しいが
「JavaScript(というプログラミング言語)は遅い」という発言はおかしい
プログラムの処理速度を決めるのは言語処理系であって、言語そのものではない
またバカが来た
処理系ががんばればいくらでも速く出来るとか思ってるやつのほうが完全に誤解してるだろ。
まあjs厨はバカしかいないってことで
383 :
デフォルトの名無しさん:2013/04/03(水) 01:01:02.84
>>373 googleがDartを本気でjsと置き換えようとしてるらしいが、どうなることやら
>>378 それいうとあらゆるクライアントサイドプログラムもソース隠蔽は無理じゃね?
ネイティブコードからの逆コンパイル可読性に負けるとはいえ、変数名全部圧縮したJSってMSILからC#に復元したコードと大差ないレベルじゃね?
JavaScriptは、いずれどこかの時点でオブジェクト指向機能を
取り入れた別の物に進化してHTML6の一部になると思う
いまのJavaScriptの環境はC言語で関数ポインター駆使して
一生懸命オブジェクト指向設計してた時と同じように
無理が来てると思う
お前らasm.jsの記事すらまともに理解できないのか
asやってたからjsに変えるのは楽だけど何となく型宣言がないのは気持ち悪い
>>381 何言ってんだ?
原理的にCで吐ける機械語はJSでも吐けるんだが
チューリング完全て知ってるか?
マジバカわろた
390 :
デフォルトの名無しさん:2013/04/03(水) 02:29:33.48
機械語を書き出せるのはチューリング完全と関係ない。
言語がチューリング完全でなくとも出来る。
>>390 チューリング完全な機械語を吐くにはチューリング完全な言語を処理系に食わせなきゃ無理
機械語を吐くこと≠チューリング完全な機械語を吐くこと
ではバッファオーバーフローするjsとその処理系がどのようなものになるか説明してみてください
393 :
デフォルトの名無しさん:2013/04/03(水) 02:36:12.10
>>391 CコンパイラのバイナリをBASE64などでコピペして
チューリング完全でない言語でデコードして書き出す。
394 :
デフォルトの名無しさん:2013/04/03(水) 02:46:14.34
(Cコンパイラの)バイナリデータを吐き出す機能しか持っていない言語は
チューリング完全でないが、チューリング完全の処理系を出力できる。
>>385 JavaScriptはプロトタイプ指向と言うオブジェクト指向と類似するパラダイムを既に獲得しているので、今更オブジェクト指向を取り込む必要は特に無い
>>388 ×Cで吐ける機械語はJSでも吐ける
○Cで書ける処理はJSでも書ける
わかり易い例を出すと、Cと同じ機械語を吐くためにはメモリ破壊出来ないとダメだけどJSでは無理だ
処理速度の面で言うにしてもCと同等の速度が出る「可能性は否定出来ない」程度で現状は未だ無理
最適化に必要な型情報などのヒントを埋め込みまくってようやくCには一歩及ばない上に、そのコードは既に人が書くには辛い領域になっている
動的最適化の果てに静的最適化のみのCを超える可能性とかはあるが、現状ではそれも未達成だ・・・発展著しいし希望は有ると思うけど
>>396 破壊できたら只のセキュリティホールでんがな
398 :
デフォルトの名無しさん:2013/04/03(水) 02:56:41.64
C言語が出力するバイナリと同様のものはJavascriptで吐ける。
C言語の出力をバイナリ文字列としてコピペして書き出すだけ。
>>397 > Cで書ける処理はJSでも書ける
って書いてある。メモリ破壊する処理を書けばいい。
バイナリファイルはきだせるならなんでも作れるだろ。
401 :
デフォルトの名無しさん:2013/04/03(水) 02:59:26.13
より一般にほとんど言語で、C/C++で書かれたC/C++コンパイラと同等の速度が出る、C/C++コンパイラを書くことは可能。
これはチューリング完全なんかと関係する。
Cで書けるということはクライアントの環境を決め打ちできるということだ(キリッ
>>399 メモリ破壊のロジックを再現しても実際のメモリ破壊できないだろ・・・レイヤ違うんだし
メモリ破壊の意味分かってないバカがいるな
さすが低級言語のC/C++厨だな
具体的に説明できない知ったかぶりが煙に巻くときに使う常套句:レイヤ
相手の発言を曲解して馬鹿にした気になれるってある種の才能だよな・・・
395が言ってる処理ってアルゴリズムの事だと理解できないのか、理解したくないのかどっちなんだろ?
説明されても理解できないの方だとしたら、病院行って診断もらってきたほうがいい。特権手帳もらえるよ。
>>405 煙に巻くもへったくれも、JS上に作った仮想メモリはOSが管理する仮想メモリやCPU見てる実メモリとはレイヤ違うからそのまんまだろ
Cすら使いこなせない低能でも
JSでゲーム開発出来ると聞いてアホが喜んでるんだから
水を差すなよ...
ゲーム作ったことある奴ならわかるけど
言語なんか関係ないからな
それ以外のことが難しすぎるし
>>388 それじゃ現状でJavaScriptが遅いのはどういう理由なの?
実装してる連中がバカだから?
(実際的にはムリだけど)原理的には可能っていう屁理屈?
チューリング完全は計算能力の話であって計算速度とは関係ないってマジレスしちゃダメなの?
実際出来るかどうかは知らんけど、チューリング完全とかの概念はむしろ最適化に上限があることを証明するのに使えちゃいそうだよな
チューリング完全って何だよ
論理的には計算速度の最適化もできそうだけど、
ソースコードの量の増加に応じた最適化のための計算量が爆発的に増加しそう
実質的には無理じゃないかな?
>>413 動的型の言語の実行時にきまる動作を静的なコードで
置き換えようとするとコードの量が無限に大きくなりそうだな。
415 :
デフォルトの名無しさん:2013/04/03(水) 10:01:54.27
コンパイラは、文字列処理にすぎない。
ソースコードをパースして、アセンブラ言語の文字列へ変換するだけ。
C製のCコンパイラと同等の速度が出せない言語のほうが珍しい。チューリング完全ということは処理能力に違いがないということ。
「Javascriptのコードから」ってルールが抜けてるんなら
バイナリ列のコピーだけでもいいからね。
>>412 計算理論において、ある計算のメカニズムが万能チューリングマシンと同じ計算能力をもつとき、その計算モデルはチューリング完全(チューリングかんぜん、Turing-complete)あるいは計算完備であるという。--Wikipedia/チューリング完全
>>414 生成され得ないパターンを除外してくとかはある程度出来るだろうけど、停止性判定不能コードの後ろに判定対象が並んでるとかの場合に
チューリングマシンの停止性問題から「有るコードが有る型で実行されるかは有限時間で判定不可能である」って導けそうな気がするんだよな
チューリング完全を完全に誤解してる。
まったくなんのスレだよ
万能チューリングマシンとか停止性問題とか神託機械とか、あのへん微妙に中二病患者にウケそうな概念や単語が並んでるからな
>>415 Cと同等の速度が出せない言語がめずらしいって言っても、
実際には出せてない言語は多いよね。
なんで?
実装してる連中がバカだから?
(実際的にはムリだけど)原理的には可能っていう屁理屈?
422 :
デフォルトの名無しさん:2013/04/03(水) 10:14:38.71
>>421 同等程度の性能しか出せないのに、Javascript製Cコンパイラをつくる意味がない。
それに明らかにコンパイル時間が長引いて実用的でもない。
ゼロからCで書くか、オープンソースのC言語製Cコンパイラを改良した方がいい。
脈絡なく屁理屈をレスするスレ
>>422 ああ、JavaScriptでも同等の処理を書けるってはなしで、
速度はやっぱり遅いんだな。
425 :
デフォルトの名無しさん:2013/04/03(水) 10:33:57.34
>>425 リンク先をざっと見てみましたけど、JavaScriptのコードをCと同等の速度で
実行できるってのはどこに載ってるんでしょうか。
emscriptenの出力コードはjavascript上で機械語コードをエミュレートするだけなんだけど
>>425 それある程度の速度が出るのはJITコンパイルが前提だよ
上で馬鹿がわめいているような事前コンパイルでJavascirptを高速なネイティブコードに変換するのは難しい
430 :
デフォルトの名無しさん:2013/04/03(水) 10:48:42.80
コンパイラは文字列操作してるだけ。
C:製Cコンパイラと同じ文字列操作をすれば出力は同じで、速度も同じになるのは当たり前。
アセンブリ言語 - Wikipedia
次に示す機械語は AL レジスタに 01100001 というデータをロードする。
10110000 01100001
このバイナリコードを人間が読みやすいように十六進法で表現すると次のようになる。
B0 61
ここで、B0 は「ALに後続の値をコピーする」ことを意味し、61 は 01100001 を十六進法で表したものである。
インテルのアセンブリ言語では、この種の命令に MOV というニーモニックを割り当てており、
セミコロン以下に説明的コメントを添えたアセンブリ言語での表現は次のようになる。
MOV AL, 61h ; Load AL with 97 decimal (61 hex)
この場合、定数61Hがソース、レジスタALがデスティネーションに該当し、命令が実行されると、定数61Hが、レジスタALに単純に格納される。
これが人間にとってはさらに読みやすく覚えやすい。
431 :
425:2013/04/03(水) 10:51:48.53
間違えるな。
Emscriptenで変換したコードが速いと言ってない。
JavaScript製Cコンパイラで、C:製Cコンパイラと同じバイナリ(=同じ速度のバイナリ)を作り出せるかだ。
真面目にJSでのゲーム開発を議論するスレかとおもいきや、普通の初心者スレになっているとは。
>>431 JavaScriptでCと同等の処理が書けるかって話じゃなくて、同等の速度がだせるかって話なんですけど。
emscripten はそういうのじゃないとおもうんだ
c->js はかのうかもしれない js->c は範疇外だろう?
435 :
デフォルトの名無しさん:2013/04/03(水) 10:57:37.21
逆にJavaScriptソースと同等機能を実現するC、アセンブラソースを作り出すことも可能。
JavaScript ⇒ C、アセンブラ ⇒ バイナリ としたらJavaScriptも速く出来る。
「この処理系でJSを実行したらCと同等の速度になる」って実例をバーンと出せば
終わる話なのに、できないでいろいろ理屈を言ってることは、やっぱ遅いんだな。
わかりました。
>>435 動的型の言語は単純にCに変換できないでしょ。
>>435 >JavaScript ⇒ C
これで作られるCコードを速度まで同等に最適化するのが難しいわけよ
莫大な計算量が必要で現実的じゃない
440 :
デフォルトの名無しさん:2013/04/03(水) 11:08:59.46
ja.wikipedia.org/wiki/%E5%A4%89%E6%8F%9B%E8%A8%80%E8%AA%9E
asm.js もそうだけど 中間言語というかtranspilerかますと
復元できない
復元までふくめるとcoffeeみたいになるし…あれ解釈エンジンは
おなじだからこそparserラクしてる面もあるし
>>440 どっかの記事だと、asm.js でもネイティブコードの倍の遅さらしいけど。
(倍でもすごいけど)
で、俺の持ってるPCのCPUとGPUを解析して完全に最適化されたコマンドを吐いてくれるJITエンジンはいつ作ってくれるの?
>>440 asm.jsのコードはJavascriptのコードとしても実行できるけどその場合はかなり遅い
モジラのVMは、asm.jsのコードをjavascriptのコードとしてではなくて
特殊な静的言語で書かれたコードとして解釈して実行することができて、
その場合は同じようなのネイティブコードの半分ぐらいの実行速度が出る
つまりこれはJavascriptのコードを早く実行する技術とは全然違う
445 :
デフォルトの名無しさん:2013/04/03(水) 11:23:55.23
Mozilla、Firefox 22 にブラウザゲームを高速化する「asm.js」を搭載 - Infoseek ニュース
Mozilla のゲームプラットフォーム戦略を担当する Martin Best 氏は InternetNews.com に対し、
asm.js コードは、JavaScript 言語の中核要素を使用すると述べた。
基本的には、asm.js を意識して書かれたコードのみが高速化されることになる。
だがこの技術には後方互換性があり、Best 氏によれば、ブラウザが asm.js をサポートしていない場合であっても、
開発者は非常に効率の高いコードを書けると述べている。
http://news.infoseek.co.jp/article/internetcom_20130328_010
反論がなくなったから「Javascriptは処理系しだいでCと同等の速度がでる」って話は
間違いでしたって認めたって解釈させてもらいます。
447 :
デフォルトの名無しさん:2013/04/03(水) 11:31:53.62
>>442 処理内容による。
例えば、asm.jsが円周率を1億万桁求める事をサポートし
それがC言語で書かれていてバイナリとして組み込まれていれば、
単体ネイティブバイナリと計算速度は同等だろう。
>>447 それは、速度を求められるところはCで書かないとCと同等の速度はでないってことですね。
>>443 CPU負荷や空きメモリ、処理対象データに合わせた動的最適化も追加でよろしく!
処理の重いところはグラフィックカードがやるから
ライブラリーに投げるだけでしょ?
ロジック部分の生産性が上がるなら言語部分の
速度を議論するのは不毛じゃないの?
ただ、プログラムの規模が大きくなってきたときに
Javascriptってかえって生産性低いのではないだろうかって
気がするんだけど
結局プログラムの生産性を下げるのって不注意で作り込んだ
バグをつぶすところが大きくて、Javascriptでうまく動かすのには
本来コンパイラーガやってくれる部分を
人間が細心の注意を持ってやらなきゃいけない様に見える
そう言う機能をどんどん追加していったら、
結局遅くて使いにくいC++の亜種になったりしそう
HTML5が流行りでみんながこのビッグウエーブに乗ろうと
するし、実際適用範囲が広がるのは確実だと思うけど、
出来るからって何でもそれでやろうとするのは凄く
間違った方向に進むと思うな
VB.NETが生産性最高
452 :
デフォルトの名無しさん:2013/04/03(水) 12:02:14.73
JavaScript処理系自体がほぼC/C++製だ。
JavaScript処理系をJavaやJavaScriptやC#や純関数型で書くのも可能だろうが。
速くしたい所を念入りに最適化するのは当然。
453 :
デフォルトの名無しさん:2013/04/03(水) 12:39:39.19
>>453 >CコンパイラソースをJavaScriptソースに変換できれば機械語として同じ速度だ。
Cコンパイラソースって何だ?
Cコンパイラのソースコード?
Cコンパイルするプログラムのソースコード?
何と何が機械語として同じ速度になるの?
>>453 ネイティブのCじゃなくてインタプリタのCとJavascriptを比較しろって意味?
そうする意味がわからない。
それにJavascriptじゃCの9割以上の性能出すのムリなんじゃないの。
Cの生産性の悪さとインタープリタの性能の低さを合わせた最強のツールか
無駄に改行入れる奴って例外なくバカだね
もはや自分でも何言ってんのか分かってなさそうだ
最近のコンパイル言語はコンパイルからJITコンパイルに移行しつつ有って最近のスクリプト言語もインタプリトからJITコンパイルに移行しつつ有るというのに、コンパイル言語の不完全なインタプリトとスクリプト言語の最新JITコンパイルを比較とか何がしたいんだ。
459 :
デフォルトの名無しさん:2013/04/03(水) 13:00:33.11
機械語、CPUが直に理解できるワードはC言語とは別もの。
機械語で比較するならば、Cコンパイラと同じ出力を作れれば同速度であるといえる。
Cコンパイラのソースコードを移植できる言語であれば、C言語と同速度。
>>459 何のプログラムコードで書いた何をするプログラムが同速度になるの?
461 :
デフォルトの名無しさん:2013/04/03(水) 13:12:22.58
459だとC言語ソースをJavaScriptでコンパイルしたものが
C製Cコンパイラと同速度という意味だが。
JavaScriptソースとC言語ソースに互いに変換可能で無駄がないとすれば
JavaScriptソースもJavaScript製コンパイラでC言語並の速度が出るということ。
>>461 >JavaScriptソースとC言語ソースに互いに変換可能で無駄がない
ここが間違ってる
JavascriptソースからC言語ソースへの変換は、Javascriptソースのほうが情報量が少ないから、
同等なものに変換するには事実上不可能なほどの計算量が必要になる
>>462なので、
JavaScriptソースをJavaScript製コンパイラでC言語並の速度を出すというのは不可能
JSって変数が全部バリアント型なのにC並の速度が出る。。。わけないだろバカ
動的型付言語とは何なのか
CコンパイラがCソースコードをどのようなマシン語に変換するのか
この辺を勉強してみれば
>>462が如何に難しいか理解できる
なんか致命的な勘違いか致命的な極論が混ざってるようにしか見えんわ
ゲスパーしとくと、JSにコンパイラ移植してもコンパイルしたコードはJSの実行環境では動かないから意味は無いしコンパイル元のコードがJSじゃないから本末転倒だぞ
>>464 そこを全部型付きにして高速化を図ろうってのが最近のトレンドだが、もはや人が書くような言語じゃねと言わんばかりに別言語の中間コードから型ヒント付きJSを生成する技術が登場する始末
JSを元にした中途半端な謎中間言語とか誰得状態だし、なんてーかそこまでやるならMSILでもLLVMでもいいからそのへんのJITレイヤをそのまんまJSに組み込んで中間コードからFunctionオブジェクト生成する機能でも追加しろよって感じだ
467 :
デフォルトの名無しさん:2013/04/03(水) 13:47:40.93
C言語が機種依存して最適化してる。C言語なみの速度がJavaScriptで実現可能かということは原理的には可能だろ。
C++のテンプレート使うと、必要な型のすべてのバイナリを生成し、バイナリの中身は型付き変数として動作する。
JavaScriptコンパイラを作り最適化したらいいだけ。
>>467 原理的に可能って、JSでコンパイル時点ですべての型を予測して
あらかじめ生成するなんてムリだろ。
>>467 テンプレートの場合に型が変化するのはそのテンプレート引数の組み合わせだけだけど、
Javascriptの関数の場合に型が変化する組み合わせはそれこそ莫大な数になる可能性が考えられるわけよw
しかも実行と同等なことをしてみないと必要な組み合わせが判明しない
なので無理
C言語自体は機種依存してないよな
言語とライブラリを分離してるだけで
#ifdef使えば
UNIXとWindowsですらソースコードレベルのポータビリティが有る訳で
API部分を抽象化しても結局うまくいかないのはJavaが証明したし
JavaScriptもそれを繰り返すことになるだろう
471 :
デフォルトの名無しさん:2013/04/03(水) 15:51:24.12
>>468>>469 あまりに実行中に新型の型を生成するようではエラー出してコンパイルを停止させる。
どこで新型が生成されるか事前に判別できるから、無限ならず有限で済むケースでのみコンパイルを成功させる。
>>471 ちょっと複雑なコードを書いたらすぐエラーになるか、コンパイルが終わらなくなりそう。
>>471 ごまかすな
お前が言ってたのはJavascriptのコードをCのコードと同等な速度に変換できるってことだろ?
変換可能な部分のみ変換するのでは
JavascriptのコードをCのコードと同等な速度に変換できるとは言えない
その程度だったら事前に変換してコンパイルじゃなくて、JITコンパイルで十分なのよ
GCありきで書かれたクソコードを静的解析してスタックに割り付ける作業に戻れ
475 :
デフォルトの名無しさん:2013/04/03(水) 19:12:32.02
JavaScriptでC言語に並べるのは事実。
CソースをJavaScriptソース内にStringとしてコピペして
JavaScript製Cコンパイラに通したら、C製Cコンパイラと同じ実行ファルを生成でき
速度はC製Cコンパイラと一緒。
>>475 つまりCで書かないとはやくならないのか。
最適化トランスコーダを書いてさらにCコンパイラで最適化だ!!!
聞きかじりだが、PyPyみたいになるかもしれんぞ。
っていうか、LLVMのフロントエンド書くんだ!!
LLVMはバックのほうが windows でまともにうごくかな!
twitter.com/shelarcy/status/319102598693138433
GHCのSIMD命令対応
がんばるHaskeller...
まあ、関数型は並列性抽出しやすいからな。
>>467 全てではなく呼び出し関係を追いかけて出現した型だけだし、一度確定した型はC++では変化しない
JavaScriptの場合型が変化するどころか型の定義そのものが後から変化してしまうから手に負えない
>>471 「どこで新型が生成されるか事前に判別でき」「ない」
君の大好きチューリングマシンの停止性問題と同じ理屈で、ある条件である部分(ある内容の型生成)が実行されるかは判別できない
結果、実行中に実際生成された型でその都度ネイティブコードを生成するJIT実行か、連想配列を使ったインタプリタに毛が生えたような実装になる
>>475 それはCのコードをコンパイルしただけでJavaScriptコードをコンパイルした事にはならないし、
JavaScript上ではコンパイルで得たバイナリを実行する手段がなくて何の意味もない
>>478-479 素のJavaScriptで型特定は無理ゲーだし諦めて、もうJScript.net(≠JScript)でよくね?
型ヒントとか色々付けないとコンパイル通らないけど、一応IL吐けるからC++/CLRといい勝負できるかもしれん
もっとゴリゴリやりたい部分はMSILからFunction生成で誤魔化すw
なんでMS前提なんだよ
JavaScriptと実用レベルで互換が有ってネイティブコードまでまともに変換できる製品がJScript.netくらいしか思いつかなかったんだ
吐けるバイナリはMSILだけどMSILのJITコンパイルは起動時/インストール時にほとんど終わるからJSのコンパイル基盤って意味では一番まともかと
JScript.netが吐き出すILやそのアセンブリを見たこと無いからなんとも言えんけど、
ILの品質次第ではJavaScriptで書いたコードが等価なC/C++で書いたコードとタメ張るかもしれん
まぁ最近の家庭用据置ならちょっとしたアプリやホビープログラムならスクリプトでお手軽に
ってのはありじゃね
商用のフルパッケージでそんな事してたらアホだけど
いいからファミリーべーしっくやってろw
いまや商用のフルパッケージなゲームでこそ、
DSLとしてスクリプト言語的なものを使うのは普通だね
大きなゲームでスクリプト使うのは
・リロードで差し替えられることによるトライ&エラーしやすさ
・ビルド環境不要
という面が大きい。
Lua好きなんだけど、
PCアプリではBlender-Pythonみたいなあまり有名なのが無いのはなぜなんだろう。
Moai SDKでググれ
495 :
デフォルトの名無しさん:2013/04/07(日) 09:54:54.98
[参考] ベンチマーク - FOR-NEXT10億回ループ
(表1)ベンチマークテスト結果(数字が小さいほど速い)
MASM32 JavaScript DarkBASIC AGK 99BASIC
---------------------------------------------------------------------------------
PC(CeleronD2.66GHz)[sec] 0.7828 7.772 20.853 65.423 1532.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 1.0 9.928 26.638 83.575 1957.0
---------------------------------------------------------------------------------
Nexus7(Tegra3)1.3GHz[sec]. ----- 36.480 ----- 320.18 -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率. ----- 46.601 ----- 409.01 -----
---------------------------------------------------------------------------------
iPhone4S(Cortex-A9)800MHz[sec] ----- 36.521 ----- (※注) -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 ----- 46.654 ----- (※注) -----
---------------------------------------------------------------------------------
(※注)iPhone版AGKターゲットエミュレーターはビデオストリームのため除外。
そういうアプリ内の処理時間の割合が20%未満のグループに入るものの比較をしてもほとんど意味ないよ。
80%に含まれるものの比較をしなきゃ。
それと、例えば1秒とかの単位時間あたりの処理回数も考慮しないとね。
1秒あたりたかだか100回程度しか行わないのに、10億回の処理時間を比べても意味ないし。
ループ速度の測り方は難しいけど
ループが一番処理として多いのは間違いないだろ
批判が適当すぎ
そもそもBASICと比較してどうすんだ
500 :
デフォルトの名無しさん:2013/04/07(日) 11:07:16.45
つまんね
501 :
デフォルトの名無しさん:2013/04/07(日) 11:13:46.06
[参考] ベンチマーク - FOR-NEXT10億回ループ
(表2)ランキング表
開発環境 タイム[sec] MASM32を1とする相対倍率
------------------------------------------------------------------------------------
PC(CeleronD2.66GHz). MASM32. 0.7828 1.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). JavaScript 7.772 9.928
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). DarkBASIC 20.853 26.638
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz JavaScript. 36.48 46.601
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
iPhone4S(Cortex-A9)800MHz JavaScript. 36.521 46.654
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). AGK 65.423 83.575
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz AGK. 320.187 409.01
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). 99BASIC . 1532.0 1957.0
------------------------------------------------------------------------------------
「開発環境:JavaScipt」から滲み出る頭の悪さ
>>498 重要なのは、ループ内の処理速度であってループそのものの処理速度ではない。
まあループそのものの処理速度が致命的に遅いのなら問題だが。1回1msかかるとか。
ループそのものから重ければ推して知るべし
恥かいちゃったね
>>504 推して知れないからいろんなahootoutのページでは様々な切り口でベンチしてるんだよ。
それと、今回任天堂がやろうとしているドメインの機能やAPIを考慮したベンチじゃないと意味ないね。
まあただのループ比較したって意味ないよね
LINPACKみたいに演算やデータアクセスのあるのを比較すればいいのに
507 :
デフォルトの名無しさん:2013/04/07(日) 12:15:30.23
結構バカが吊れたなw
今どき釣り宣言とか・・・
509 :
デフォルトの名無しさん:2013/04/07(日) 12:31:14.37
510 :
デフォルトの名無しさん:2013/04/07(日) 12:43:14.21
本日のロバ=任天堂w
わからないとわめくバカw
つか、masmの10倍くらいしか時間がかからないんだったら問題ないよね
ねんまつ
インクリメントと条件分岐だけで10倍って
普通の処理なら10倍どころじゃすまないってことだぞ
FOR-NEXT10億回ループはJITコンパイラ実装のJavascriptにかなり有利な条件だよね
516 :
デフォルトの名無しさん:2013/04/07(日) 16:35:01.96
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.02 page 1/2
(表1)ベンチマークテスト結果(数字が小さいほど速い)
MASM32 Visual C++ JavaScript DarkBASIC AGK Basic4GL 99BASIC
-------------------------------------------------------------------------------------------------------
PC(CeleronD2.66GHz)[sec] 0.7828 2.821 7.772 20.853 65.423 285.703 1532.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 1.0 3.604 9.928 26.638 83.575 364.975 1957.0
-------------------------------------------------------------------------------------------------------
Nexus7(Tegra3)1.3GHz[sec]. ----- ----- 36.480 ----- 320.18 ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率. ----- ----- 46.601 ----- 409.01 ----- -----
-------------------------------------------------------------------------------------------------------
iPhone4S(Cortex-A9)800MHz[sec] ----- ----- 36.521 ----- (※注) ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 ----- ----- 46.654 ----- (※注) ----- -----
-------------------------------------------------------------------------------------------------------
(※注)iPhone版AGKターゲットエミュレーターはビデオストリームのため除外。
517 :
デフォルトの名無しさん:2013/04/07(日) 16:35:35.22
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.02 page 2/E
(表2)ランキング表(数字が小さいほど速い)
開発環境 タイム MASM32を1とする
[sec] 相対倍率
-----------------------------------------------------------------
PC(CeleronD2.66GHz). MASM32. 0.7828 1.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Visual C++ 2.821 3.604
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). JavaScript 7.772 9.928
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). DarkBASIC 20.853 26.638
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz JavaScript. 36.48 46.601
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
iPhone4S(Cortex-A9)800MHz JavaScript. 36.521 46.654
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). AGK 65.423 83.575
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Basic4GL. 285.703 364.975
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz AGK. 320.187 409.01
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). 99BASIC. 1532.0 1957.0
-----------------------------------------------------------------
まだやってんのかよもういいから
520 :
デフォルトの名無しさん:2013/04/07(日) 17:11:45.40
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.03 page 1/2
(表1)ベンチマークテスト結果(数字が小さいほど速い)
MASM32 Visual Basic Visual C++ JavaScript DarkBASIC AGK Basic4GL 99BASIC
----------------------------------------------------------------------------------------------------------
PC(CeleronD2.66GHz)[sec] 0.7828 2.445 2.821 7.772 20.853 65.423 285.703 1532.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 1.0 3.123 3.604 9.928 26.638 83.575 364.975 1957.0
----------------------------------------------------------------------------------------------------------
Nexus7(Tegra3)1.3GHz[sec]. ----- ----- ----- 36.480 ----- 320.18 ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率. ----- ----- ----- 46.601 ----- 409.01 ----- -----
----------------------------------------------------------------------------------------------------------
iPhone4S(Cortex-A9)800MHz[sec] ----- ----- ----- 36.521 ----- (※注) ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 ----- ----- ----- 46.654 ----- (※注) ----- -----
----------------------------------------------------------------------------------------------------------
(※注)iPhone版AGKターゲットエミュレーターはビデオストリームのため除外。
521 :
デフォルトの名無しさん:2013/04/07(日) 17:12:41.22
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.03 page 2/E
(表2)ランキング表(数字が小さいほど速い)
開発環境 タイム MASM32を1とする
[sec] 相対倍率
PC(CeleronD2.66GHz). MASM32. 0.7828 1.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Visual Basic. 2.445 3.123
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Visual C++ 2.821 3.604
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). JavaScript 7.772 9.928
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). DarkBASIC 20.853 26.638
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz JavaScript. 36.48 46.601
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
iPhone4S(Cortex-A9)800MHz JavaScript. 36.521 46.654
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). AGK 65.423 83.575
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Basic4GL. 285.703 364.975
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz AGK. 320.187 409.01
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). 99BASIC. 1532.0 1957.0
チューリング完全がなんとか言ってた頭のおかしい人か
しょうがねえからワードであぼーんすっかな
523 :
デフォルトの名無しさん:2013/04/07(日) 17:40:27.32
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.04 page 1/2
(表1)ベンチマークテスト結果(数字が小さいほど速い)
MASM32 Visual Visual Visual Java Dark AGK Basic4GL 99BASIC
Basic C++ C# Script BASIC
----------------------------------------------------------------------------------------------------
PC(CeleronD2.66GHz)[sec] 0.7828 2.445 2.821 3.973 7.772 20.853 65.423 285.703 1532.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 1.0 3.123 3.604 5.076 9.928 26.638 83.575 364.975 1957.0
----------------------------------------------------------------------------------------------------
Nexus7(Tegra3)1.3GHz[sec]. ----- ----- ----- ----- 36.480 ----- 320.18 ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率. ----- ----- ----- ----- 46.601 ----- 409.01 ----- -----
----------------------------------------------------------------------------------------------------
iPhone4S(Cortex-A9)800MHz[sec] ----- ----- ----- ----- 36.521 ----- (※注) ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 ----- ----- ----- ----- 46.654 ----- (※注) ----- -----
----------------------------------------------------------------------------------------------------
(※注)iPhone版AGKターゲットエミュレーターはビデオストリームのため除外。
524 :
デフォルトの名無しさん:2013/04/07(日) 17:40:57.94
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.04 page 2/E
(表2)ランキング表(数字が小さいほど速い)
開発環境 タイム MASM32を1とする
[sec] 相対倍率
-----------------------------------------------------------------
PC(CeleronD2.66GHz). MASM32. 0.7828 1.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Visual Basic. 2.445 3.123
PC(CeleronD2.66GHz). Visual C++ 2.821 3.604
PC(CeleronD2.66GHz). Visual C# 3.973 5.076
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). JavaScript 7.772 9.928
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). DarkBASIC 20.853 26.638
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz JavaScript. 36.48 46.601
iPhone4S(Cortex-A9)800MHz JavaScript. 36.521 46.654
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). AGK 65.423 83.575
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Basic4GL. 285.703 364.975
Nexus7(Tegra3)1.3GHz AGK. 320.187 409.01
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). 99BASIC. 1532.0 1957.0
-----------------------------------------------------------------
525 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/07(日) 17:50:32.98
んじゃな♪(ペロリ♪”
>>514 いや、傾向としては、そういう速い処理は差がつきやすいけど、IOが
絡んだ処理のように明らかに遅い処理はほとんど差がないってのが
一般的な傾向じゃね?
どんだけレベル低いんだよ・・・
そらバルーンファイトはそうだろうけどよ
>>515 っていうか最適化によってはループせず変数に最終値が直接代入されて終わるレベルまで展開されかねない。
JITだと一巡回しきるまでループ結果を展開できないけど、事前コンパイルだとコンパイル時にループ回して結果確定できるからコンパイラ使うほうが強くね?
・・・まぁVCとかが遅く出てるようだから最適化を切った無意味な比較っぽいが。
>>522 実際試してみたら(どのJSエンジンかは知らんけど)JavaScriptの遅さに仰天してアセンブラ信者に転向したんだろうな。
takやtaraiを覚えたら関数型言語に転向しそうだ。
JSは変数スコープがキモイ
JSの変数スコープが理解できないやつはわりと頭悪い
typoしても黙ってるとかタチ悪すぎ
VBAですらOption Explicit必須だというのに
strictモードにしろよ
>>532 文ブロックで隠蔽されないとかきもくね?
>>535 LispとかやってるとJavascriptの方が自然だな
そもそもレキシカルスコープとかLisp由来なので
ラムダのみが新しい束縛範囲をつくる
letや文ブロックはただの糖衣構文に過ぎず、そういうのは極力少ないほうがいい
関数型はやり過ぎ
543 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/10(水) 17:14:14.25
>>1 >任天堂のゲームはこれまで,CやC++といったプログラミング言語で開発されており,
>そのため高いパフォーマンスを発揮していたが,反面,開発に時間がかかっていたという。
>このセッションではそれ以外の方法,つまりHTMLやJavaScriptを使ってWii Uの全機能にアクセスしつつ,
>より手軽にゲーム開発を行う方法が説明されるようだ。
ありえないな…。
どうせフルアセンブラで書いてて後継者がいなくなったってところが正解だろうなw
岩田社長はVIC時代の功績(※)があるとしても、さすがに無理があるだろうな。
- - - - - - - -
(※)VIC時代の功績
HAL研究所在籍時にナムコのゲームを当時のゲームパソコンVIC-1001に無断移植して海外で大ヒットした
コトを指す。
これによってVIC-1001を製造販売していたコモドール(カナダ)は一時的に世界シェアNo.1を獲得する。
きょうびフルアセンブラで開発してるとこなんてないっつーの
545 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/10(水) 18:08:55.33
んじゃ証拠並べろw
>>545 1mb位でさえフルアセンブルしてみれば、どれだけ大変かわかるぞ。
んで、このスレにも書かれてたと思うけど、Web屋を取り込みたいんだろう。
あと、コンパイラを真面目に作れば、C++の2倍程度で済むらしいから、
表現力の向上を考えればトレードオフできるレベルじゃないか?
それに、頑張ってCTFEでも実装すればもっと縮まるし。
547 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/10(水) 20:05:29.65
>>546 …「 JavaScriptコンパイラ 」 か?w
” 緩いJava ” みたいになってますます混乱するだろうな(笑)
フツーに中間言語(CLR/MSIL)にしか翻訳しないコンパイラならBASICコンパイラの方がいいだろうな。
既存のOSとかAPIとかのパラメーターの引き渡し方法(スタック渡しとか)をどうやって実現するかは別
にしてな。
ハードウェアを直接操作するってのは時代に沿わないけど、これとは逆行してAndroidとかAppleとか、
ファイルシステムも直接操作させないように企図してる。
任天堂みたいなゲーム機メーカーごときが口を挟むべきじゃあないな。
ゲーム機メーカーは独裁的で人から嫌われるモノ作りで、自由なパソコンの世界とは対極にある。
CLR…共通言語ランタイム
CLI…共通言語基盤
CIL…共通中間言語
>>547 JavaとJavascriptの区別がついてないの?
JSのオブジェクトはほとんど参照渡し。なのでポインタに変換可能。
APIはさすがにC++で実装するだろうけど、ASMが必要なくらいローレベルな用途は全部APIでカバーしないとダメなレベル。
あんたシステムプログラムやったことないだろう。
何とかごときとかそういう発想がすでに不味いわ。ほんと。
WiiUのOSはどこが開発してるんだよ。まったく。
プログラミングで一番大切なのはコンパイラもそうだけど、もっと大事なのはデバッガ。
俺はVCのデバッガに育てられたからな。
>>536 function test(arg) {
if(arg) {
var foo = hogehoge...;
} else {
var foo = fugafuga...;
}
}
これでelse節のfooが2重定義エラーなのがキモイ
Lispだってここまでへんちくりんじゃねぇ(DynamicScopeはもっと変だけどな)
552 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/10(水) 22:09:28.64
553 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/10(水) 22:21:28.72
>>549 >あんたシステムプログラムやったことないだろう。
あんまり感情的になる人はプログラマーには向いてないよw
554 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/10(水) 22:25:36.63
任天堂ごときが開発環境を語るってな感じかw
556 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/10(水) 23:00:56.57
俺様 「 今後任天堂ごときは捨ててJavaScriptで開発していく 」
JavaScript(wwwwww
PHPみたいなエレガントな言語触ったらこんな低機能な物は触れないよ(w
wwwwwwwwwwwww
559 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/11(木) 00:05:47.39
いいぞいいぞ♪(ゲラ
560 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/11(木) 00:11:02.57
任天堂はソース漏れのリスクを抱えながら開発していくんだろうなw
またしょーもないのに目をつけられたな
562 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/11(木) 01:11:11.79
悔しいのうw
563 :
デフォルトの名無しさん:2013/04/11(木) 05:52:15.45
Webkitはオワコンになったのに大丈夫なのか?
Webなんてオレオレフレームワークだらけでまともに付き合っちゃだめ
>>563 必要ならWebkitからBlinkに切り替えるだけ
>>543 「任天堂のゲームはこれまで,CやC++といったプログラミング言語で開発されており」をどう読んだら「どうせフルアセンブラで書いてて」になるんだ?
部分的にアセンブラ使っててもフルアセンブラは今時ねぇよ。実行頻度の低い部分はC/C++なんかの言語で書いたほうが生産性もバグの発生率も低い。
>>546 JavaScriptで表現力向上って何の冗談だ・・・開発コストの低下とかならともかく。
D言語のCTFEって只の最適化の補助構文に過ぎなくねぇか?
>>547 今時の中間言語は実行時にJITコンパイルする。バイトコードをチマチマ呼んでインタプリトとかはしない。
そしてこのJITは場合によっては実行状況に合わせて動的に最適化することで事前コンパイルより高い効率を出す可能性すら有る。
一方昔のBASICコンパイラみたいな奴はBASICの命令を命令に相当するサブルーチン呼び出しに置換するだけで、
バイトコードインタプリトよりマシだがJITコンパイルとは比べてはいけないレベルで効率が悪いコードしか吐けない。
それと、ハードウェア直接操作云々はこのへんの話に全く関係ない。
WebGL見れば分かる通り、JavaScriptでGPUのプログラマブルシェーダを直接ぶっ叩くことすらとっくに可能となっている。
AndroidもiOSもプログラマブルシェーダ自体は(保護された環境下で)直接ぶっ叩けるんじゃなかったかな。
最近のハード直接云々の話は仮想化云々の話題に近くて、「保護すべき領域を保護しながらハードウェアの機能をお上品に直接叩く」方向にある
>>549 ポインタが示す先の型をどこに保持するかって問題を忘れている。Cではコンパイラが型を特定し、型に対応したコードを生成する。
C++のRTTIでは、コンパイル時に特定できない型はオブジェクト側に型情報をもたせ、それを実行時にロス覚悟で参照して想定されている型ごとのコードに分岐する。
JavaScriptでは、多くの型がコンパイル時に特定できない上に、想定されうる型が無数にあるため型ごとのコード生成が非常に困難になる。
コンパイル時に強力な解析を行えば型特定もある程度できるが、言語がそれをサポートしていない以上限界がある。
567 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/11(木) 22:35:09.70
>>566 …アセンブラができないクセに偉そうに語るところが面白いよなw
おまえの書いてる中身は教科書の中身にすら劣るってのが相場だよ。
おまえのレスは本当にからっぽだな
569 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/11(木) 22:55:48.68
ファミ必死w
アセンブラができるやつが今時ゲーム開発でフルアセンブラなんて発想するのか
こえーな
春厨かよ
>>567 勘違いしていい気になってる所悪いが、このスレで俺があんたにレスしたのは566の一回だけだ
アセンブラはx86とAVR、あとMIPS系を齧る程度には使ってるが・・・
・・・そもそも俺のレスはx86アセンブリがちょっとわかればわかる程度のことしか書いてないぞ?
どれだけ補助機能を利用して効率化してもアセンブラは記述効率が非常に低いってのはアセンブラを触ればアホでもわかるし
デバッガでアタッチしてみれば、BASICなんかでよくあるスレッデッドコードがアホみたいなCALL連打になるも一目瞭然だし
MSILバイナリが実際には普通のC/C++から生成したのと大差ないx86命令に変換されて実行されてるのもすぐに分かる
教科書に勝ること書いてるなんて思ってもいないが、「中間言語(CLR/MSIL)にしか翻訳しないコンパイラならBASICコンパイラの方がいい」なんて、
「BASICをネイティブコードに変換できるコンパイラが存在します」「中間コードは中間コードインタプリタで実行されます」
「インタプリタは遅いです」なんて十年以上前の教科書レベルの知識をMSILに適用したかのような事をまじめに書くよりは遥かにマシだわ
573 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/12(金) 05:38:18.46
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.04 page 1/2
(表1)ベンチマークテスト結果(数字が小さいほど速い)
MASM32 Visual Visual Visual Java Dark AGK Basic4GL 99BASIC
Basic C++ C# Script BASIC
----------------------------------------------------------------------------------------------------
PC(CeleronD2.66GHz)[sec] 0.7828 2.445 2.821 3.973 7.772 20.853 65.423 285.703 1532.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 1.0 3.123 3.604 5.076 9.928 26.638 83.575 364.975 1957.0
----------------------------------------------------------------------------------------------------
Nexus7(Tegra3)1.3GHz[sec]. ----- ----- ----- ----- 36.480 ----- 320.18 ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率. ----- ----- ----- ----- 46.601 ----- 409.01 ----- -----
----------------------------------------------------------------------------------------------------
iPhone4S(Cortex-A9)800MHz[sec] ----- ----- ----- ----- 36.521 ----- (※注) ----- -----
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MASM32を1とする相対倍率 ----- ----- ----- ----- 46.654 ----- (※注) ----- -----
----------------------------------------------------------------------------------------------------
(※注)iPhone版AGKターゲットエミュレーターはビデオストリームのため除外。
574 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/12(金) 05:39:02.30
[参考] ベンチマーク - FOR-NEXT10億回ループ ver1.04 page 2/E
(表2)ランキング表(数字が小さいほど速い)
開発環境 タイム MASM32を1とする
[sec] 相対倍率
-----------------------------------------------------------------
PC(CeleronD2.66GHz). MASM32. 0.7828 1.0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Visual Basic. 2.445 3.123
PC(CeleronD2.66GHz). Visual C++ 2.821 3.604
PC(CeleronD2.66GHz). Visual C# 3.973 5.076
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). JavaScript 7.772 9.928
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). DarkBASIC 20.853 26.638
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nexus7(Tegra3)1.3GHz JavaScript. 36.48 46.601
iPhone4S(Cortex-A9)800MHz JavaScript. 36.521 46.654
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). AGK 65.423 83.575
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). Basic4GL. 285.703 364.975
Nexus7(Tegra3)1.3GHz AGK. 320.187 409.01
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
PC(CeleronD2.66GHz). 99BASIC. 1532.0 1957.0
-----------------------------------------------------------------
575 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/12(金) 05:39:47.85
>>573 あああの可哀想な人か・・・ちゃんとコテつけたんだな。エライエライ。でもコテつけるときは今まで何書いてた奴か分かるようにコテ宣言しようね
577 :
デフォルトの名無しさん:2013/04/12(金) 06:45:21.47
[誤算] Nexus7馬鹿売れでSurface脂肪、思わぬ戦術ミス
http://kohada.2ch.net/test/read.cgi/pcnews/1351751485/l50 コンソール研究所は1日、台湾ASUSの販売している新型タブレット ” Nexus7 ” が馬鹿売れ状態で
あるコトを把握し、事実上のMS日本市場の戦略失敗を認めた。
Nexus7はタブレットPCでは珍しい4コアCPU(1.3GHz)を搭載し、7インチで1280×800ピクセルの高
画質を実現、従来の性能の貧弱なノートPCより 「 快適な操作感 」 が体験できると言う。
これに伴いWi-Fiポイント機器(無線LAN親機)が飛ぶように売れ、自宅有線LAN回線の有効活用策
も図られてパケット料金の節約にも貢献していると言う。
Nexus7はWi-Fi接続の知識があれば、これほど 『 お買い得感のある製品はない 』 と言う。
価格は16GBモデルが2万円、32GBモデルが2万5千円。
「 Androidはダメだ 」 と思うおまえら、お試し価格で買えるから騙されたと思って買うといい。
578 :
デフォルトの名無しさん:2013/04/12(金) 06:47:48.40
[速報] プログラミング言語No.1は ” DarkBASIC ”
コンソール研究所は8日、英国The Game Creatorsの販売しているミドルウェア、” DarkBASIC Professional ”
が世界で最も使われているゲーム開発環境であると発表した。
DarkBASIC ProfessionalはDirectX9.0以上の要件を満たすWindowsPCで動作し、簡素な記述で分かりやすいと
言う特徴を備えている。
ゲーム開発の歴史はスペースインベーダー(1978)からグラディウス(1985)までがアセンブラ、それ以降はC言
語で開発され、おおむね2003年までC言語主流は続いてきたが、PC性能の飛躍により高級言語の開発でも
充分なスピードを出せると判断され、この体制は崩壊した。
海外では生産効率の観点から 「 BASIC復権 」 が提唱され、VisualBASICの文法を取り入れた独自規格の
BASICによる開発が台頭しつつある。
また、マイクロソフト米国本社はVisualBASICの普及を目指してライトバージョンのSmallBASICを無償で配布。
これらはいずれもWindowsAPIやDirectXの記述を別個に行う必要があり、普及する確率は低い。
DarkBASIC Professionalはそういった面倒な記述を排除してより簡単な記述で開発できると言うメリットがある。
日本では 『 99BASIC 』 と言う旧式のマイクロソフトBASICに準拠した開発環境があるが、DirectXをサポートし
ていないなど、若干の問題を抱えているが、往年の日曜プログラマーには10年以上好評である。
” BASIC開発競争 ” に乗り遅れないためには、どのBASICを選ぶかで岐路が分かれる。
賢明な判断が要求される。
DarkBASIC Professional
http://www.thegamecreators.com/?m=view_product&id=2000 99BASIC
http://www.sagami.ne.jp/tadaka/99Basic/ Small Basic
http://smallbasic.com/
579 :
デフォルトの名無しさん:2013/04/12(金) 08:11:46.44
どうせならLispでいいきがするんだが
どーせ、アマチュアが作るのってモンスターボールでオッパイ集めるゲームだろ
そんなゲーム、知ってるのも、やってるのもお前ぐらいだろw
582 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/12(金) 23:44:01.33
【社会】 「ら抜き言葉を使う人は、知的レベル低い。採用しない」「ら抜きの方が、可能か受け身かすぐ判るのに」…面接の現場で★4
http://uni.2ch.net/test/read.cgi/newsplus/1365717932/l50 ・「R25」の調べによると、面接経験豊富な30〜40代の上司世代がイラつく「若者言葉」で最も多かったのは「見れた」
「食べれた」などの「ら抜き言葉」だったそうだ。「ものすごく幼稚な印象を受ける」「いちいち気になって、話の内容が
頭に入ってこない」など、かなり厳しい意見も出ているが、果たしてそんなにいけないことなのか。
社会人2年目の女性Aさんは、あるメーカーの面接で「ら抜き言葉」を注意されたことを、いまだに強く根に持っている。
学生時代にトヨタの本を読み、海外旅行で「3現主義」の重要性を感じたという話をしたときのことだ。
彼女は仕事への意気込みについて、「もし入社できたら、海外の生産現場に行かせていただきたい。そうしたら現場を回って、
見れるものは何でも見てきたいと思います!」と伝えたそうだ。すると面接担当者から、こう冷ややかに返されたという。
「君さ、それを言うなら“見られるものは”だよね。海外の前に日本語勉強したら?」
(以下省略)
http://news.livedoor.com/article/detail/7581420/ 一方で、「ら抜き言葉」は人材をフィルタリングする上で、それなりに役に立つという考えを持つ人もいる。あるITベンチャー
企業の人事担当者は、言葉遣いから「学生時代にどの程度の知的レベルの集団にいたか」を推測する材料にしているという。
「他人と会話をしていれば、普通は『ら抜き言葉』に違和感を抱いて修正できるはず。それができていないということは、
その程度のレベルの集団に属していたという判断をしてしまいます。コミュニケーション能力にも関わりますし、ハイレベルな
プログラマーを除けば採用に当たって考慮に入れざるを得ません」
学歴だけでなく、日常的に知的水準の高い集団に属している人は意欲も高く、自分の頭でものごとを考える習慣が
あるという。言葉遣いひとつでそこまで見透かされることを考えると、やはり油断はできないのかもしれない。(以上)
- - - - - - - - - - -
見れたぁー? 作れたぁー? アハアハ〜♪”
「ら抜き」が知的レベルが低いという
客観的なデータが有るかどうかで
面接官の知的レベルを判断します。
584 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/12(金) 23:54:43.27
ゴミアラフォーはこういうところで切れるんだなw
プッツン世代か…
こういうマヌケな記事書く記者を集めたWebアプリとかないかな?
一昔前の2chなら、あっても良いはずなんだけど
586 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 00:06:20.77
C言語と共にゴミアラフォーを葬る喜び…w”
人事は別として、シニアエンジニアは大切にしなきゃならない存在。
588 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 00:14:24.48
>>587 早く切れ♪”
つーか、プログラム書けないプログラマーはいらないぞw
ITベンチャーを起こそうとか、ITベンチャーの人事だとか、そもそも知的水準が知れていて、
まともな神経じゃ企業しようだとか、そんな場所で働こうとか思わない。
>>543 >どうせフルアセンブラで書いてて後継者がいなくなったってところが正解だろうなw
どんな妄想を抱いたらフルアセンブラなんて言葉でてきたの?
591 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 00:18:34.87
>>589 つーか、職業プログラマーは偏差値低いヤツが多いよ。
いわゆるコンピューターサイエンスとは別物だから勘違いしないようになw
592 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 00:19:13.87
>>591 そもそも職人に偏差値ほど役に立たないものでしょ
薩摩切子の職人になるのに偏差値70が必要だったら、もっと沢山の後継者を獲得できたと思うけど
というか、ゲームプログラマなんて頭良くないと不可能
594 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 00:32:25.76
>>593 特にゲームプログラマーは頭悪いよw
ちょっと考えてみるといい。
仕事はどうした?糞ニートw
ゲームプログラマって、大体、高校のうちに独学でアフィン変換や探索木あたりを学んでるイメージ
597 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 00:36:32.08
ほらねw
598 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 00:38:11.18
では、もうちょっと考えてみよう。
「 ら抜き 」 の ” 何がいけない ” のかと言う部分を考えれば相手の思うツボ。
まず相手の言葉を遮断して、自分の有利な展開に持ち込むのが保守カッペの常套手段である。
基本的に彼らはアーミッシュ(高度な都市文明を拒否する者)で、そういう輩は都市生活には向いていない。
都会で働いた連中が30半ばで田舎に帰れると思うなよw
601 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 00:42:33.99
>>600 いや、いらないから返すよw
あんまり融通利かないと都市生活には向かないよ。
都会なんて言ってるけど、海外からみて東京はかなり先進的でキチガイの塊だから
603 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 00:47:18.18
>>602 京都みたいな蒸し風呂が大好きなおまえは頭がアレだよw
何だかよく分からないけど、ぶぶ漬けでも食べて行け
こいつ全然プログラムの話できないよな
やっぱりバカなんだな
607 :
デフォルトの名無しさん:2013/04/13(土) 03:16:03.36
京都って湯豆腐4000円するらしいな…
ぶぶ漬けって都市伝説らしいな。
>>608 ぶぶ漬けは一昔前なんじゃなかったっけ?
有名になっちゃうと意味がないんだろうな
610 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 08:38:35.25
はい逃げたw
誰と話してんだ?
612 :
デフォルトの名無しさん:2013/04/13(土) 12:04:37.05
【IT】 「C言語やJavaを使う人は採用しない」「AGKやDarkBASICの方が生産効率が高い」就職活動 page 1/3
コンソール研究所は13日、C言語やJavaを使う学生を採用しない方針を固めた。
これは昨今のソフトウェア開発現場において社内研修期間を嫌う企業や官公庁の意向を取り入れたもので、
「 卒業=即戦力 」 が求められる新時代への突入を明確にしたものである。
たいていの面接官は ” 学生時代にどんな部活に所属していましたか? ” などと聞くが、それは時代遅れと
なったようだ。
また、C言語やJavaのスキルを問うものに対しても、「 実務経験がなければ意味がない 」 と言う現場の声も
反映した。
コンソール研究所の開発現場から一人の声を拾ってみた。
「 学生さんは何か勘違いをされていらっしゃる方が多く、入社=会社の歯車として安定的なルーチンワーク
だけですごされる方が多い。
たしかに平常心を保ち、自己管理のできる人材は必要ですが、会社の歯車と言う意識は捨てていただき
たい。これは過去の悪い歴史の1つで、アルコール中毒と並びます。
アフター5に夜の盛り場に繰り出す様子を見ていると、まるで業務時間は休憩をとっているようにしか思え
ない。アルコール中毒がもたらした企業病とも言えます。 」
このように、開発現場は ” いつもの慣習だけではアルコール中毒に至ると言う経験 ” を声に出しています。
一方で、このような人材が欲しいと言う開発現場の声も…
『 面接の時にはやる気があるように見えて、” どんな経験があるのか? ” と聞きましたら、学生さんは
「 99BASICで遊んでて適当にゲームを作ってみた 」 と答えてきました。
613 :
デフォルトの名無しさん:2013/04/13(土) 12:05:08.52
【IT】 「C言語やJavaを使う人は採用しない」「AGKやDarkBASICの方が生産効率が高い」就職活動 page 2/3
さて、99BASICと言うのがどんなものか私どもには存じないもので、学生さんに伺ってみました。
” 最近の若い方は新しいものを取り入れていらっしゃるので…私どもの方でも分かりかねますので、
99BASICで作ったゲームをお見せいただけませんか? ”
こう聞きますと学生さんは喜んでフラッシュメモリを差し出してきて、「 どうぞ、これを見てください、ソースリ
スト付きです 」 と私どもに差し出していただきました。
海外ではBASICが主流の開発言語と言われていますが…まさにこれを実感する瞬間でしたね。
私は喜んで学生さんに採用の旨をメールでお伝えしました。 』
コンソール研究所は口先よりも実力を重視するので…開発現場の人たちも、プログラミング環境よりも実力
を重視する風潮が高まっているとのコト。
特に、作ったソフトをソースリスト付きで説明できる人材となれば、これは即採用と言うから見逃せない。
ではどのぐらいのプログラムを作れれば採用の基準になるのか、開発現場の方に聞いてみた。
「 プログラマーとして卒業=即戦力と言われる基準には、BASICで5,000行、アセンブラで1万ステップと言う
伝統があります。
これぐらいの規模のプログラムを1人で作れるようになるのが理想であり、即採用の基準としています。
この規模のプログラムを作れる人であれば、その間のノウハウもあると言うコトで、採用しやすいと思って
います。 」
なるほど、開発現場は ” BASICで5,000行 ” と言う数字を出してきた。
日頃からプログラミングを怠って 『 先輩のコピー 』 をしている学生さんには向いていないと言うコトだ。
614 :
デフォルトの名無しさん:2013/04/13(土) 12:05:39.22
【IT】 「C言語やJavaを使う人は採用しない」「AGKやDarkBASICの方が生産効率が高い」就職活動 page 3/E
次にプログラミング言語のトレンドを首席研究員に聞いてみた。
『 ソフトウェア業界では伝統的に開発環境のロイヤリティーのカットが重視されていますが、これは日本に限
らず海外でも同じです。
表向きにはWindowsが99%のシェアを獲得していても内部ではLinuxで開発しているコトは当たり前で、マイ
クロソフトが提供しているVisual Studioシリーズはほとんど使われていません。
なぜなら、ロイヤリティー(使用料金)を払う必要があるからです。
また、C言語やJavaはベースライブラリの透明性の確保が非常に難しく、予期しないバグ(不具合)が発生
しやすい要因として挙げられます。
これを避けるために私どもでは主に海外で使われているAGKやDarkBASICを使っています。
AGKやDarkBASICはJavaScriptよりも動作が遅いと言う欠点がありますが、DirectXやOpenGLを通す部分
では変化がないため、体感的な速度に差異はありません。
過去には99BASICも使っていましたが、内部動作にバグが多く、開発現場から刷新を求める声が挙がった
きたため、99BASICは廃止しています。
近年ではWeb上開発の一環としてJavaScriptを推す声も上がっていますが、ソースリストの保守管理に重大
な問題があるため、私どもではJavaScriptでの開発は致しておりません。 』
首席研究員ともなると、一般には知られていないの話をするから面白い。
本当にプログラマーでやっていきたいと言う学生さんにはどう見えただろうか。
夢と希望がいっぱいの未来。
コピペマン参上!まで読んだ
616 :
デフォルトの名無しさん:2013/04/13(土) 13:14:40.31
【IT】 「C言語やJavaを使う人は採用しない」「AGKやDarkBASICの方が生産効率が高い」就職活動
http://kohada.2ch.net/test/read.cgi/pcnews/1365242417/139-141 コンソール研究所は13日、C言語やJavaを使う学生を採用しない方針を固めた。
これは昨今のソフトウェア開発現場において社内研修期間を嫌う企業や官公庁の意向を取り入れたもので、
「 卒業=即戦力 」 が求められる新時代への突入を明確にしたものである。
たいていの面接官は ” 学生時代にどんな部活に所属していましたか? ” などと聞くが、それは時代遅れと
なったようだ。
また、C言語やJavaのスキルを問うものに対しても、「 実務経験がなければ意味がない 」 と言う現場の声も
反映した。
コンソール研究所の開発現場から一人の声を拾ってみた。
(以下ソース参照)
NGにしてんだからちゃんとトリップつけろ。
即戦力のプログラマが欲しい企業=ブラック
プログラムってのは奴隷にやらせる仕事であって、社員がやることじゃないんだよ
奴隷ってのは、googleだとかM$だとかで技術者をやれないか、
自分で取引先をみつけてやりくりできない層のこと
かく言う私も奴隷だけど
単なる分業なのに何を言ってるんだ
単なる分業の一言で済ませられるなら、なんでおまえの会社は栄えてないの?
馬鹿なの死ぬの?
意味が分からん。バカなの?
単なる分業じゃ技術ノウハウが蓄積されないんだよ
ここまで言わないと分からないの?バカだろ、死ねよ
分業だと技術ノウハウが蓄積されないとする理由は何だよ
おまえは他人とコミュニケーションもしないし文書も書かないの?
言われたことしかできないバカなの?
ただドキュメントを書くだけじゃ、単なる分業とかわらなくて技術ノウハウが蓄積されてないって言ってるの。死ねよバカ
なんだコーダの愚痴かよ
IT系のマネジメントしかできない人って、会社が潰れたらどうするんだろう。
別の会社に行くだけじゃないの
マネジメントって会社的にはイラナイから
ピラミッド構造を考えたら、マネジメント層がいかにパイが少ないかぐらい分かるよね?
630 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/13(土) 21:41:13.67
個人が独立すればたいていの問題は片付く。
独裁も消えてなくなる。
>>629 底辺からそう見えるだけで、実際にいらないのは底辺層のPG。
代わりなどいくらもいるしな、世界的に見れば。
632 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/14(日) 00:09:09.23
>>631 じゃあ、PGのコストを削減してSEがPGを兼任すればいいんだね。
頭いいw
633 :
デフォルトの名無しさん:2013/04/14(日) 04:38:40.41
>>631 底辺層のPGの具体的なスキルレベルを詳しく。
はぁ?
635 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/14(日) 08:23:51.19
…任天堂の行き着く先はコスト削減w
コスト削減が行われるとすれば、まずは下請けに圧力をかけて自分の首は絞めないと言う算段になる。
次に下請けでは過剰なサービス残業が行われるようになり、任天堂の下請けを辞退する可能性を示唆。
結局のところは事業縮小と言う最悪のシナリオになるのは分かっている。
問題はここだ。
しかし以前にはこういうコトも書いていた。
636 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/14(日) 08:24:22.49
アマチュア開発者をサポートする計画はない―米国任天堂社長 | インサイド 2011年3月20日(日) 10時42分
http://www.inside-games.jp/article/2011/03/20/48000.html 任天堂オブアメリカのReggie Fils-Aime社長兼COOは、任天堂のアマチュアゲーム開発者に対するスタンスを
述べています。
アップルのApp StoreやグーグルのAndroid Marketはもちろんのこと、ソニーのPlayStation Camp、そしてマイ
クロソフトのXNAなどでは在野のアマチュア開発者が表舞台に立つことを支援し、その力がプラットフォームを
普及させていますが、任天堂は現時点でそのような考えは持っていないようです。
「私は独立系デベロッパーと趣味の開発者を分けて考えたいと思っています。任天堂には独立系デベロッパー
と強固な結びつきがあります」
「この線を引く場所は、私たちがガレージデベロッパーと今日、ビジネスを考えていないということです。私たち
の考えでは、いまビジネスを伸ばすポイントではないということです」
ただし一方で、音楽シーンを引き合いに出し、環境が整備されることを望んでいるような言葉も残しています。
「音楽業界を見れば、本業の合間に情熱を持ってバンドや歌の活動をする才能が沢山います。そしてテレビ番
組などで優れた人材を野から発掘する仕組みもあります。ゲームでもそうしたことが出来れば本当に素晴らし
いことです」
岩田聡社長のGDCの講演とは矛盾するような気もしますが、この分野は以前から任天堂にとって弱い部分です。
どのような取り組みがなされるのか今後も注目されます。
637 :
─☆─ [ X | I.I.T. ] COURANT DE CONSOLE ◆TXFAX7cidQpG :2013/04/14(日) 08:30:15.35
俺が不思議に思うのは、何よりもソースの漏洩を恐れるゲームメーカーが、” JavaScriptを使う ” なんてコトを
平気で口走るところだ。
実際にはできないのだから書かない方が現実的だろうな。
仮にJavaScriptでソースの隠蔽が可能になったら、たぶん世界中のPCユーザーのブラウザからJavaScriptは
『 OFF 』 に設定され、永久に使われなくなるだろう。
始めから矛盾していると言うコトだ。
シロウトのお遊びにコードが流出して誰が困るんだよ
既に企業のプロダクトに追いつけないだろ
いや、たまたまオーストラリに居るんだよ
640 :
デフォルトの名無しさん:2013/04/14(日) 21:36:08.30
だから言語という概念を捨てろと
641 :
デフォルトの名無しさん:2013/04/18(木) 07:12:39.00
はい
はいじゃないが
十六文キック
いくらですか?
十六文ですか?
646 :
デフォルトの名無しさん:2013/06/13(木) 17:25:48.00
その後まったく話を聞かないんだがどうなったんだよ、これ(´・ω・`)
つかHTML5にコミットするの、完全に死亡フラグになってないかね。あの国の法則レベルで。
独力で魅力的な開発環境を用意できないとか、
専用のアプリを作ってもらえないとか、
リソース潤沢な高度なゲームを作れないとか、
ガラケーと同じやり方で仕事続けたいとか、
C++やObjective-Cでガチ開発する技術力がないとか、
HTML5の人気にコバンザメする以外に売り出す方法がないとか、
そうした負け組連中がしがみつくプラットフォーム。
自分らは先進的かつ正しいことをしている、イノベーション(笑)を起こしているつもりになっているけど
実のところ低レベルなところでグルグル回ってるだけ。
一般ユーザーはそんな事情をまったく斟酌してくれないから(そもそもHTML5の名すら知らない)
単にしょぼいアプリを作ってるとしか思われず死屍累々。
>>23 > ビックリするかもしれないけどいまやJavaScriptのコードは平均してJAVA並の速度なんだよね
すげー!すげービックリしたわ。何がJava並みだって?
Box2d Revisited
http://j15r.com/blog/2013/04/25/Box2d_Revisited http://j15r.com/blog/2013/04/25/graph0.png 何がJava並みだって?
・・・・・何がJava並みだって?ああん?ええ?(´・ω・`)
腐ってもランタイムコンパイラ実装してるJavaにJavaScriptで
同等の速度なんか出っこない。
>JAVA並の速度
これは遅いと言いたいのではないか
>>646 その画像でJava1.7よりCに近い値を出してるasm.jsって一応JavaScriptじゃね?
普通に言うJavaScriptとは少し違うが、JavaScript環境でも動作可能かつ、
アクセラレーションが可能な実行環境ではかなりの高速実行が可能…なのがウリだったよな確か。
手でasm.js仕様のJavaScript書いての比較ならJavaScriptと呼んでも良いだろうし、
EmscriptenとかでC/C++からasm.js仕様のJavaScript生成したものも一応JavaScriptと呼べないこともない。
「いまやJavaScriptのコードは平均してJAVA並」ってのはただの妄言だが、
「コードと実行環境が適切であればJavaScriptの実行環境でJava並の性能を叩き出せる」
とは言っても良いんじゃないか、そのグラフ的には
>>647 JITはJavaScriptでも実装されてるし、中間コードの事前生成と型の決定機能に着目しないと。
中間コード事前生成はローディング時間が変わる程度だからそれ用のベンチでないと性能は比較できない上に
中間コードから実行可能状態に入るまでのコスト考えると劇的な利点には成り得ないと思う。
型の決定は致命的にJavaScriptが不利だが、実行時型決定をある程度諦めてしまい、
別言語からのトランスレートなり手作業なりで型情報を補って速度を稼ぐのが最近のJSトレンド。
これらの拡張を全面的に利用した時JavaScriptに速度面で圧倒的な構造的欠陥があるかというと…ね。
(JavaScriptの利便性も損なわれることはこの際無視で)
651 :
デフォルトの名無しさん:2013/06/14(金) 15:03:40.20
任天堂の気持ちは分かる
×C++は捨てる
○ニコニコ動画みたいにアマチュアを囲い込みたい
emscriptenによってjavascript書かずにウェブアプリかけるようになったのはうれしい
でも変換するのならJavaベースのほうがよかったな。
なんか昔グーグルが作ってた気もするが。
>>654 emscriptenはasm.js仕様を活用してGCからも脱却しようって所なのにJavaはどーかと。
でもま、LLVMを経由しての変換だからJavaをLLVMコードに変換してやれば流用できるんじゃね?
馬鹿
はっきり言えるのは道具が変わったところで頭もスイッチされるわけではないってこと
659 :
デフォルトの名無しさん:2013/07/15(月) NY:AN:NY.AN
ジャバスクリプトがじわじわくる
有償だったのが無償になったみたいな紛らわしい書き方しやがって
なぜ全角なんだろう
なぜ縦書じゃないんだろう
カタカナで書くとここまで面白くなる言葉がかつてあっただろうか
JAVAスクリプトとか書くよりはマシ
そうか?
Javaもスクリプトも普通に流通している言葉だが、ジャバは無いだろう?
JavaScriptで一つの固有名なんだから一部分だけカナ読みするとかありえんだろ
まだ全部をカナ読みしたジャバスクリプトのほうがマシだよ
Java と JavaScript の区別が付いてないアホなんだろ
シープラスプラス
スレタイのせいか素人のお客さんが来てるんだろ
ジャワスクリプトかな
ジャバティーストレート
673 :
デフォルトの名無しさん:2013/07/28(日) NY:AN:NY.AN
http://www.gamecity.ne.jp/doa5/ultimate/ DOA5U公式サイト ウイルス 高額請求 ワンクリ
板垣伴信 SCE 解雇 痴漢 レイプ 知的障害者 セクハラ パワハラ 訴訟
板垣伴信 ヴァルハラ 詐欺 暴力団 在日 右翼団体 テクモ ナムコ恐喝
松井宏明 身体障害者 虐待 無能 不潔 イジメ 武闘派 ポルノ映画監督 ナムコ恐喝
松井宏明 バブルス チンパンジー チビ 前科 横領 少林寺拳法 創価学会 コーエー
ゲーム業界のプログラマは研究者肌の奴が多いから、
コードを書くなと言われるとガッカリする奴は多いだろうね。
というかマネージメント業務に回されてコードがあまり書けなくなったという愚痴を聞くことが最近多くなったなw
677 :
デフォルトの名無しさん:2013/12/06(金) 13:48:38.55
C,C++を使ってた人達が結構流出してそうな感じがするな
任天堂の開発力が落ちてるんじゃない?
>>676 システムとか帳票モドキより、ずっと高度なものつくってるでしょ
679 :
デフォルトの名無しさん:2013/12/31(火) 05:10:47.59
enchant.jsとUEI界隈意図的に無視してると言ってたゲームプログラマがいたが
理由がよく解った
しょうもない論争すんなよ。
682 :
デフォルトの名無しさん:2014/01/03(金) 01:50:39.46
ベンチマークテストをしてみよう。
以下のリンクにHTMLファイルが入っているのでダウンロード、クリック。
http://www.filedropper.com/test_13 プログラム内容(test.html)
<script>
var t=Date.now();
var j=0;
for(j=0; j<1000000000; j++){}
document.write( (Date.now()-t)/1000.0 );
</script>
参考(Core i7-4770K 3.5GHz) JavaScript - 1.506秒
ユーザーは、実行した構成とfpsを書き込んでくれるとOK。
PS3、XB360の方もよろしく。
もうちょっとマシなベンチマーク書けなかったのか?
不満があるのなら自分で書けばいいと思うよ。
既存のベンチマーク使えばいい。
しっかしコレ何をベンチマークするんだ?
最適化の有無とか?
686 :
デフォルトの名無しさん:2014/01/04(土) 21:44:50.29
>しっかしコレ何をベンチマークするんだ?
ゲーム機
だめだこりゃ。
何分も待てねえよ
689 :
デフォルトの名無しさん:2014/01/23(木) 10:14:37.16
おいおい、空のforループ回してベンチマークになるのかよ、JavaScriptとかいうゴミ言語は……
手元でも動かしてみたが本当に1.5秒かかってやがるし、マジで計算してるがな。信じられん。
for(j=0; j<1000000000; j++){}
C++という最強言語だと、こんなゴミループはコンパイラに
「何もしてねーな」「無駄無駄無駄無駄無駄ァ!」と判定されて完全に消滅するんだぜ。
このサイトですぐ試せる。
http://gcc.godbolt.org/ void test() {
int j = 0;
for (j = 0; j < 1000000000; j++) {}
}
と入れてみろ
出力アセンブリコードワロタwwwwwwwwwwwwwwwwwwwww
リターンしかしてねえwwwwwwwwwwwwwwwwwww
test(): # @test()
ret
690 :
デフォルトの名無しさん:2014/01/23(木) 10:15:34.37
これだけだとなんだから、jを関数から返してみようか。
int test() {
int j = 0;
for (j = 0; j < 1000000000; j++){}
return j;
}
出力アセンブリコードワロタwwwwwwwwwww
レジスタにいきなり1000000000を代入して即リターンwwwwwwww
test(): # @test()
movl $1000000000, %eax # imm = 0x3B9ACA00
ret
重要なのは、これが最終的にCPUが実行するコードだということだ。
こんな鬼最適化があらゆる計算に効いてくるんだぜ。
これがC++超はええ、ゲーム開発ならやっぱりC++だよなと言われる所以だ。
スクリプト言語使って喜んでる連中は知らない世界だよ。
みんなもひとつ最強言語C++どうだい?(´・ω・`)
釣り針でかすぎといいたいところだが uy なら本気でこれくらいのことを言いかねない
694 :
デフォルトの名無しさん:2014/01/24(金) 04:14:17.31
>>693 単にマルチスレッド有効にしてるだけじゃん(バカかw
現状まだまだだけどJITの可能性を甘く見るのも良くないと思うな
極端な場合、関数型言語のメモ化みたいなことも不可能ではない
実行時最適化はコンパイル時最適化を越える可能性を持っている
JavaScriptの場合、型の推測や副作用の判別やメモ化対象の選別とかの技術が発展すれば或いは…
アプリケーション側に実行時自己最適化機能を付与すればコンパイラ言語でも再現は出来るけどね
C/C++で実行時最適化の発展に期待できそうなのはC++/CLR(.NET)とLLVM/clangって限られてるから、
C/C++より先に何れかのJavaScriptエンジンがそういう圧倒的な最適化機能を獲得する可能性は十分ある
696 :
デフォルトの名無しさん:2014/01/24(金) 05:21:37.45
[参考] ベンチマーク - FOR-NEXT10億回ループ - DarkBASIC
J AS INTEGER
T=TIMER()
FOR J=0 TO 1000000000:NEXT J
PRINT (TIMER()-T)/1000.0:WAIT KEY
参考 旧Ver CeleronD2.66GHz -------- 20.853秒
参考 旧Ver Core i7-4770K 3.5GHz ---- 5.501秒
参考 77RC7 Core i7-4770K 3.5GHz --- 1.798秒 (旧Verの約3.06倍)
参考 Core i7-4770K 3.5GHz Windows8 64bit版 JavaScript - 1.506秒
<script>
var t=Date.now();
var j=0;
for(j=0; j<1000000000; j++){}
document.write( (Date.now()-t)/1000.0 );
</script>
JavaScriptに並んだと言うコトは…もはやVC++もJavaScriptも不要w
ソース隠蔽可能なDarkBASIC 77RC7の圧勝。
697 :
デフォルトの名無しさん:2014/01/24(金) 05:36:50.50
77RC7の脅威w
JavaScript、VC++不要の新秩序w
マジ勝ちw
任天堂、巨額赤字どうするよ
今は投資の次期だな。
今後はゲームを捨て健康でいく
株式会社コト買収で医療系ゲーミフィケーション世界制覇へとか
JavaScriptの次は健康か
マジで別次元だった
703 :
デフォルトの名無しさん:2014/02/02(日) 11:33:24.49
チャイニーズ光金ディナーコース
チャイニーズ光金ディナーコース
チャイニーズ光金ディナーコース
チャイニーズ光金ディナーコース
Wii U ときたら次は 税だろ
つうか既にWiiFitでボロ儲けしてるし何で今更って気がするが
高齢者向けを狙ってるんだろうね
JavaじゃなくてJavaScriptなのか…
WiiUのブラウザはゲームパッドの機能使えるんだよ。
Firefoxもゲームパッド使えるよ
どうやって?
firefox gamepad api でググれば幾らでも出てくるよ
キーボードのキーをゲームパッドに割り当てればいいじゃん
アナログスティックとかスライダとかどーすんの?
FirefoxとChromeでゲームパッド使えるのかー
HTML5ってすげーな
>>712 アナログスティックが動くと普通にイベントが飛んできて
その中でアナログ値が取得できる(できた)
股間の喜びの棒を動かすことにより、マシンをコントロール出来るデバイスを開発した。
間違えた…
イベントではなくゲームパッドオブジェクトを取得して毎フレームチェックする感じだった
(イベントなのは昔のやり方だった)
USBオナカップは出願済みだろ
>>712は
>>711に対するレスじゃないのか
キーをパッドに割り当てるのはいいけどアナログ入力はどーすんだっていう
719 :
712:2014/02/05(水) 21:16:48.32
>>718 そだよ。数レス前に対する1行レスはアンカー打たない奴が多いからそれに習ったんだが…
アンカー省略はその間にレスが流れて誤読されようともそれを甘んじて受け入れるという漢の心意気だ
つまらぬいいわけなど無用
専門、Fラン大出が多いんだから当然。
アンカーなきゃそのレスしか読まなくても不思議ではない
一々騒ぐな
ムキになるなよw
いやムキになれ
>>720 711から712までの間にどんなレスがあって誤読が起きるんだい?
714は「その間にレスが流れて誤読」した/されたんじゃなくて、ただ711を見落としただけ。
それに712は718が投稿されるまで714の誤読を甘んじてスルーしているよ?
714が可哀想だしそう突っ込むなよ・・・
ちんこを剥き剥きしたら、ちんこがムキムキしてきた。
728 :
デフォルトの名無しさん:2014/02/22(土) 11:36:06.09
>637
Flashはソース隠蔽できるJavaScriptだけど、だれもOFFにしてないよ。
隠蔽の要望が大きければ、そのうちJavaScriptのコンパイル規格とか作ってくれるかもね。
729 :
デフォルトの名無しさん:2014/02/22(土) 20:48:32.47
はいはい。C++を捨てください。
そして潰れてくださいw
>>715 penis.addEventListener('cumshot',function(){setSagesTime()})
>>728 中間言語にコンパイルされるだけでFlashはソースを隠蔽できていない
優秀なデコンパイラを通せばMinifyしたソースよりは見やすいコードに戻る
隠蔽(難読化)用途ではJavaScript用の難読化ツールの方が優秀だと思う
ECMAScriptつながりでJavaScript用の難読化ツールはActionScriptにも使えるし
JavaScriptの優秀なオブファスケータって何がある?
ゴミみたいなオブファスケータ(この呼び方を知らんかったorz)でも、ただのコンパイル→デコンパイルよりは優秀だろ。
ご予算は?
735 :
デフォルトの名無しさん:2014/03/03(月) 00:42:58.94
今後は任天堂は止めてiphoneやandoroidのゲーム開発で行く。
今後は任天堂を辞めて、他社に移るか、自分で会社を興す。
の間違いでしょ?
736 :
デフォルトの名無しさん:2014/03/07(金) 02:18:48.93
jsのいいところはとりあえず動いてる風に振る舞うところ
悪いところはコンソールが意味不明
> 悪いところはコンソールが意味不明
↑
意味不明w
とりあえず動いてるように見えるのはDOMのイベントドリブン性とWebページがエラーで落ちないお陰でJSとは関係ない
Nodeだと逆に1ミスでシステム全体が落ちてしまうことが問題視されてるしね
あとバグの元云々は関係ない、データの問題で例外が出た時落ちるか落ちないか、それだけ
コンパイル時エラーが出にくかったり、型安全の問題とこれとは別
言われてみればロード時にひとつやふたつアラートが出ても気にしないな
反射でOK連打してるわ
いい加減マ板でやれ
JavaScriptをJSとか書くな
エロいだろうが
>>739 node.js, error handlingでググると記事が出てくる
誰かが便利なライブラリやフレームワーク、有意義な記事を書いてくれるから
もうnode.jsでいいよ
JSをそういう単語と認識してると公言する思考もヤバいけど、
JSをエロいと認識してる事を公言する思考もヤバイくってもう。
頭の中でひっそり考えとけよそういうのは。
しかも引数の(i)←これもやばすぎ
747 :
デフォルトの名無しさん:2014/06/03(火) 11:59:44.05 ID:2kUHb65Z
デバッグで自殺者が出る未来しか見えない
スマホゲームみたいなのをお手軽に作るだけだからしなない
今更C++からJavaScriptには戻れない
戻るってJavaScriptやってたのかよw
>>3 マクロがないlispなんてlispじゃない
下回りはC/C++でユーザに近い層をJavaScriptってことだろう。
独自OS作り続ける体力あるなら、インタプリタなんてお手の物でしょう。
>>753 それ幻想っす
速度を稼いだら評価され売り上げにつながる、なんて職場の人達は今この瞬間だってギリギリまでやってるよ
今の主流は、緩い課金ゲーを如何により速くでっち上げ続けるか、になってしまっているわけだ
といってもすでにこの分野でもHTML5離れが始まってるけど
ここのスレ立てが去年の3月とあるし仕方もないか
もう諦観ばかりだよ
来年中に、CocosかUnityの両方またはどっちかが下火になってても全く驚かんわ
はよ一周してコンソール復権せんもんかね
代替が出て下火になったCocosやUnityが今度はコンソール用になったりしてな
うにtyヴぃたで動いてるやん
動くだけじゃなく、主流ってことね
>>753 半分は本当です。
ライブラリの充実度はC/C++は非常に劣っているのでどうしてもスクリプトに軍配が上がります。
しかし、C++も最近は大分追い上げをしてきているのでそのうちトントンになるでしょう。
でも、まだ未来の話です。
C/C++のライブラリが劣ってるって
単に知識が足りないだけなんじゃねぇ?
触るな触るな
多分間違って迷い込んだかなんかした人の書き込みなんだろ(棒読
1年半経過しましたけど何か変わりましたかね
先の見えない赤字もJavascriptで消し去って欲しいもんです
JavaScriptでの開発環境を無償で公開すれば赤字解消出来るんじゃないか
無理じゃろ
プラットフォームとしてのクオリティ維持が大事(キリッ
ってスタンスじゃなかったっけ
ニンテンドー64時代にそれで痛い目にあっただろ
c++のソース見ながら勉強してるんだが糞すぎてjavaが神に思える
まぁスーファミレベルのゲームばっかりだし、なんとかなるんじゃね?
やらねーけど。
痛い目にあっても死にはしないことを学んだし
任天堂くらいゲームの売り上げに依存してると
いまさら方針変える度胸なんかねーだろう
余裕は必要だよね
余裕のない奴って周りが見えてないしね
768 :
デフォルトの名無しさん:2015/02/14(土) 15:26:26.13 ID:HVm4PRDm
AltJSで書けば良い
山ほどJavaScriptに変換する言語があるのは皆JavaScriptでは書きたくない、JavaScriptは糞言語であるという事を示している
スマホだとほとんどブラウザって使われてないらしいね。
もう一般人はPC必要ないらしいし、Javascriptは衰退していくんじゃね
770 :
デフォルトの名無しさん:2015/02/14(土) 16:49:00.69 ID:POEdya8y
771 :
デフォルトの名無しさん:2015/02/14(土) 17:25:00.66 ID:HVm4PRDm
はい、論破
http://appbu.jp/mobile-app-vs-web-usage スマホなんて低性能のデバイスでブラウザなんか遅すぎて見てられないでしょ。
電池の消耗も激しすぎる。
だいたいね、スマホなんてのは仕事の合間の休憩時間とかトイレの個室内とか
そういうスキマ時間にイジるもんなんだよ。
だから速度が何よりも大事なんだって。
これからの時代はWebは衰退する。
なにか知りたい情報があればWebを検索、ではなく
アプリストアからアプリを検索する世界になるだろう。
その世界ではGoogleなんぞに支配されてない。
773 :
デフォルトの名無しさん:2015/02/15(日) 10:28:53.54 ID:uL6XdEu6
>>772 Androidは基本Javaアプリじゃん…まさか、あいぽん信者?
ゲームの話なんだから見るべきはそこじゃなくて「Gaming 32%」の所だろ
どうしてもアプリの形が良いならアプリ化すれば良いし
ブラウザゲームかどうかがそんなにユーザーに関係するか?
HTML5でハードの性能を100%活かすのは難しいけど、任天堂みたいなメーカーはそんなゲームばかり作ってるわけでもなし
ChromeのJavaScriptエンジンは結構早いし
そこそこの物は出来るだろ。
774 :
!oekaki:2015/02/15(日) 11:12:07.50 ID:tGlKzMjf
HTML5はすべてがWebになるという時代遅れの幻想に基づくものであり遅すぎたのだ
スマフォがアプリ棄ててwebサービスに注力してれば本当にスマートになったのに現実は…
ごちゃごちゃじゃねーかよwwwww どこがスマートなんだよwwwww ってなもんで。
JavaScriptばかり叩かれるけど、ぶっちゃけHTMLもGUI作りとして見ると
相当なクソだと思うんだよ
そりゃそうだろ。もともとHTMLはGUIじゃなくて
文書を作るためのものなんだから。
そしてGUIはCSSで作るものだよ。
778 :
デフォルトの名無しさん:2015/02/15(日) 15:58:35.79 ID:uL6XdEu6
ゲームだとCSSなんて使わないだろ?
全てCanvasかWebGL
だがNintendo Web FrameworkはWebGLは無しでCanvasしか使えないらしい
779 :
デフォルトの名無しさん:2015/02/15(日) 16:04:00.08 ID:uL6XdEu6
DSはともかく
WiiUはRADEONなんだから対応できそうな物だが
何故か対応しない任天堂
>>778 ブラウザゲームは、ドリランドみたいなポチポチゲーか、Flashゲームが大勢。前者なら当然 CSS つかう。
Canvas や WebGL をメインで作るゲームはかなりシェアが低いだろう。ポチポチゲーの一部の演出だけ Canvas というのは結構あるが。
WebGL非対応のブラウザもあるしな
782 :
デフォルトの名無しさん:2015/02/15(日) 23:00:38.61 ID:Ks8V5w/s
JavascriptはWebだけじゃない
UnityでもBoo使える、C#使うから要らないかけど
BooはPython系だぞ、JS系なのはUnityScript