Жемчужины функционального программирования: рисуем деревья
22/04/2010 15:02
Жемчужины функционального программирования: рисуем деревья
В этой статье я собираюсь поведать читателям о рисовании деревьев. Нет, не тех деревьев, которые растут из почвы и в которых селятся белки. Сегодня мы будем визуализировать деревья как структуры данных. Данная статья написана по мотивам статьи Andrew Kennedy «Functional Pearls: Drawing Trees» из журнала Journal of Functional Programming, 6(3): 527-534, Cambridge University Press, May 1996 (электронная версия статьи тут), и является, в некотором роде, её переводом.
В оригинале статья написана на английском и использует реализацию на Standart ML. Откровенно говоря, я просто украл всё из вышеупомянутой статьи, английский перевёл на русский (что-то своими словами), Standart ML перевёл на Erlang, что-то выкинул (больше), что-то добавил (меньше). Примеры кода будут даваться как на оригинальном Standart ML, так и на Erlang для того, чтобы любопытный читатель мог узреть разницу.
Суть такова: имея дерево с текстовыми метками каждого узла, назначить им позицию и красиво, эстетично нарисовать дерево на экране.
