Функциональное программирование




Функции. Базовые функции


ЛЕКЦИЯ 2.Функции. Базовые функции.

Содержание

Понятие функции.

В математике функция отображает одно множество в другое. Записывается: Y = F (x)

Для х из множества определения (Domain) ставится в соответствие Y из множества значений (range) функции F.

 

 

Можно записать:

  • У функции может быть любое количество аргументов,

    в том числе их может не быть совсем.

  • Функция без аргументов имеет постоянное значение.

  •  

     

     

    Примеры функций:

    abs( -3 ) --> 3 абсолютная величина.

    + ( 2 , 3 ) --> 5 сложение

    union ( ( a , b ), ( c , b ) ) --> ( a , b , c ) объединение множеств.

    количество_букв ( слово ) --> 5

    Типы аргументов и функций.

    Функция в общем случае задает отображение из нескольких множеств в множество значений.

     

     

     

    Можно записать :

    Это функция двух аргументов: первый х принадлежит А, второй у принадлежит В, значение z принадлежит С. В этом случае говорят, что аргументы и значение имеют разные типы.

    Пример:

    1.2 Префиксная нотация.

    В математике принята префиксная нотация, в которой имя функции стоит перед аргументами заключенными в скобках.

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

    f ( x )

    g ( x , y )

    h ( x , g ( y , z ) )

    ( f x )

    ( g x y )

    ( h x ( g y z ) )

    ( + x y )

    ( - x y )

    ( * x ( + x z ) )

    в арифметических выражениях используется инфиксная запись :

    x + y

    x - y

    x * ( x + z )

     

    Достоинства :

  • упрощается синтаксческий анализ выражений, так как по первому

    символу текущего выражения система уже знает, с какой структурой

    имеет дело.

  • появляется возможность записывать функции в виде списков, т.е. данные (списки) и программа (списки) представляются единым образом.
  • Диалог с интерпретатором ЛИСПА.

    Транслятор Лиспа работает как правило в режиме интерпретатора.




    Содержание  Назад  Вперед