Какие инструменты создаются с помощью себя? [закрытый]

мой код выглядит так просто и работает

class Player{
var avplayer : AVPlayer?;

function play(){ 
    self.avplayer = AVPlayer(url: url)
    self.avplayer?.volume = 1.0
    self.avplayer?.play()
}

}
11
задан 4 revs, 3 users 100% 19 September 2014 в 14:28
поделиться

32 ответа

Bjarne Stroustrup упомянул в Дизайне и Эволюции C++, что первый компилятор C++ был записан в C++.

Я только что заметил, что это - также вопрос в его FAQ:

Первый компилятор C++ (Cfront) был записан в C++. Для создания этого я сначала использовал C для записи "C с Классами"-to-C препроцессор. "C с Классами" был диалект C, который стал непосредственным предком к C++. Тот препроцессор, переведенный "C с Классами" конструкции (такие как классы и конструкторы) в C. Это был традиционный препроцессор, который не понял весь язык, оставил большую часть проверки типа компилятор C, чтобы сделать и перевел отдельные конструкции без полного ведома. Я затем записал первую версию Cfront в "C с Классами".

9
ответ дан 3 December 2019 в 00:43
поделиться

Схема Ура Kragen Sitaker является прекрасным примером маленького нетривиального компилятора, записанного сам по себе. Та страница связывается с несколькими более хорошими источниками в той вене.

0
ответ дан 3 December 2019 в 00:43
поделиться

Старый компилятор C/C++ Watcom был создан с помощью себя.

0
ответ дан 3 December 2019 в 00:43
поделиться

Я дал ответу Smalltalk-80 рост. Лучший, самый изящный пример я могу думать. Вопрос также напоминает мне о немного связанной проблеме, которая раньше была популярна: запишите программу что выводы саму. Не тот же уровень начальной загрузки, но забавного небольшого программирования озадачивает для Вашего развлечения. Возможно, не возможный на всех языках?

0
ответ дан 3 December 2019 в 00:43
поделиться

Ada и Forth

0
ответ дан 3 December 2019 в 00:43
поделиться

Естественно команда Jetbrains использует свою собственную идею IDE IntelliJ разработать этот IDE.

Я предполагаю, что это верно для большинства поставщиков IDE.

0
ответ дан 3 December 2019 в 00:43
поделиться

Не совсем, что Вы просите, но вся среда разработки для Оборота http://www.runrev.com создается с помощью самого Оборота и источника (за исключением мелких деталей, которые осуществляют лицензию) полностью выставляется в исходной форме. Таким образом, если Вам не нравится способ, которым реализована dev среда, можно изменить его. Найдите ошибку, зафиксируйте ее. Можно также легко создать дополнительные средства разработки и интегрировать их.

0
ответ дан 3 December 2019 в 00:43
поделиться

Насколько я знаю, создавая EMACS из источника, весь код ELISP загружается. Я нашел это довольно примечательным.

0
ответ дан 3 December 2019 в 00:43
поделиться

AFAIK делает саму сборку OpenJDK сначала с установленным Java и впоследствии с собой.

0
ответ дан 3 December 2019 в 00:43
поделиться

Я создаю основанный на IDE генератор кода, и я использую его для создания себя. Если факт, как Stroustrup сделал, я сначала создаю действительную модель генератора и использую препроцессор для создания заключительного кода C++ для компиляции. После того как у меня есть хорошая рабочая версия IDE, я начну использовать его для создания дальнейших версий из себя.

Это похоже на предоставление нового размера к значению "рекурсивного программирования"!

0
ответ дан 3 December 2019 в 00:43
поделиться

Я был поражен с JSLint

Короче говоря это было описано как JavaScript "компилятор" с помощью JavaScript.

0
ответ дан 3 December 2019 в 00:43
поделиться

Maven2 создается с помощью Maven2. Хорошо, это не создало (т.е. записало), использование себя, поскольку это - инструмент для создания (т.е. компиляция) проекта, но это использует свой собственный код для компиляции...

0
ответ дан 3 December 2019 в 00:43
поделиться

Это довольно типично, чтобы записать компилятор языков на его собственном языке. Это называют, саморазмещая или загружаясь.

1
ответ дан 3 December 2019 в 00:43
поделиться

Eclipse IDE обычно создается и разработал использование Eclipse IDE.

1
ответ дан 3 December 2019 в 00:43
поделиться

Oracle Application Express является средством разработки веб-приложения, которое создается сам по себе.

1
ответ дан 3 December 2019 в 00:43
поделиться

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

  • определенные языки программирования, особенно скомпилированные
  • IDE
  • текстовые редакторы
  • системы управления версиями
  • средства отслеживания ошибки
  • системы сборки

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

2
ответ дан 3 December 2019 в 00:43
поделиться

Для AmigaOS было третье лицо Основной интерпретатор (не помните имя), для которого Вы могли позже купить компилятор. Компилятор был поставлен как источник, таким образом, необходимо было использовать интерпретатор для выполнения компилятора для компиляции себя...

Процитировать Kent Beck:

... это может немного походить на проводящую операцию головного мозга на себе.

2
ответ дан 3 December 2019 в 00:43
поделиться

tcc является другой компилятор C самохостинга для x86 и ARM. Его требование известности является, ну, в общем, крошечным (100k или так для препроцессора, компилятора, ассемблера и компоновщика).

2
ответ дан 3 December 2019 в 00:43
поделиться

ghc, компилятор Haskell, главным образом записан в Haskell.

2
ответ дан 3 December 2019 в 00:43
поделиться

Мы используем для разработки использования RealBasic. IDE записан сам по себе, или таким образом, я был выводом для веры.

2
ответ дан 3 December 2019 в 00:43
поделиться

Компилятор Java Sun долго писался в Java. Однако недавняя работа пишет JIT-компилятор в Java также. Это - компонент JVM, который преобразовывает байт-код Java в собственные инструкции по процессору.

3
ответ дан 3 December 2019 в 00:43
поделиться

Писк является реализацией Smalltalk-80, записанной сам по себе.

даже его виртуальная машина записана полностью в Smalltalk, помогающем отладить, проанализировать, и измениться.

3
ответ дан 3 December 2019 в 00:43
поделиться

Большому количеству людей нравится смотреть на то, как Lisp может быть реализован в Lisp.

3
ответ дан 3 December 2019 в 00:43
поделиться

Вот другой пример: компилятор Mono C# сам размещающий - т.е. он пишется в C# и используется для компиляции себя.

Собака fooding обращается к более общей практике компании с помощью ее собственного продукта внутренне, особенно во время ее разработки.

4
ответ дан 3 December 2019 в 00:43
поделиться

Когда gcc (компилятор C Гну http://gcc.gnu.org/) не был доступен широко, необходимо было скомпилировать его из источника, компилируя stage1 компилятор, затем скомпилировать stage2 с stage1, пока у Вас нет своего заключительного компилятора. Я предполагаю, что это должно быть то же сегодня.

4
ответ дан 3 December 2019 в 00:43
поделиться

Кроме того, существует pypy проект, который обеспечивает интерпретатор Python, записанный в Python.

5
ответ дан 3 December 2019 в 00:43
поделиться

В общем разговор, компиляторы C обычно пишутся в C... *, отклоняют ядра, компилируются на *, отклоняют, и т.д.

5
ответ дан 3 December 2019 в 00:43
поделиться

Это вне темы, но строго говоря, это - пример инструмента, который создает себя.

Каменная засыпка - 3-я машина разработки прототипа с открытым исходным кодом, которая недавно родила к "ее первой полной рабочей реплицированной копии".

Я люблю этот вид материала.

8
ответ дан 3 December 2019 в 00:43
поделиться

Интересно, сами компиляторы VB.NET & C# записаны в неуправляемом C++ (ведущий к Футболке команды C++: "Мой компилятор, скомпилированный Ваш"). Команда C# надеется иметь полностью managed-C#, разместил компилятор C# для VS2010.

11
ответ дан 3 December 2019 в 00:43
поделиться

Visual Studio и Сервер Основы Команды создают себя. Это назвало dogfooding, термин, который, не происходя в Microsoft, это, конечно, любит

1
ответ дан 3 December 2019 в 00:43
поделиться
Другие вопросы по тегам:

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