Учебники

Erlang — основной синтаксис

Чтобы понять основной синтаксис Erlang, давайте сначала рассмотрим простую программу Hello World .

пример

Live Demo

% hello world program
-module(helloworld). 
-export([start/0]). 

start() -> 
   io:fwrite("Hello, world!\n").

Следующие вещи должны быть отмечены о вышеупомянутой программе —

  • Знак% используется для добавления комментариев к программе.

  • Оператор модуля похож на добавление пространства имен, как в любом языке программирования. Итак, здесь мы упоминаем, что этот код будет частью модуля с именем helloworld .

  • Функция экспорта используется для того, чтобы можно было использовать любую функцию, определенную в программе. Мы определяем функцию с именем start, и чтобы использовать функцию start, мы должны использовать оператор экспорта. / 0 означает, что наша функция ‘start’ принимает 0 параметров.

  • Мы наконец определим нашу начальную функцию. Здесь мы используем другой модуль с именем io, который имеет все необходимые функции ввода-вывода в Erlang. Мы использовали функцию fwrite для вывода «Hello World» на консоль.

Знак% используется для добавления комментариев к программе.

Оператор модуля похож на добавление пространства имен, как в любом языке программирования. Итак, здесь мы упоминаем, что этот код будет частью модуля с именем helloworld .

Функция экспорта используется для того, чтобы можно было использовать любую функцию, определенную в программе. Мы определяем функцию с именем start, и чтобы использовать функцию start, мы должны использовать оператор экспорта. / 0 означает, что наша функция ‘start’ принимает 0 параметров.

Мы наконец определим нашу начальную функцию. Здесь мы используем другой модуль с именем io, который имеет все необходимые функции ввода-вывода в Erlang. Мы использовали функцию fwrite для вывода «Hello World» на консоль.

Выход вышеупомянутой программы будет —

Выход

Hello, world!

Общая форма заявления

В Erlang вы видели, что в языке Erlang используются разные символы. Давайте пройдемся по тому, что мы видели в простой программе Hello World —

  • Символ дефиса (-) обычно используется вместе с модулем, оператором импорта и экспорта. Символ дефиса используется для придания значения каждому утверждению соответственно. Так что примеры из программы Hello world показаны в следующей программе —

Символ дефиса (-) обычно используется вместе с модулем, оператором импорта и экспорта. Символ дефиса используется для придания значения каждому утверждению соответственно. Так что примеры из программы Hello world показаны в следующей программе —

-module(helloworld).
-export([start/0]).

Каждое утверждение ограничено символом точки (.) . Каждое утверждение в Erlang должно заканчиваться этим разделителем. Пример из программы Hello world, как показано в следующей программе —

io:fwrite("Hello, world!\n").
  • Символ косой черты (/) используется вместе с функцией для определения количества параметров, которые принимаются функцией.

Символ косой черты (/) используется вместе с функцией для определения количества параметров, которые принимаются функцией.

-export([start/0]).

Модули

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

Определение модуля

Модуль определяется с помощью идентификатора модуля. Общий синтаксис и пример следующие.

Синтаксис

-module(ModuleName)

Имя модуля должно совпадать с именем файла минус расширение .erl . В противном случае загрузка кода не будет работать так, как задумано.

пример

-module(helloworld)

Эти модули будут подробно рассмотрены в следующих главах, это было только для того, чтобы дать вам общее представление о том, как должен быть определен модуль.

Импорт заявления в Эрланге

В Erlang, если кто-то хочет использовать функциональность существующего модуля Erlang, можно использовать оператор импорта. Общая форма заявления на импорт изображена в следующей программе —

пример

-import (modulename, [functionname/parameter]).

Куда,

  • Modulename — это имя модуля, который необходимо импортировать.

  • имя_функции / параметр — функция в модуле, которую необходимо импортировать.

Modulename — это имя модуля, который необходимо импортировать.

имя_функции / параметр — функция в модуле, которую необходимо импортировать.

Давайте изменим способ написания нашей программы hello world для использования оператора import. Пример будет таким, как показано в следующей программе.

пример

% hello world program
-module(helloworld).
-import(io,[fwrite/1]).
-export([start/0]).

start() ->
   fwrite("Hello, world!\n").

В приведенном выше коде мы используем ключевое слово import для импорта библиотеки ‘io’ и, в частности, функцию fwrite . Поэтому теперь, когда мы вызываем функцию fwrite, нам не нужно нигде упоминать имя модуля io .

Ключевые слова в Erlang

Ключевое слово — это зарезервированное слово в Erlang, которое не должно использоваться для каких-либо иных целей, кроме цели, для которой оно предназначено. Ниже приведен список ключевых слов в Erlang.

после а также а также группа
начать BNOT бора BSL
BSR BXOR дело ловить
конд ДИВ конец веселье
если позволять не из
или же OrElse Получать рем
пытаться когда исключающее

Комментарии в Erlang

Комментарии используются для документирования вашего кода. Однострочные комментарии идентифицируются с помощью символа % в любой позиции в строке. Ниже приведен пример для того же —