Javascript как управляемый динамический язык .net - PullRequest
2 голосов
/ 21 января 2012

Расширяемость языка Visual Studio

Кто-нибудь знает, существует ли проект с открытым исходным кодом (или платный), который расширяет Visual Studio с помощью управляемого Javascript в качестве языка .net на стороне сервера, так что он компилируетсяв IL и выполняется как повседневное приложение .net?

Мы привыкли к динамической природе Javascript, и поскольку C # 4.0 также поддерживает dynamic Я не вижу какой-либо конкретной причины, по которой Javascript не может использоваться какязык .net на стороне сервера в Visual Studio.Я уверен, что многие будут очень рады использовать его.Хотя это может привести к путанице в приложениях Asp.net из-за одного и того же языка на обоих концах.Но это может быть решено с помощью расширений файлов. Файлы на стороне сервера должны использовать не расширение * .js (клиентский JavaScript), а что-то вроде .ssjs (JavaScript на стороне сервера).

На самом деле это было бы похоже на node.js приложение, но с меньшим количеством строк кода и полной функциональностью .net под рукой.

Разве это не было бы здорово?

Что можно найти в интернете

  • Управляемый JScript - кажется, это именно то, что мне нужно, но несколько источников говорят, что это мертвый проект;поскольку это был эксперимент с DLR (динамическим языком исполнения);
  • MyJScript - просто учебник по написанию компилятора DLR, случайно использующий Javascript / JScript в качестве языка
  • JScript.NET - это не совсем похоже на Javascript (он расширяет оригинальный синтаксис, который я считаю плохим), и это также , кажется, все равно давно мертвый проект в любом случае (согласно @ grapeot ).

Ответы [ 3 ]

2 голосов
/ 21 января 2012

Вам известно о IronJS ?

И о JScript.NET ?

Они могут быть попытками сделать именно это.

С другой стороны, можно спросить, почему J # .NET не удалось.Он был разработан, чтобы облегчить переход на .NET для людей, которые знают Java, но, очевидно, они не хотят.Может быть, потому, что c # был слишком похож, но это может относиться и к c # и Javascript, учитывая существование динамического, о котором вы упоминаете.

1 голос
/ 21 января 2012

Вас может заинтересовать Jscript.NET [MSDN] [Wiki] .Обратите внимание, что он впервые появился примерно в 2000 году. Некоторые люди утверждают, что Microsoft имеет улучшенный компилятор в .NET 4, в то время как другие утверждают, что он прекращен, поскольку этот пост обсужден.

В Mono, реализации с открытым исходным кодомCLR, они поддерживают JavaScript как рабочий язык, известный как IronJS. [ссылка]

0 голосов
/ 10 сентября 2013

Microsoft представила TypeScript, который компилируется в Javascript. Но приложения Typescript или Javascript не могут быть развернуты во время выполнения .NET (пока). Ключевая особенность языка Javascript и Smalltalk - закрытие блоков (гибкий вид анонимной функции, определенной в методе inline). .NET DLR не может поддерживать эту функцию. Существуют обходные пути, но нет полной структуры для развертывания приложений Javascript (или Amber Smalltalk, который компилируется в Javascript) в .NET

Microsoft наняла эксперта по виртуальным машинам Smalltalk (Д. Симмонса) для работы над их виртуальной машиной Javascript для IE. Я надеюсь, что опыт сводится к .NET

Кто-то должен работать над этим? Было бы здорово, если бы приложения Amber Smalltalk были развернуты в .NET

...