Каково определение языка программирования с открытым исходным кодом? [закрытый]

Зависит от того, что Вы подразумеваете под окончанием. Чего Вы хотите ожидать?

у Вас мог, например, быть сценарий, который неоднократно поражает URL, пока это не получает желательный результат, который только был бы доступен, после того как приложение правильно инициализируется.

у Вас мог также быть слушатель контекста, который выписывает, "я - готовый" файл, который Вы используете для передачи сигналов о готовности приложения. (Если Вы делаете это, быть уверенными, что файл не существует прежде, чем запустить Ваш контейнер приложения).

15
задан Lawand 9 October 2009 в 23:57
поделиться

6 ответов

По сути, как отмечали другие, на самом деле не существует такой вещи, как "язык с открытым исходным кодом". Только код может быть открытым исходным кодом в самом строгом смысле этого слова. Таким образом, могут быть компиляторы с открытым исходным кодом, среды выполнения, библиотеки и т. Д.

Однако для многих языков реализация (компилятор / среда выполнения) почти неотделима от самого языка. Так обстоит дело с Ruby, Python и т. Д., Где язык фактически определяется своей основной / исходной реализацией. Хотя существуют и другие реализации этих языков, основная реализация и язык практически взаимозаменяемы. В таких случаях, когда основная реализация также является открытым исходным кодом, имеет смысл называть ее языками с открытым исходным кодом,

10
ответ дан 1 December 2019 в 03:35
поделиться

Я не думаю, что языков обычно считаются открытым исходным кодом, а скорее программное обеспечение , реализующее язык (будь то компилятор или виртуальная машина или что-то еще). Отсюда следует, что данный язык может иметь реализации как с открытым исходным кодом, так и без него. Например, существует множество компиляторов C ++ с закрытым исходным кодом, а также компиляторы с открытым исходным кодом.

Возможно, можно было бы провести различие между языком, управляемым одним объектом (например, C #), и языком, который вырос через вклад сообщества (например, Python или даже Java).

8
ответ дан 1 December 2019 в 03:35
поделиться

Я обычно слышу "язык с открытым исходным кодом" применительно к языкам, которые изменяются в соответствии с пожеланиями сообщества. Например, в Python есть процесс PEP, который позволяет любому желающему изменять синтаксис / семантику самого языка.

C и C ++ также управляются сообществом, хотя из-за их возраста и повсеместного распространения любые изменения требуют невероятной стандартизации. усилие. C ++ 0x разрабатывался в течение многих лет, и C видел только 3 основные версии (K&R, C89, C99).

Языки, которые управляются одним объектом с очень небольшим вкладом сообщества, такие как Java или C #, обычно считаются «закрытыми» независимо от доступных реализаций. Доступны реализации как Java, так и .NET под GPL, но развитие языка не зависит от сообщества.

1
ответ дан 1 December 2019 в 03:35
поделиться

Я должен признать, что никогда не слышал о языке, который упоминается как открытый исходный код, но я думаю, что один из способов рассмотрения этого - это два примера, которые вы дали, Ruby и Python являются (AFAIK, и я не эксперт ни в одном из них) оба нескомпилированных языка, тогда как C и C ++ скомпилированы.

1
ответ дан 1 December 2019 в 03:35
поделиться

Люди часто используют термин «язык» как синоним всей среды программирования, включающей IDE, фактический язык, среду выполнения / архитектуру и библиотеки / фреймворки кода. Поэтому, когда вы говорите «открытый», я сразу думаю о Sun Microsystems, выпускающей код для инфраструктуры Java и виртуальной машины как с открытым исходным кодом.

Затем у вас есть подобные C # /. Net, где язык, базовые классы инфраструктуры и CLR spec представлены в ECMA в качестве стандарта. Третьи стороны, такие как Mono, могут реализовать эти открытые стандартизованные компоненты без необходимости лицензировать технологию, и поэтому ее можно было бы описать как открытую до определенной степени, даже если реализация Microsoft является закрытым исходным кодом (или частично открыта в любом случае) и является коммерческим продуктом. In Mono '

1
ответ дан 1 December 2019 в 03:35
поделиться

Можем ли мы рассматривать язык с открытым исходным кодом в основном с точки зрения лицензий GNU? Или это должно быть только критерием, определяемым сущностью [сообществом, компанией и т. Д.]?

0
ответ дан 1 December 2019 в 03:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: