LINUX.ORG.RU

История изменений

Исправление www_linux_org_ru, (текущая версия) :

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

ну чувак ты выдал... ладно перечислю, что он может дать:

1. синтаксис (в качестве примера — си по сравнению с брейнфаком, или та же перегрузка операторов для с++ vs. c, или возможность задать свои операторы, как в scala vs. c++)

2. че-то в рантайме, что трудно прикрутить к другому языку (вроде Mark-compact algorithm для сборщика мусора в с++)

3. проверки во время компиляции (например, что элемент коллекции имеет тип int, а не какой-то Object)

4. оптимизации на основе знания типов во время компиляции (можно не выяснять в рантайме, какой у объекта тип, а сразу хреначить по нему нужной, известной во время компиляции, функцией); заодно можно optimize out все лишнее или известное

5. знание того, что компилятор знает (например, того, что поток управления выходит из блока — это с++ vs. старый си)

Исходная версия www_linux_org_ru, :

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

ну чувак ты выдал... ладно перечислю, что он может дать:

1. синтаксис (в качестве примера — си по сравнению с брейнфаком, или та же перегрузка операторов для с++ vs. c, или возможность задать свои операторы, как в scala vs. c++)

2. че-то в рантайме, что трудно прикрутить к другому языку (вроде Mark-compact algorithm для сборщика мусора в с++)

3. проверки во время компиляции (например, что элемент коллекции имеет тип int, а не какой-то Object)

4. оптимизации на основе знания типов во время компиляции (можно не выяснять в рантайме, какой у объекта тип, а сразу хреначить по нему нужной, известной во время компиляции, функцией); заодно можно optimize out все лишнее или известное