ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] Interpreter



On Tue, 6 Apr 1999, Андрей Новиков wrote:
> Кто   может   сказать   где   за  неделю   научиться  писать
> интерпретаторы? Нужно постичь хотя бы общие концепции.

   На вопрос "где" ответ прост - на своем компьютере. На вопрос "как" ответ
должен быть посложнее. Проблема с ответом заключается в том, что из вопроса
непонятно, какой степени крутизны предполагается интерпретатор. Если надо
Visual Basic за неделю перенести на SCO, то я растеряюсь, что посоветовать.
   Ну хорошо, в самом общем виде все просто. Нужно изучить программу типа
lex, которая разберет входной поток на лексемы, потом нужно что-то типа
yacc, который поток уже лексем разберет на более крупные объекты, скажем,
вызовы процедур или описания классов. И эти более крупные объекты
реализовать самому.
   Ныне все языки имеют свои версии lex/yacc, так что начинать надо с
чего-нибудь привычного, кто привык к перлу - писать интерпретаторы на перле
(для обучения).
   Ну там еще есть проблемы с реализацией, потому как, скажем, SQL
реализовать не сложно - сложно эту реализацию оптимизировать по скорости и
памяти.

   А что за задача такая, что для нее именно интерпретатор нужен? Попроще
ничего не подойдет?

> С уважением, Андрей Новиков
> 
> ------------------------------------------------------------
> Всероссийский Клуб Вебмастеров        http://www.webclub.ru/
> По официальным вопросам пишите     mailto:webclub@webclub.ru

Oleg.
---- 
   Oleg Broytmann     National Research Surgery Centre     phd2@email.com
           Programmers don't die, they just GOSUB without RETURN.

=============================================================================
=               Apache-Talk@lists.lexa.ru mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =



 




Copyright © Lexa Software, 1996-2009.