Является ли JavaScript проектом с открытым исходным кодом?

Пока я знаю, что он был создан Бренданом Эйхом в Netscape, JavaScript является проектом с открытым исходным кодом? Если нет, кому принадлежит исходный код?

Кроме того, какой скомпилированный язык использовался для разработки JavaScript?

Ответы

Ответ 1

JavaScript не является "проектом".

Скорее, существует "спецификация" языка (стандарт ECMAScript), а затем существует множество "реализаций" этого стандарта. Это, как правило, отдельные проекты отдельных людей. Многие популярные языки программирования разрабатываются аналогичным образом, имея множество реализаций одного стандарта.

Возможно, что язык может иметь реализацию с открытым исходным кодом, но стандарт не может быть "открытым" - его изменения могут контролироваться одним корпоративным лицом за его прибыль. Или стандарт может быть "открытым" и разработан совместно, но может быть только одна реализация, которая не является открытым исходным кодом, или единственные "хорошие" реализации могут быть проприетарными.

JavaScript, в частности, представляет собой реализацию стандарта языка ECMAScript и в основном используется в виде клиентского JavaScript, реализованного как часть веб-браузера, для обеспечения расширенных пользовательских интерфейсов и динамических веб-сайтов. Это позволяет программному доступу к вычислительным объектам в среде хоста.

Из-за открытого стандарта ECMAScript открыт, но не с открытым исходным кодом. (Языковой стандарт не может быть открытым исходным кодом - это не программа, это документ, описывающий ожидаемое поведение программы, но реализация может быть.)

Например, движок V8, который использует Google Chrome, доступен, а также Исходный код SpiderMonkey, который используется в Mozilla Firefox. Есть более механизмы JavaScript, если вам интересно.

Ответ 2

Javascript - это язык. Существует много разных движков, которые интерпретируют javascript, и каждый из них будет подчиняться своему собственному лицензионному соглашению.

Подробнее о разных двигателях: http://en.wikipedia.org/wiki/JavaScript_engine

Первый механизм JavaScript: SpiderMonkey написан на С++ и является проектом с открытым исходным кодом, поддерживаемым Mozilla Foundation.

Ответ 3

JavaScript - это язык программирования, первоначально разработанный компанией Netscape. Он стандартизирован под названием ECMAScript http://www.ecmascript.org. Это отклонение в названии связано с разногласиями между различными компаниями в отношении того, что назвать его в то время, когда оно стало стандартизированным.

Существуют различные "двигатели", которые интерпретируют JavaScript, когда он запускается в браузере. Некоторые из них - с открытым исходным кодом (например, "Rhino", используемые в Firefox или "V8", используемые в Chrome).

Однако вопрос о том, является ли сам JavaScript открытым исходным кодом, немного отличается от него. "Open source" относится к программам, тогда как JavaScript - это язык программирования. Это открытый стандарт, который в некотором смысле является близким приближением - по крайней мере, в том смысле, что это не "пристойный" язык, который принадлежит и контролируется одной компанией.

-

Обновление. Я полагаю, что ответ на ваш вопрос заключается в том, что, поскольку JS является открытым стандартом, его много, в том числе с открытым исходным кодом. Эти реализации выполняются во всех типах компилируемых языков и даже некоторых не скомпилированных.

Ответ 4

JavaScript имеет спецификацию языка: ECMAScript, который может и имеет различные реализации, открытый или закрытый источник. Я не верю, что реализация языка обременена чем-то вроде патентов, но я могу ошибаться.