Microsoft、JavaScriptを拡張したプログラミング言語を発表 63
ストーリー by hylom
でも結局JavaScriptの知識は必要になる予感 部門より
でも結局JavaScriptの知識は必要になる予感 部門より
あるAnonymous Coward 曰く、
MicrosoftがJavaScriptベースの新言語「TypeScript」を発表している(TechCrunch、SourceForge.JP Magazine)。
JavaScriptにクラスや静的型付け、モジュール化といった機能を追加したものだそうで、JavaScriptにコンパイルして利用できる。コンパイラはApache License 2.0でリリースされている。
JavaScriptに変換して利用できる言語はJSXやCoffeeScript、Clojureなどがあるが、Microsoftもこれに参入するとは興味深い。
JavaScriptを使う機会が増えてきているので (スコア:2)
ブラウザ間の差異とか可読性もあっていろいろ面倒なのでこういったフレームワーク的な補助が出来るツールを導入しようとしていた矢先に
選択肢が1個増えたとみるべきか
それとも評価する手間が増えたとみるべきか・・・
ASP.Net との連携は? (スコア:1)
Ajaxコントロールやaspxページ自体を TypeScript で拡張してサーバーサイドの処理と連携・統合できるようにするのかな。
それとも MVC の方が親和性高いかな?
Re: (スコア:0)
Web Formsはオワコンだと何度言えば。
Re:ASP.Net との連携は? (スコア:1)
ええ個人的にはWeb Formsなんてもう要らないよと思ってますよ。
もし、今後ASP.NetのクライアントサイドスクリプトがTypeScript主体になるなら、むしろそっちに合わせてサーバーサイドの処理を書くスタイルになるのかな、と。
Re: (スコア:0)
何度言えば気が済むのか、それはご自身に問うた方が早いのでは。
オワコンであるか否かと、それについて言及することは全く直交した話でしょうに。
相変わらず (スコア:1)
かぶせ商売全開なMSですな
MSどっぷりの開発者なら使う意味はあるのかも知れないけど、一般のプログラマーやコーダーがこれを使う意味を見いだせない。
Re: (スコア:0)
一般のプログラマーはMSを使わない、みたいなアンチ全開なACですな
Re: (スコア:0)
確実にアンチだろうね
Re: (スコア:0)
お前ら、アンチって言いたいだけだろう。
Re: (スコア:0)
あん、ちがうのよ
Re: (スコア:0)
便乗しようとしたものの、何も浮かばず。あっぱれです
Re: (スコア:0)
モルダー、あなたアンなのよ。
うむ。イミフだ^^
Re: (スコア:0)
何を持って一般と言っているのかが不明。
Re: (スコア:0)
すみません。コメントを付けるレベルを間違えました。
Re: (スコア:0)
逸般の誤変換なんですよきっと
Re:相変わらず (スコア:2)
乱立 (スコア:0)
乱立すると、全部衰退するイメージが…。
Re: (スコア:0)
同意。どれもこれもスタンダードになりきれずという未来が…
結局、素のJavaScriptを使うことになりそうな。
この手のが増えるのがデバッグがしにくかったり大規模開発に向いていないとかなのであれば、強力な開発環境の方を提供して欲しい。
ブラウザで挙動が違うなどサポートが大変だとは思いますが今一番必要なのはIDEとかではないでしょうか。
Re:乱立 (スコア:3)
「そもそも言語として開発に向かない」のと,
「便利なツールがない」っていうのは違うレベルの話です.
それに対して前者の問題を後者を利用して解決するのは筋が悪い.
かといって,標準となった言語を変更するのはもっと筋が悪い.
だから上位に,より開発に向いた言語を設計して提案しているのです.
ちなみに,今回提案された言語は型情報をもつので,
IDEの作りもかなり簡略化できる点においても恩恵があります.
Re: (スコア:0)
理屈はなるほどと思いました。
ただ筋が悪かろうと現状の問題を解決するためにこそツール…ソフトウェアが用意されてよいのではないかと思ったまでです。
よりよい言語が提案されようが開発環境が整備されないまま普及もしないようであればそれは筋が悪いどころではないと考えます。
Re: (スコア:0)
VisualStudioがあるからIDEは問題ないかと
Re: (スコア:0)
でも実際、「素の」Javascript 使ってる人ってどのくらいいるんでしょうかね。
とくにメインフィールドである web 関連とか。
# 何かjQuery やらなんやらみたいな拡張ライブラリ全盛かと思ってる人。
# あれ単なる拡張に見えて実際文法とか独自ですし。
Re: (スコア:0)
http://en.wikipedia.org/wiki/TypeScript [wikipedia.org]
VisualStudio2012でサポートされるし、言語仕様もECMAScript 6の先取りだ
> Type annotations can be exported to a separate declarations file to make type information available for TypeScript scripts using types already compiled into JavaScript. Annotations can be declared for an existing JavaScript library, so has been done for Node.js and JQuery.
このへんが興味深い
Re: (スコア:0)
衰退というよりもメンテが大変
開発の時間的スパンが長い場合、将来のはっきりしない言語との一蓮托生は困る
Rubyみたいな言語は一蓮托生となる覚悟か、いざという時には潔く他に乗り換える覚悟が無ければ使えない
組込分野でC言語が末永く使われているのは、きちんと規格化されていて「生きている」処理系の入手には困らないから
金を積めば特定プロセッサ向けのコンパイラを作ってメンテしてくれるベンダーも選べるし
JScriptみたいなもの? (スコア:0)
JScriptは、まだ生き延びているのか?
Re:JScriptみたいなもの? (スコア:2)
生きてるよ。君の手元のマシンがWindowsならば、次のように実行できるはずだ。
PS C:\Users\Administrator> cat test.js
WScript.Echo("Hello, World")
PS C:\Users\Administrator> cscript test.js
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.
Hello, World
PS C:\Users\Administrator>
以上は、Windows Server 2012 RTMで検証した。
Re: (スコア:0)
おおっ!動いた。
ありがとう。
Re: (スコア:0)
ん?WindowsSrv2012ってcatコマンド(UNIXコマンド)使えるのか。
copy conだろうと思ったけどWin2012持ってないから検証できないや。
REM オフトピなのでAC
Re:JScriptみたいなもの? (スコア:1)
プロンプトの先頭に PS があるから PowerShell コンソールでしょう。
Re:JScriptみたいなもの? (スコア:1)
PowerShell。
ちなみに、PowerShellは、Windows 7・Windows Server 2008以降で標準搭載。
Windows XPおよびVistaには、ダウンロードしてインストール可能。
CMD.exeよりまともなバッチ処理が書けるし、VBScriptとかJScriptと違って対話的にも使えるので便利。試してみ。
Re: (スコア:0)
PowerShellて実は最も現代的な環境だと思ってます。
PSでツールのプロトを組んで動きが確定したあと後にC#ベースのコマンドラインツールに書き直すとかやってます。コピペベースで移せるので楽ちん。
Re: (スコア:0)
PSってなってるでしょ。
PowerShell使ってるってことだよん。
Re: (スコア:0)
プロンプトに「PS」ってあるし。
Re: (スコア:0)
' プロンプト見る感じPowerShell使ってるっぽいですよ。
Re: (スコア:0)
たくさんのコメありがとう。
ぐぐったけどPSすごいや。今までcygwin-tcshでやってたことほとんどPSでできそう。
mshって名前の方がしっくりくるから%HOMEPATH%にmshという名前のショートカット作った。
REM オフトピなのでAC
ES6にコミットする気はないと (スコア:0)
ES4の二の舞確定の予感
コンパイラはApache License 2.0 (スコア:0)
Ms-PLじゃないの?
Re:コンパイラはApache License 2.0 (スコア:1)
F#やらASP.NET MVC FrameworkだってApache Licenseになったし今のMSでは珍しくないな
ブラウザベンダーなら (スコア:0)
ブラウザベンダーならtype="text/typescript"でネイティブコードが走るくらいやってほしい
業務アプリなら (スコア:0)
業務アプリなら「IEのバージョンxとxのみ動作」とか普通なんでそういうのもありですね。
でも、業務アプリまでwebアプリ化してる流れは何とかしてほしい。
作るほうは面倒だし、使うほうは使いや少ないし、ほんとうに誰も得しない流れ。
Re: (スコア:0)
> とか普通なんで
いかにも「もうみんなIE縛りですよ」な日本人ですね。
> でも、業務アプリまでwebアプリ化してる流れは何とかしてほしい。
じゃあWindowsストアで配布されないけどWindowsストアアプリ(旧称Metroスタイルアプリ)で。
# 本当にこの名称はなんとかならんのか
Re: (スコア:0)
型がついてる分,実行性能は確実に上がるでしょうね
でも,これって"compile"してjsにする用途なんだよなぁ.
その場合,ブラウザで直接実行できるメリットは,
「開発者がテストをすぐできる」程度なんだと思う.
Re:ブラウザベンダーなら (スコア:2)
| 型がついてる分,実行性能は確実に上がるでしょうね
吐き出す js に型情報が残っていないと実行性能が(素のjsと比較して)上がるとは言い切れないと思います。
ランタイム側の特殊機能として、例えばコメント文中に型情報を記載しておくと JIT コンパイル時に
最適化される等の処理を行うようにしておいて、コンパイラとランタイムの合わせ技で早くするというのは
できると思います。
|その場合,ブラウザで直接実行できるメリットは,
|「開発者がテストをすぐできる」程度なんだと思う.
ランタイム(JSエンジン)がユーザの環境(ブラウザ)に既にインストールされている
が最も大きなメリットだと思います。
Re: (スコア:0)
> 型がついてる分,実行性能は確実に上がるでしょうね
DartもそうだけどIntelliSenseのためであって必ずしも性能のために型付けしているとは限らない。
今のコンパイラはそこまで賢くないかもしれないが、むしろ最適な型を好きなように選べないことは最適化を阻害するかもしれない。
かつては人間様がどの変数をレジスタに割り当てるか教えてやらないとコンパイラはろくに性能を出せないと思われていた時代もあった。
Re: (スコア:0)
型の内部表現は処理系の自由だとおもうんだ。
独自仕様はもう勘弁 (スコア:0)
各社で独自の規格を立ち上げて乱立するから、どれもニッチ製品でしかない。
早くどれかが天下を取るか、機能追求を一旦停止して標準仕様を一本化するかしてほしい。
Re: (スコア:0)
標準仕様の先取りなんだよ。ECMAScript6。
余計なことなんか何もしてない。
Re:独自仕様はもう勘弁 (スコア:1)
ブラウザに先行実装してしまうと、正式決定時には仕様が変わってしまって、互換で泣かされる
だから、ブラウザには実装せず、今のバージョンにコンパイルして、互換性を保ちつつ、
新しい仕様をとりこむということなんだろうか。
それよりも (スコア:0)
もっと使いやすいデバッガをください。
Re:それよりも (スコア:2)
現状の JavaScript の仕様で実現可能な範囲としては、現時点の Chrome Developer Tools や FireBug, Dragonfly とかはかなりよくできてると思うんだ。
それでも、例えばクラス名に対してその定義の場所へジャンプするとか、
変数にカーソルを合わせると型名が表示されるみたいな機能は、JavaScript の仕様上どうにも実現できない。
JavaScript の上に建て増ししてももうどうにもならないところまで来てると思う。
最近 JavaScript を書くことが多いから、本気で早くなんとかして欲しい。