Составители:
Рубрика:
14
ские соотношения, при помощи которых программа может решить задачу,
называются декларативными языками. Программы на таких языках объявля-
ют, какие результаты дадут те или иные действия. Программист предостав-
ляет самой системе разобраться в совокупности способов решения задачи.
Для тех, кто привык пользоваться императивным языком, декларатив-
ные языки кажутся почти лишенными какой-
либо строгости. Несмотря на
это, часто программа решения конкретной задачи, составленная на деклара-
тивном языке, требует значительно меньше операторов, чем при использова-
нии императивных языков. Основная часть программы на императивном
языке предназначена для управления шагами программы, обрабатывающими
данные. На Прологе, наоборот, большая часть управления программой неяв-
но содержится в конструкциях языка
или оказывается объявленной в декла-
ративной форме.
Программисты, имеющие опыт работы на императивных языках, ино-
гда теряются, сталкиваясь с полным отсутствием средств управления про-
граммой. Люди, никогда раньше не занимавшиеся программированием, мо-
гут освоить декларативные языки быстрее, чем программисты, знакомые с
императивными языками. Если вы никогда не программировали, то не
ду-
майте, что изучение Турбо-Пролога будет сложным из-за неумения програм-
мировать на языках типа Си, Бейсик или Паскаль. Если вы программировали
на некоторых императивных языках, то не думайте, что вы сразу же сможете
освоить Турбо-Пролог, используя ранее полученные навыки. Необходимо
научиться формулировать логические соотношения, описывающие задачу, а
программа на Турбо-Прологе выполнит все необходимые действия.
2.2.1 Логика предикатов
Как вы теперь знаете, Турбо-Пролог - это декларативный язык, про-
граммы на котором содержат объявления логических взаимосвязей, необхо-
димых для решения задачи. Обозначения, используемые в Турбо-Прологе
для выражения этих логических взаимосвязей, унаследованы из логики пре-
дикатов.
В логике предикатов рассматриваются отношения между утвержде-
ниями и объектами. Не пугайтесь термина
"логика предикатов". По всей ве-
роятности основные понятия (а может быть и терминология) логики преди-
катов вам уже знакомы.
Например, рассмотрим предложение
Мэри любит яблоки
Прочитав это предложение, вы узнаете, что имеется факт, утвер-
ждающий, что Мэри любит яблоки. Добавим еще одно предложение к тому,
что вы уже знаете
:
Бет любит то же самое, что и Мэри
Используя эти два предложения, вы можете придти к заключению, что
Бет тоже любит яблоки. Получая это заключение, вы пользовались упро-
ские соотношения, при помощи которых программа может решить задачу, называются декларативными языками. Программы на таких языках объявля- ют, какие результаты дадут те или иные действия. Программист предостав- ляет самой системе разобраться в совокупности способов решения задачи. Для тех, кто привык пользоваться императивным языком, декларатив- ные языки кажутся почти лишенными какой-либо строгости. Несмотря на это, часто программа решения конкретной задачи, составленная на деклара- тивном языке, требует значительно меньше операторов, чем при использова- нии императивных языков. Основная часть программы на императивном языке предназначена для управления шагами программы, обрабатывающими данные. На Прологе, наоборот, большая часть управления программой неяв- но содержится в конструкциях языка или оказывается объявленной в декла- ративной форме. Программисты, имеющие опыт работы на императивных языках, ино- гда теряются, сталкиваясь с полным отсутствием средств управления про- граммой. Люди, никогда раньше не занимавшиеся программированием, мо- гут освоить декларативные языки быстрее, чем программисты, знакомые с императивными языками. Если вы никогда не программировали, то не ду- майте, что изучение Турбо-Пролога будет сложным из-за неумения програм- мировать на языках типа Си, Бейсик или Паскаль. Если вы программировали на некоторых императивных языках, то не думайте, что вы сразу же сможете освоить Турбо-Пролог, используя ранее полученные навыки. Необходимо научиться формулировать логические соотношения, описывающие задачу, а программа на Турбо-Прологе выполнит все необходимые действия. 2.2.1 Логика предикатов Как вы теперь знаете, Турбо-Пролог - это декларативный язык, про- граммы на котором содержат объявления логических взаимосвязей, необхо- димых для решения задачи. Обозначения, используемые в Турбо-Прологе для выражения этих логических взаимосвязей, унаследованы из логики пре- дикатов. В логике предикатов рассматриваются отношения между утвержде- ниями и объектами. Не пугайтесь термина "логика предикатов". По всей ве- роятности основные понятия (а может быть и терминология) логики преди- катов вам уже знакомы. Например, рассмотрим предложение Мэри любит яблоки Прочитав это предложение, вы узнаете, что имеется факт, утвер- ждающий, что Мэри любит яблоки. Добавим еще одно предложение к тому, что вы уже знаете: Бет любит то же самое, что и Мэри Используя эти два предложения, вы можете придти к заключению, что Бет тоже любит яблоки. Получая это заключение, вы пользовались упро- 14
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »