Обсуждение:Интерпретатор
Проект «Информационные технологии» (уровень 3, важность для проекта высшая) Эта статья тематически связана с вики-проектом «Информационные технологии», цель которого — создание и улучшение статей по темам, связанным с информационными технологиями. Вы можете её отредактировать, а также присоединиться к проекту, принять участие в его обсуждении и поработать над требуемыми статьями. Уровень статьи по шкале оценок проекта: в развитии
Важность статьи для проекта «Информационные технологии»: высшая |
определение Править
Интерпрета́тор (языка программирования) — программа для интерпрета́ции (выполнения вычислений по заданным алгоритмам) программы по её исходному коду.
Не совсем корректно дано определение. В определении нельзя использовать определяемое или однокоренное к нему слово, в данном случае слово "интерпретация".81.1.243.193 09:32, 16 сентября 2008 (UTC)Ответить[ответить]
- Я переделал определение в соответствии с АИ. Вас устраивает? -- AVBtalk 16:49, 16 сентября 2008 (UTC)Ответить[ответить]
- Сейчас совсем другое дело. 81.1.243.193 06:20, 17 сентября 2008 (UTC)Ответить[ответить]
Уникальность Forth-а Править
Уникальным является язык Forth, который способен работать как в режиме интерпретации, так и компиляции входных данных, позволяя переключаться между этими режимами в произвольный момент, как во время трансляции исходного кода, так и во время работы программ.
— вообще-то уникальность сомнительная, поскольку режимы интерпретации и компиляции есть во многих интерпретаторах, особенно интерактивных. Взять, к примеру, Бейсик: вы пишете
10 PRINT "Hello, world!"
и оператор добавляется в программу (режим компиляции), пишете
PRINT "Hello, world!"
и он сразу же выполняется (режим интерпретации) и, опять-таки, произвольно. Аналогичные примеры, думаю, можно найти и для Lisp и Smalltalk. То, что режимы интерпретации и компиляции Forth различаются значением всего одной переменной — особенность внешнего интерпретатора языка, не более того. 81.30.81.200 11:52, 10 октября 2008 (UTC)Ответить[ответить]
- Не всё так просто. Во-первых, в бейсике невозможно заменить обработчик ввода пользователя своим обработчиком - только если только написать свой интерпретатор (то есть ввести ещё один уровень интерпретации). А в форте обработка ввода является регулярной (заменяемой) компонентой, работающей наравне с (другими) "пользовательскими" процедурами ("словами"). Во-вторых, программа на бейсике не может обратиться ко встроенному обработчику ввода. Насчёт лиспа - я с ним плохо знаком, поэтому не в курсе, насколько там процедура обработка ввода равноправна (или нет) с другими списками. -- AVBtalk 23:05, 22 октября 2008 (UTC)Ответить[ответить]
PHP/Python/Perl and byte-code Править
PHP, Python and Perl doesn't create any byte-code. RTFM 77.123.57.80 01:22, 9 ноября 2008 (UTC) CSОтветить[ответить]
- May be. May you give us url for mentioned RTFM, which we should read? -- AVBtalk 01:45, 9 ноября 2008 (UTC)Ответить[ответить]
Недостатки интерпретатора Править
Почему внесён пункт
- Практически отсутствует оптимизация кода, что приводит к дополнительным потерям в скорости работы интерпретируемых программ
? Код на скриптовых языках, которые выполняются через интерпретатор, вполне поддаётся оптимизации. Если кто-то не хочет его оптимизировать, то это не недостаток интерпретатора, а недостаток программиста. Такие программисты и код на компилируемых языках не будут оптимизировать. Предлагаю убрать этот пункт. --91.221.60.102 05:57, 15 февраля 2012 (UTC)Ответить[ответить]