noname00.pas
Расскажика мне, что в паскале взято от математики? Сначала ознакомься с функциональными языками, прежде чем утверждать что
Цитата:
Паскаль - это синтез кодирования и математики.
|
Лучше всего начинать с Haskell.
Добавлено:
Вот пример быстрой сортировки, прям со
страницы о Haskell:
Код:

1 *qsort [] * * = []
2 *qsort (x:xs) = qsort elts_less_than_x ++ [x] ++ qsort elts_greater_or_equal_x
3 * * * * *where
4 * * * * * * *elts_less_than_x * = [y | y <- xs, y < x]
5 * * * * * * *elts_greater_or_equal_x = [y | y <- xs, y >= x]
По сути, это _математичесская_ запись этого алгоритма.
Объяснение на пальцах, по строкам:
Если передали пустой список, то результатом будет тоже пустой список.
Если нам передали список, где первый элемент x, а все остальные xs, то сначала сортируем elts_less_than_x, добавляем в конец списка x и добавляем результат сортировки elts_greater_or_equal_x.
Говорит нам, что в этой функции:
elts_less_than_x (в дословном переводе -- элементы меньшие чем x), это множество элементов y принадлежащих списку xs, и меньших x.
Аналогично elst_greater_or_equal_x (дословно: элементы большие или равные x) это множество элементов y входящих в список xs и большн или равных x.
Синтаксис на первых порах немного кажется заверчен, но самом деле не сложен. В сравнении с
этим вариантом на паскале, он выглядит намного более понятно, и ближе к математичесскому описанию этого алгоритма.
Добавлено:
Если надумаешь продолжать эту дискуссию, то открой новый тред -- мы уже заметно отшли от темы. И сошлись на эту ветку, как на начало дисскусии.