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

Re: kylix 2





Denis Dzyubenko wrote:

On Wed Jan 08, 2003 at 12:00:24 +0300, Victor Wagner wrote:

выучить новый язык трудно? неужели так трудно запомнить что вместо if blabla begin asd; end нужно использовать if {blabla} {asd} ?
Все перечисленные языки (pascal, c++, tcl, python (немного)) являются
языками одного типа - все они структурные (или как называется антипод
функциональным языкам (?) и у них синтаксис различается незначительно.

VW> А вот нифига. Tcl явно был разработан под влиянием Lisp. Python и Perl
в принципе да, tcl функциональный язык - каждый оператор на самом деле
является функцией. Если не задумываться об этом, все таки синтаксис у tcl и например Си похож


В С++ тоже каждый оператор является функцией... Но он все равно больше "структурный", чем функциональный.

Знаете, тут применима, в принципе, та же идея, что и в споре об определении, что такое программа (помните? :-).

Функциональность или "структурность" языков программирования - это чистые абстракции. Без функциональности (да-да, именно: я имею в виду ориентированность на функциональное программирование) любой язык программирования становится языком структуризации данных (как, например, XML, SGML, HTML, TeX, ...). То есть, по крайней мере, функциональными языками являются все языки программирования, как TCL, Python, C, C++, Lisp, JavaScript: они включают в себе такую возможность - программирование функций.

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

Вероятно, вопрос заключается в том, на что данный язык более сильно ориентирован, и тут уже можно долго и упорно спорить, ибо слишком сложным оказывается сравнение, например, C++ и Python - который из них "более структурный". Хотя, с другой стороны, мне кажется довольно очевидным, что, например, C является более ориентированным (читай: припособленным) на функциональное программирование, чем, скажем, C++ или Python.

--
Andrei Sosnin
http://zzx.ath.cx

 <!-- : it all depends on your vision : -->



Reply to: