Lisp: відмінності між версіями

Матеріал з Файна Меморії
Перейти до навігації Перейти до пошуку
Surikoff (обговорення | внесок)
мНемає опису редагування
Surikoff (обговорення | внесок)
мНемає опису редагування
Рядок 4: Рядок 4:


===Синтаксис===
===Синтаксис===
Мова має дуже специфічний синтаксис:
Мова має дуже специфічний синтаксис:<br />
<br />
 
(defun fibonacci (n)
(defun fibonacci (n)
     (loop repeat n  
     (loop repeat n  

Версія за 19:44, 16 квітня 2011

Lisp (LISt Processing, мова обробки списків, Lots of Irritating Superfluous Parentheses) - упорота функціональна мова програмування, створений в минулому столітті. Насправді, Лісп - сімейство мов програмуваня, яке має дохуя діалектів, найвідомішим з яких є Common Lisp. Трохи більше ніж повністю складається з смайлів, списків і рекурсії. В основному на Ліспі пишуть лінуксоїди, бо вони навчились бачити функціональність програми, а не фапати на її інтерфейс.

Короткий огляд

Синтаксис

Мова має дуже специфічний синтаксис:

(defun fibonacci (n)

   (loop repeat n 
         for a = 1 then b 
         and b = 1 then (+ a b)
         finally (return a)))


Як ви вже зрозуміли, синтаксис мови складається з смайлів. З однієї сторони це добре, бо уже сприяє вкладеності команд, але з іншої сторони це буває дуже незручно. Особливо у великих програмах. Існують, звісно ж, спеціальні текстові редактори, які допомагають Ліспоїдам розуміти код, який вони тільки що написали, але це не змінює ситуацію.[1]

Переваги

  • Макроси!!1
  • Списки!!!1
  • Кількість коду приблизно як на Сі, але код на Ліспі, на відміну від Сюшного коду, мавпа не зрозуміє.

Недоліки

  • Як вже було сказано, йобнутий синтаксис.
  • Функціональність - не найпопулярніша на ринку парадигма.
  • Відсутність нормальних реалізацій для вєнди.


Голєрєя

Посилання

Примітки

  1. ↑ Ось тут і вада функціональних мов - їх синтаксис кидається з крайності в крайність: або без дужок, як в Haskell, або з дуже великою кількістю дужок, як в Lisp.