Max Kirillov (max630) wrote,
Max Kirillov
max630

объекты или тексты

http://www.cs.kent.ac.uk/people/staff/dat/miranda/wadler87.pdf
перевод http://kmmbvnr.livejournal.com/62197.html?style=mine

Статья на тему "что круче - лисп или хаскель". Там правда не хаскель, а миранда, но мне она неизвестна, а то что про неё написано от хаскеля ничем не отличается. Дальше буду писать Haskell

Автор агитирует за Haskell, показывая нам его систему типов, pattern matching и прочие красоты. На мой вкус, немного фанатирует. Тот же pattern matching на лиспе делается на раз.

Немножко обобщая, выбор имеется такой: что является единицей оперирования в языке.

Либо это объект - чёрный ящик, из которого торчат только входы и выходы. ФП с closures и ленивыми значениями считается как частный случай таких объектов (кому надо - :-b). Программист делает кирпичики-объекты, из которых на более высоком уровне складывает логику программы.

Либо это текст - описание какого-то участка программы. Он может быть вычислен как комбинация из кирпичиков, и сам завёрнут в кирпичик - тогда ситуация сводится к первой, а может быть прочитан и видоизменён с учётом внешнего контекста, или просто нетривиально обработан - и тогда всё намного интереснее.

Вообще, для меня на данном этапе этот вопрос - что же лучше - фундаментален и непонятен. С одной стороны, все или почти все фичи высокоуровневыевых языков с лёгкостью релизуются через манипуляции с текстом. С другой - чтобы сдизайнить работающую и универсальную фичу, надо быть немножко гением, а "большинство из нас не гении, особенно когда времени мало" (c). С третьей - кто не бился головий об клавиатуру, точно зная, что ты хочешь сделать - и не имея в языке возможности это сделать?

Идеально, наверное, иметь богатый набор уже готовых примитивов, но когда надо - возможность сделать новый. И сделать это безопасно насколько возможно. А насколько невозможно - не делать.

PS: http://thesz.livejournal.com/873177.html?style=mine Там, конечно, люди покруче, но я тоже пытался сделать объекты перебрасывающиеся событиями - и неоднократно упирался в их тупость.
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 4 comments