Ћекции.ќрг


ѕоиск:




 атегории:

јстрономи€
Ѕиологи€
√еографи€
ƒругие €зыки
»нтернет
»нформатика
»стори€
 ультура
Ћитература
Ћогика
ћатематика
ћедицина
ћеханика
ќхрана труда
ѕедагогика
ѕолитика
ѕраво
ѕсихологи€
–елиги€
–иторика
—оциологи€
—порт
—троительство
“ехнологи€
“ранспорт
‘изика
‘илософи€
‘инансы
’ими€
Ёкологи€
Ёкономика
Ёлектроника

 

 

 

 


ћетапрограммы и метаинтерпретаторы




Me та программой называетс€ программа, котора€ принимает в качестве данных другие программы. ѕримерами метапрограмм €вл€ютс€ интерпретаторы и компил€≠торы. ќсобой разновидностью метапрограмм €вл€ютс€ метаинтерпретаторы Ч ин≠терпретаторы дл€ некоторого €зыка, написанные на том же €зыке. “аким образом, метаинтерпретатором Prolog €вл€етс€ интерпретатор €зыка Prolog, который сам на≠писан на €зыке Prolog.

Ѕлагодар€ наличию в €зыке Prolog возможностей по манипулированию символа≠ми он €вл€етс€ мощным €зыком, который может успешно примен€тьс€ дл€ мета-программировани€. ѕоэтому он часто служит в качестве €зыка реализации дл€ дру≠гих €зыков. ћногие специалисты отмечают, что Prolog особенно хорошо подходит дл€ использовани€: в качестве €зыка быстрой разработки прототипов в тех ситуаци≠€х, когда требуетс€ как можно быстрее воплотить в жизнь новые идеи. Ёто особенно важно в тех случа€х, когда возникает необходимость разработать новый €зык, осу≠ществить на практике новый принцип программировани€ или опробовать вновь соз≠данную архитектуру программы. Ётот €зык позвол€ет быстро реализовывать новые идеи и проводить эксперименты. ѕри разработке прототипов основное внимание уде≠л€етс€ тому, чтобы новые идеи оформл€лись в виде экспериментального образца максимально быстро и с наименьшими затратами, благодар€ чему можно было бы


немедленно приступать к их проверке. — другой стороны, особое значение повыше≠нию эффективности такой реализации не придаетс€. ѕосле проверки первоначально≠го замысла прототип может быть реализован повторно, дл€ чего можно воспользо≠ватьс€ другим, более эффективным €зыком программировани€. » даже если потре≠буетс€ отказатьс€ от прототипа на €зыке Prolog в пользу другого €зыка, все равно усили€, затраченные на разработку этого прототипа, не будут напрасными, посколь≠ку он обычно позвол€ет ускорить творческий этап разработки.

¬ предыдущих главах этой книги уже встречались метапрограммы; в качестве примера можно указать интерпретаторы правил вывода (см. главы 15 и 16). ќни об≠рабатывают €зык правил вывода, который фактически €вл€етс€ €зыком программи≠ровани€, хот€ программы, написанные на нем, обычно называют базами знаний из-за их специализированного содержани€. ≈ще одним примером €вл€етс€ интерпрета≠тор дл€ гипотез на €зыке ILP (см. главу 19). ¬ этой главе приведены перечисленные ниже дополнительные примеры, которые позвол€ют показать, насколько легко могут быть написаны метапрограммы на €зыке Prolog,

Х —оздание метаинтерпретаторов Prolog.

Х ѕрименение метода обобщени€ на основе объ€снени€.

Х –еализаци€ на €зыке Prolog других принципов программировани€, в частности, объектно-ориентир о ванного программировани€ и программировани€, управл€е≠мого шаблонами.





ѕоделитьс€ с друзь€ми:


ƒата добавлени€: 2015-10-01; ћы поможем в написании ваших работ!; просмотров: 364 | Ќарушение авторских прав


ѕоиск на сайте:

Ћучшие изречени€:

“ак просто быть добрым - нужно только представить себ€ на месте другого человека прежде, чем начать его судить. © ћарлен ƒитрих
==> читать все изречени€...

1663 - | 1484 -


© 2015-2024 lektsii.org -  онтакты - ѕоследнее добавление

√ен: 0.012 с.