Movatterモバイル変換


[0]ホーム

URL:


はてラボはてな匿名ダイアリー
ようこそ ゲスト さんログインユーザー登録

「ECMA」を含む日記RSS

はてなキーワード:ECMAとは

2021-05-19

TypeScriptWebから追いやり、Microsoftを倒す方法

が見つかって俺が騒然。

TypeScriptバージョン 4.3 で、「オーバーライド」を明示する機能が付いた。

classBase {    foo() { }}class Deriv extendsBase {    override foo() { } }

これは、TypeScript の大きなアキレス腱となる。

もしECMA が別の記法採用したらどうなるだろうか?

例えば、こう

classBase {    foo() { }}class Deriv extendsBase {    foo():Base { }}

コロンの後ろに基底クラス名を指定し、これでオーバーライドを明示する記法としたらどうだろう?

TS としては「foo() はBase を返すメソッド」に見えるのに……

見た目は同じなのにTSJS意味が異なるとなれば、TS はもう「JSスーパーセット」と名乗れなくなるだろうし

コードを読まされるプログラマにとっても大きな負担となり、TS に身勝手機能を取り付けていったMicrosoft

多くのプログラマから愛想をつかされるだろう。

似た事は「private」で起こっていた。

TSプライベートメンバを「private」で表したのに対し、ECMA は「#」記号で表すことにした。

しかしこれは残念ながらTS の都合とバッティングするものではなく、TS はすぐにECMA追随してしまった。

TSMSWebから追いやるには、ECMAちょっと工夫をするだけでよい。

ECMA の動きに大いに期待したい。

Permalink |記事への反応(1) | 17:09

このエントリーをはてなブックマークに追加ツイートシェア

2020-10-18

anond:20201018221815

TypeScriptはだめでしょ。

使うべきでない理由はこんだけある。

Permalink |記事への反応(1) | 22:25

このエントリーをはてなブックマークに追加ツイートシェア

2020-05-22

anond:20200521225730

プログラミング言語を印象批評している記事に触発されて、自分も印象批評してみようと思う。

JavaScript以外にもブラウザ上でぐりぐりするのにはJavaAppletとかFlashとかSilverlightかいろいろあったけれど、結局標準化を成し遂げたHTML5に淘汰されちゃった感じがする。LiveScriptからJavaScript改名されたり、規格を話すときECMAScriptだったりといろんな別名を持つ。一応、プロトタイプベースオブジェクト指向言語なんだけれど、それを意識してコードを書く人がどれくらいいるかは謎。

Pythonは小さいコードを書くのには楽だけど、これで大きなコードを書くと思わぬ変更で思わぬことが起きるのでつらい。しばらく使うとPythonイヤイヤ病にり患し、goを使うようになるらしいとか、ならないとか。pythonで大規模なコードを万一書こうと思うなら、カバレッジが高いテストを書いてくれと思う。

Javaは初期のころオートボクシング / アンボクシングもなく、ストイックオブジェクト指向言語だった記憶がある。ただ、staticを多用してオブジェクト指向とは程遠いコード簡単に書けるので、Javaで書いているからと言ってオブジェクト指向だと思うのは禁物である

PHPWebネイティブ言語で、初期のころHTTP POST/GETなどで渡された変数がそのままプログラム中に出てくる機能初期化していない変数最初に使うと空文字列あるいは0で初期化するという機能があった。また、文字列数字臨機応変に切り替える機能もあり(今もそうかは知らん)、数字文字比較比較演算子(==)でシームレスにできる。パスワードチェックみたいなコードで===ではなく、==を使っているとPHPを知らないバカ扱いされる。

C#Hello Worldくらいしかいたことないから知らん。monoのような互換環境があるのは知っているけれど、わざわざPCUnix上でmonoを使う気分にはなれなかった。

C++黎明期に使った感じと、C++11以降に使った感じが驚くほど違う言語。今はかゆいところには大抵STLで手が届くし、autoを使えばイテレーション腱鞘炎になることもない。PCUnixにも最初から環境インストールされているか簡単インストールできるので毛嫌いせず使うとよいと思う。

Rubyはぎょっとする変更をよくやるというイメージ。これで書かれたプログラムを長年愛用してきたが、ぎょっとした変更を入れられて動かなくなったのでgoで書き直した。その点ではpythonも3でおいていかれたので嫌い。

CSS...はプログラミング言語なのか?そうか。

TypeScriptは書いたことないから知らない。JavaScriptだと大規模コードを書くとつらいのでTypeScriptを使おうという人がいるのは知っている。大規模なコードを書くとしたら、インタフェースに合った呼び出しかコンパイル時にチェックしてくれるような強く片付けされた言語のほうがよくなってくるというのはわかる。

Cは片付けし、構造化したプログラムを書きやすくしたアセンブラ...というイメージだったんだけど、C99くらいから便利機能がいろいろ入ってそうでもない感じになった印象。昔はCのコードを見たら最適化した後のx86アセンブリが見えていたんだけれど、最近は見えなくなってしまった。子供のころ、本屋で秘伝C言語問答ポインタ編に出会ったのがこの業界に入るきっかけだったのかもしれない。ほかの言語でいろいろ楽に書けるからカーネルをいじるか、システムコールをたたくかするときくらいしか自分の中では出番がなくなってしまった。

これ以下のランキングのもその気になったら書こうかな。

Permalink |記事への反応(0) | 09:01

このエントリーをはてなブックマークに追加ツイートシェア

2019-11-07

TypeScriptは滅びる。確実に

TypeScriptTS)がJavaScriptの代わりになるだと?確かに型を使えるのは良い。意味不明オブジェクト操作しまくって意味不明な動的型付けするJSに型が追加されたら、そりゃバグも減るだろうよ。でもそれは意味不明オブジェクト操作し、再代入を繰り返すレベルの低いJSerの責任だ。コーダー責任なんだよ。Python意味不明オブジェクト操作しまくるが、JSほどはひどくならない。Pythonも型ヒントなんてものが導入されたが、誰が使うんだこんなの。果てしなく冗長になって糞だ糞。DocStringを充実させるのと型ヒントを充実させるの、どちらがどれだけメリットが有るっていうんだ。DocStringで十分だろ。全員アホだ。話をTSに戻そう。

散々文句を言ってしまったが、型が使えるのにはこしたことはない。TSを始ようじゃないかTSインストールしよう。Node.jsをまずインストールして、TSインストールしたぞ。ついでにgulp、webpackもいるのか。おいまてよ、ts-loader、webpack-cli、webpack-dev-serverもいるのか。何が何のために必要なのかよくわからないが、node_modulesはすでにパンパンだぜ。tsconfig.jsonを設定してsrcとdistを決め、ECMAバージョンも決めたぜ。webpack.config.jsってファイルもあるじゃないか。これも設定が必要なのか?俺はいつになったらHello Worldを書けばいいんだ?なめてんじゃねえぞ!!!なんかに似てるんだよ!これはCだ。C言語プログラムを書こうってときに、コンパイラ必要インストールして、パスを通して、謎のおまじないを書いて、それでよくわからないままHello Worldを出力したあの頃の思い出がフラッシュバックしたぜ!いや、TSはそれ以上に糞だ。なにせ設定ファイルばっかいじってまだ一行もコードを書けてないくせに、ファイルサイズは70MBを超えてるんだからな。「TS コンパイル」で検索したら、なんで「次にgulpをインストールしましょう」なんて記事がヒットするんだよ!糞か?いや糞だお前は!

プロジェクト必要ツールインストールするのは当たり前だって?偉そうなこと言ってんじゃねーぞ!どうせお前なんか先達がすでに準備してくれたプロジェクト環境に後でアサインして、「これとこれが必要からインストールしてね」って言われてそのまんまインストールしたクチだろうが!どのツールがどのシチュエーションで最適なソリューションなんかわかってねえに決まってら!どのツールがどのシチュエーションで最適なんか誰もわかってねぇんだよ!インターネット情報適当に転がってて、お前の先達もDevelopers.IOの記事を読んでなんとなく良さそうだからインストールしてんだよ!全てを正しく把握してるやつなんか日本で3%いたら多いほうだろ。少なくともお前も俺も理解してねぇよ!PHPRuby駆逐するって言われて何年たった?今でもPHPは現役で、RubyPHPの後ろを歩いてるじゃねえか。jQueryが消えるって?同じ理由で消えねえよ!一生やってろばーーか。JavaScriptも消えねぇよ。ECMAアップデートに従って生で書けば十分だろ。こんなコード書くまでにうんこ行きたくなるような設定ファイルばっかいじらせる言語にとって代わるわけねぇだろ。消えるのはお前だばーか

Permalink |記事への反応(3) | 18:06

このエントリーをはてなブックマークに追加ツイートシェア

2013-04-05

JavaScript Lover

いっせーの!Webにのって さあ出かけようブラウザとのランデブーユーザー大事 実装が大事JS、マジ大好きユーザーの痛み それ言語のせい?UIの動きUXのつもり今までのJSポジションを越えた未来は どうなるの?ねぇどうせWebKitでしよダメ?ダメ!ECMA標準だけ油断も隙もないAPIとのボーダー越えたいそうもっと!大胆でちょっと強引?俺ワールド全開優しいJSも いじわるなJSひとりじめ型つけてみて やっぱやめてウラハラ alt-jsJava以上C++未満のJS、マジ最高V8けが きらめいて遠い背中も 追いかけたよこれから最適化フローグラフの分まで伝えたいぎゅってしてPNaClコンパイルダメ?ダメ!不埒ですCSS3に甘えたいGPUに触れたいどこまで?APIボーダー教えておっとっと!手強いIEの仇ムキになったら古いシステムFlashの将来も譲れない実装して やっぱやめて一方通行プロセスW3C信じてプラグイン書いてNomoreE4X動的なの? 静的なの?型推論好き?好き!好きだからわず答えてIon Monkey 越えようおっとっと!大胆でちょっと強引?prototypeを知ったらJSでの設計コーディングも変わるの?答えてよ!ときめき 走り出すわくわくコーディングSelf以上Scheme未満のJS、超愛してる!!

「Girlish Lover」 PV

Permalink |記事への反応(0) | 13:39

このエントリーをはてなブックマークに追加ツイートシェア

2012-02-20

http://anond.hatelabo.jp/20120220152810

片方にだけしか無い 言語依存した機能って多くないだろ。 ほとんどが、 ライブラリ依存した機能だ。

しかベースとしているECMAScriptバージョンが違うとかに依存する場合バージョンが古いだけだし。

C言語で言えば、Win32組むのと、LinuxX11組むのと、Macで組むのと 書き方は違うが全部C言語みたいなもの

そこまで同じじゃないが PerlPHPに比べれば 同じようなものだ。

Permalink |記事への反応(0) | 16:37

このエントリーをはてなブックマークに追加ツイートシェア

http://anond.hatelabo.jp/20120220150245

どっちもECMAScriptの実装なのに?言語そのものの規格はほぼ同一で、ライブラリが違うだけだろ。

http://anond.hatelabo.jp/20120220150523

Permalink |記事への反応(1) | 15:09

このエントリーをはてなブックマークに追加ツイートシェア

 
ログインユーザー登録
ようこそ ゲスト さん
Copyright (C) 2001-2025 hatena. All Rights Reserved.

[8]ページ先頭

©2009-2025 Movatter.jp