JavaScriptは消滅すべきだったよな (771レス)
1-

453: 2012/11/15(木)20:20 AAS
これ答えてあげてください
uyさん
外部リンク:detail.chiebukuro.yahoo.co.jp
454: 2012/11/17(土)22:02 AAS
>>451
あれ?その2つ同じじゃね?
455
(1): 2012/12/22(土)09:04 AAS
>>437
スクリプト戦国時代なんて、4,5年前に始まって、昨年ぐらいには終わった
456: 2012/12/22(土)10:51 AAS
javascriptは戦争での唯一の生き残りにこそなれなかったが
「ブラウザにとってのアセンブラ」という新たな地位を確立した
他国はjavascriptへコンパイルされる道を選び、
そして彼らの圧力のため、javascript自体も常に変革を迫られる存在となった
457
(1): 2012/12/22(土)18:44 AAS
>>455
サーバサイドスクリプトじゃなくて?
LAMPとか確かに流行ってたが。
クライアントサイドPythonやRubyってあったか?

> 「ブラウザにとってのアセンブラ」
これ完全にJSの勝ちじゃん。
x86みたいに、今後30年以上JS意識しなきゃならんのか。
458: 2013/01/06(日)10:34 AAS
皆が、いつまでもperl使ってるときに、ajaxやrailsブームが来た
で、みんながpythonやrubyなんかの他言語を使い出した。
ここまでは技術的に当然の流れ。
それに便乗してきた、どうにもならない関数型がhaskell,ocaml。
多少なりともjvm上で動くことで実用性があったのがscala,clojure
最初から居て最後まで残ったのがjavascript。
ダグラス・アダムスが万物に対する究極の答えに42を選んだ具合に、
省1
459: 2013/01/06(日)17:39 AAS
俺の書いた駄レスをコピペしたアホだれだ
460: 2013/01/07(月)11:18 AAS
>>457
JSが敵不在のまま勝利って感じ。
今、一番稼働している言語はJSじゃない?
世界中のPC、携帯端末で動いているんだから。
461
(1): 2013/01/07(月)14:34 AAS
いや、どう考えてもCだろう

と思ったが、
CPU時間の累計で考えると確かにJSかもな…
462: 2013/01/08(火)01:31 AAS
>>461
Cで書かれたスクリプト言語のランタイム実行中は
どう計算するんだ?
463
(1): 2013/01/08(火)09:51 AAS
まあ、たいていのスクリプト言語の処理系は、Cで書かれてるだろうから…。
JS処理系はJSにカウントでいいでしょ。Javaで書かれたJS処理系とかもあるし。
464
(1): 2013/01/08(火)22:04 AAS
>>463
無知をさらけ出した
465: 2013/01/09(水)18:22 AAS
>>464
プログラミング言語の実装の大半がC(or C++)言語で作られているは事実だろうし
この話の本質はJavaScriptのランタイムで動いているものはJavaScriptで
カウントすべしだろうから、それはそれでいいんじゃないかな。
少なくとも私はそっちの意見で賛成。
466
(1): 2013/01/09(水)20:41 AAS
Javascriptで書かれた自前の処理シーケンスを記述した
データを解釈してバッチ処理をするプログラムは
自前の処理シーケンスという専用言語を実行していると
解釈されそうな気が

JavascriptのランタイムだってCから見れば
同じ様なものだろう。
467: 2013/01/09(水)21:11 AAS
>>466
極論を言えば、実装の大半を占めているであろうC(or C++)言語だけに
カウントしていいのかどうかじゃないのかな?
(それはさすがに違うだろう)

まぁどう分類するかについて決めてないから曖昧なのは認めますけど。
468: 2013/01/09(水)21:23 AAS
結局重複分は全部カウントしてしまうのが良いと思うんだけど。
Cで書かれたスクリプト言語の実行時間は自動的に
C言語の実行時間にもカウントされるみたいに。

コード量やプログラマーとしてカウントする際には重複無しで。
469: 2013/01/10(木)10:07 AAS
このカウント、計算方法はいろいろあるだろうが、

C >>> C++ >>> JS > Java >> C# > PHP

くらいになるのかね。
関数型言語()どこいった?
470: 2013/01/11(金)02:20 AAS
(関数型(言語))(どこいった)(?)
471
(1): 2013/01/27(日)00:40 AAS
Webブラウザで解釈するスクリプトのデファクトがJavaScriptになったのが運の尽き
おかげでこのクソスクリプトをいかに高速に実行させるかというJavaScriptエンジン競争が始まり
Webブラウザはどんなにメモリ・CPUリソースを消費してもいいんだという
イカれた風潮ができあがってしまった
472: 2013/01/27(日)13:54 AAS
これからはクライアントもサーバーも node.js の時代です。(キリッ
473
(3): 2013/01/31(木)21:23 AAS
>>471
>どんなにメモリ・CPUリソースを消費してもいいんだという
>イカれた風潮ができあがってしまった

これはもう死語だと早く気づかなくちゃいけない
そして景気と同じで大量生産大量消費している時分が一番言語も伸びるんだよ
その証拠にjsでなくともメモリに五月蝿い書き方はしなくなったしな

メモリ消費が増える→マシンパワー必要→新技術が必要
省6
474
(3): 2013/02/01(金)02:48 AAS
言語とコンテンツをごっちゃにしてねえか?

JSは言語としては面白い。
配列すら存在しない、辞書と関数だけで全てを表現するストイックさにはシビれるものがある。

この愉快で面白くて異常に尖った言語を、
誰もが使うウェブブラウザで動かすのがナンセンスだって言ってる。

そのせいで、開発者じゃない一般の利用者ですら、JSの存在を意識せざるを得ない。
結果、利用者に「IE バージョンxx以上でご覧ください」って要求する現状はおかしいだろ。
475: 2013/02/01(金)05:41 AAS
>>473
景気良い時に作られた笹子トンネルは
杜撰な施工で後の世代に禍根を残した
476: 2013/02/01(金)06:11 AAS
ストイックどころかvar無しでグローバルとか変態な変数スコープとか変にカジュアルにした
部分がとても嫌。
477
(3): 2013/02/01(金)06:28 AAS
var無しは外側の関数スコープの宣言を探しに行くだけで、即グローバルになるわけじゃないぞ
クロージャとかを考えるとこの仕様のほうが素直だと思うけどね
478: 2013/02/01(金)07:26 AAS
varをmyにするセンスよりマシだけど
localとかprivateで良かった起臥す
479: 2013/02/01(金)08:08 AAS
varはスコープの内側で有効な変数を宣言するものであって、
ローカルな変数を宣言するっていう意味のものでは無いと思うのだよね
なのでlocalやprivateは不適切に思える

グローバルスコープでvar宣言すれば、それは一番外側にあるグローバルスコープの内側で有効な、
つまりグローバル変数になるわけだ

この辺を全部varだけで済ますのが>>474の言うようなストイックなとこだと思う
480
(3): 2013/02/01(金)08:46 AAS
varみたいな修飾子をつけると影響範囲が広くなる、ならまだ解るのだけれども「つけ忘れると意図せず
影響範囲が広くなる」と言うのは関心の分離という意味では筋の悪いデザインだと思う。
つけ忘れる可能性があるものは何時か必ずつけ忘れるのだから。
var一つで済ますのは良いのだけれども、使い方が逆なんだよね。
481: 2013/02/01(金)09:30 AAS
>>477
外を見に行くのはともかく見つからない場合はデフォで変数を一番大きなスコープに作成
する必要が合ったのが不具合きわまりない。
482: 2013/02/01(金)10:59 AAS
>>477
ん?グローバルになるんじゃないの?
グローバルにならないのなら、どんなスコープになるの?
483
(3): 2013/02/01(金)13:50 AAS
>>477
varって「ローカル変数を定義する」って説明されるし、現実にはその通り使うけど、
実際は「自分より上位のスコープにある、同名の変数を隠蔽する」機能なのよね。

「変数は暗黙に定義される」って軽量言語らしい所と、
クロージャが使えることを両立させようとすると、
素直っちゃあ素直な作りなんだよな。

純粋に言語として見れば、JSは面白いんだがなぁ……
484
(2): 2013/02/01(金)14:35 AAS
>>483
varは、同じ変数が上位のスコープにあったらそれを隠蔽するという仕様なだけで、
> 実際は「自分より上位のスコープにある、同名の変数を隠蔽する」機能
というのは変だぞ。
> ローカル変数を定義する
こっちが本筋の機能でしょ。
485
(5): 2013/02/01(金)15:57 AAS
別にvarが無くたって変数が暗黙的に定義できてクロージャが使える言語なんていくらでもあるでしょ。
>>483は曲解過ぎる。


JavaScriptのvar無しでの振る舞いの仕様がウンコであることはstrictモードの存在自体が証明している。
486
(2): 2013/02/01(金)17:29 AAS
>>485
varみたいなものが無い場合、
上位のスコープで使ってるかもしれない名前の変数をローカルで使いたいときはどうするの?
デフォルトでは上位のスコープを見に行かないとか?
487
(2): 2013/02/02(土)07:20 AAS
>>484
悪いが仕様を語るならまず仕様を読め。
「同じ変数が上位のスコープにあったらそれを隠蔽するという仕様」とやらで

alert(a)
var a = "A"



alert(a)
省4
488
(4): 2013/02/02(土)09:17 AAS
>>486
レキシカルスコープの中での変数名の重複を許していない言語が多い。つまり、宣言時に外の
スコープで既に宣言されている変数名は内側のスコープでは新たな変数名としては使えない。
そしてこれはクロージャが使える云々とは全く関係がない。
489: 2013/02/02(土)15:10 AAS
>>488
レキシカルスコープ上で変数名の重複を重複を許さないとか、そんな変態的な仕様な言語は多くないだろ
そもそもLISPがそんな仕様じゃないし

そういう言語だと、関数の仮引数も同じく関数スコープ上で重複をゆるされなかったりするのか?
490: 2013/02/03(日)06:47 AAS
varは変数宣言以外の何者でもないだろ。
491
(2): 2013/02/03(日)17:52 AAS
宣言しなくても変数は使えるんだから、varの実質的意味はスコープの制限にある
492
(1): 2013/02/03(日)18:21 AAS
実質的意味とか宣う頓珍漢な俺様曲解に実質的意味など何も無いからw

varの意味はローカル変数を宣言して実際に生成すること。
具体的には変数スコープに入ったときにスコープ内のvar以下の識別子を全て列挙して
スコープ内の変数名として扱い、値としてundefinedを代入する。これが仕様。

varによってローカル変数が宣言され生成された「結果の一部」がそれ以後の変数への
代入や参照でスコープが制限されているように見えるだけの話。しかしその理解も全体
の一部にしか過ぎないから、「隠蔽」とか「スコープの制限」とかいう理解に留まって
省3
493
(2): 2013/02/03(日)19:47 AAS
>>492
そいで結局のところおまえはvarは不要と考えてるわけ?
Coffeescriptみたいにスコープ内側では重複した変数名を許さないのがお好み?
もしくはスコープ外側を参照する変数にはouterみたいな宣言をつけるとか
494: 2013/02/03(日)20:48 AAS
>>493
自分の感想ではvarの有無なんてどっちでも良いよ。ウンコな部分はそこじゃない。

JavaScriptに関してはstrictモード相当がデフォになることで暗黙のグローバル変数が
無くなって、結果として「宣言しなくても変数は使える」なんて宣う>>491みたいな
バカが根絶されれば当面は満足。
495: 2013/02/03(日)21:45 AAS
宣言無しで使えるのは事実だろうがw代入する必要はあるがw
496: 2013/02/03(日)22:17 AAS
宣言無しだとグローバル変数として使えてしまうのがウンコだと何度言ったら。
stirctモード相当がデフォになれば宣言無し変数への代入はエラーになる。宣言無しでは
変数は使えなくなるわけで、結果として>>491みたいなバカも根絶されて重畳。

非strictモードで宣言無し変数への代入が暗黙のグローバル変数扱いになるのは代入操作が
そういうウンコな仕様になっているだけの話であって、varの仕様自体とは直接は無関係。
こんなウンコ仕様が残っていることもvarはスコープを制限とか変な曲解を流布する>>491
みたいなバカが絶えん一因だとも思っている。
497: 2013/02/04(月)10:40 AAS
>>473
こういう発想でJavaが生まれたりWindowsが無駄に重くなったりしたのかなと思って感心した
個人的にはコピペにして語り継ぎたい
498: 2013/02/04(月)12:18 AAS
>どんなにDQNを生んでもいいんだという
>イカれた風潮ができあがってしまった

これはもう死語だと早く気づかなくちゃいけない
そして景気と同じで大量生産大量消費している時分が一番人類も伸びるんだよ
その証拠にDQNでなくとも躾に五月蝿い育て方はしなくなったしな

DQNが増える→犯罪が増える→治安維持が必要
はいいが、
省5
499
(1): 2013/02/04(月)16:59 AAS
>>493
で、お前の
> 実際は「自分より上位のスコープにある、同名の変数を隠蔽する」機能なのよね。
という主張はどうなったわけ?
500: 2013/02/05(火)03:15 AAS
>>499
それはおれが言ってるわけじゃないけど
varは上位のスコープの同名の変数を隠蔽する機能を持ってるってことじゃないの?
それが本質かどうかはおれにとってはどうでもいい
var自体いらねーとか言う主張に文句があっただけだ
501
(1): 2013/02/05(火)04:33 AAS
そもそもvarいらね〜だなんて誰も言っていない件。
502
(1): 2013/02/05(火)04:54 AAS
>>501
>>480とか>>485とか>>488とかかな
503
(1): 2013/02/05(火)05:17 AAS
>>502
どれ一つとしてもvarいらね〜だなんて言っていない件w

>>480は暗黙の変数がグローバルスコープで作成されるのは筋が悪いと言っているだけだし
>>485は"「変数は暗黙に定義される」って軽量言語らしい所と、クロージャが使えることを
両立"するのにvarは必須ではないといっているだけだし、
>>488は言わんとする意味がわからんが少なくとも「varいらね〜」とは一言も言っていない
のはわかる。
省1
504: 2013/02/05(火)06:14 AAS
>>503
>>480はグローバルとか言ってない。varみたいにローカル変数に宣言をつけるんじゃなくて、
スコープ外部を参照する変数の方に宣言をつける方式の方がいいってことだろ

>>485は必須ではないってことは無くても良いってことじゃん

>>488はCoffeescriptみたいに全部宣言無しで変数重複を許さない方式にすればいいから
varの方式である必要はないって意見だな
実際Coffeescriptはvarいらねーって主張からそういう方式になった
505: 483 2013/02/05(火)10:04 AAS
>>485 strictモードとか付けたことないし…。
>>487 えっと思って試しに書いてみたら、ほんとに未定義エラー出るし…。
自分の不勉強で話に着いていけないから、もうROMってたんだが……

なぜか>>484が難癖付けられててワロタw
506: 2013/02/05(火)10:11 AAS
正直いろいろ勉強になったwもっとやれw
507: 2013/02/14(木)23:27 AAS
つまり何言語が最強なん?
508: 2013/02/15(金)08:52 AAS
Adobe PhotoShopのソースもPascalでした
外部リンク:computerhistory.org
509: 2013/02/15(金)08:55 AAS
Node.jsなんかには同期読みこみもあるみたいだし
外部リンク[html]:www.2ality.com
やろうと思えばやれないこともなさそう
510: 2013/02/15(金)09:00 AAS
そりゃ、Macの最初の公式開発言語はPascalだったからなあ
511: 2013/02/15(金)09:03 AAS
ひといたのかここ
512: 2013/02/15(金)15:54 AAS
勉強になった
腐ってる
外部リンク:builder.japan.zdnet.com
513: 2013/02/17(日)02:21 AAS
Node.jsなんて死ねばいいのに
514: 2013/02/17(日)07:25 AAS
node-webkit 最高っす
うっす
515: 2013/02/24(日)18:21 AAS
うまく説明できないけど
googleがこの分野から消えれば
大体解決するような気がしている
516: 2013/02/28(木)05:11 AAS
>>473
富豪厨はプロセッサの現状がどうなっているか知っているの
Sandy Bridge→Ivy Bridge→Haswellと3世代に渡って性能がほとんど上がってないんだが。
最先端プロセスを持つIntelがこの状況。自作PC板がお通夜状態になってるから見てこいw

ついでにIntel以外の各ファウンドリ(ARM勢やAMD)もプロセスルールで躓いていてヤクイ
PS4もシングルコア性能で云えばCore i3程度しかない。

しかも、モバイルプロセッサはPCプロセッサより遥かに下で限界が来る。
省14
517: 2013/02/28(木)05:24 AAS
随分前からCPUの性能というのは
シングルコアでの性能ではなく
コア数を増やす方向に変わったはずだが?
518: 2013/02/28(木)06:09 AAS
JavaScriptがマルチコアでもちゃんと性能が伸びるかは別問題なわけで。
519: 2013/02/28(木)09:09 AAS
マルチコアで性能が伸びるかどうかは
JavaScriptではなく、アプリ側の問題だよ。
520: 2013/02/28(木)09:19 AAS
まったくだ。.netでマルチスレッドしまくりのアプリ作ってると
マジでこれ.netかよってくらいスムーズに動くアプリが作れる。
521
(1): 2013/05/03(金)01:37 AAS
Netscapeの遺産を守っていきたい。
522: 2013/05/27(月)20:16 AAS
>>521
モザイクからやり直せ
523: 2013/06/05(水)10:26 AAS
いまだにC言語よりも一般に多く使われている言語がJavaScript
524: 2013/06/10(月)09:14 AAS
中国語だろ
525
(3): 2013/06/16(日)10:47 AAS
JavaScriptを殺せなかった(Ajaxで生きながらえさせてしまった)のは
今世紀最大の失敗だったと思うわ

TojiCode: A Tale of two Web Technologies
外部リンク[html]:blog.tojicode.com

コメント欄など見てると、もう駄目だよこれ\(^o^)/オワタ
JavaScriptの置き換えも改善も期待しないほうがいい。
DartもPNaClも政治で潰される。asm.jsはどう考えてもLLVM→asm.jsの変換時間やマルチスレッド対応で躓く。
省7
526: 2013/06/16(日)10:59 AAS
[更新]新型MacBook Airと旧型MacBook Airを徹底比較!気になる性能は? | ガジェット速報
外部リンク:ggsoku.com

新しいMacBook AirはあろうことかGeekBenchスコアが低下(6128→6013)

私達はこういう時代に生きているのだということを
よくよく考えなければならないのだけどね。ほんとに(´・ω・`)
ハード性能が上がるのを当てにして遅いソフトウェアを作ることはもう許されない。

だというのにクソゴミカスのウェブ界隈の連中は
527: 2013/06/16(日)11:11 AAS
>>525
誰だよそのブログ書いた奴?
そいつがアホなんじゃない?

Brandon Jonesでぐぐった
外部リンク:www.google.co.jp
528: 2013/06/16(日)15:27 AAS
ウホ
529: 2013/06/16(日)15:36 AAS
WebGL用の行列ライブラリ作ってる人か
530: 2013/06/16(日)15:56 AAS
ネットの重要な部分をMSとかAdobeとかの独占技術が支配するよりはマシだな
531: 2013/06/16(日)16:03 AAS
JavaScriptがクソなのと何の関係もない
532: 2013/06/16(日)18:01 AAS
クソで消滅すべきなのはそうなのだが、消滅した後に皆で何を使うべきかなんら意見の
合意がないので結局皆でJavaScriptを使い続ける。
533: 2013/06/16(日)18:38 AAS
どの辺が糞と思うかも人それぞれ違うという
1-
あと 238 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.022s