Чтобы понять основной синтаксис Erlang, давайте сначала рассмотрим простую программу Hello World .
пример
% 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
Комментарии используются для документирования вашего кода. Однострочные комментарии идентифицируются с помощью символа % в любой позиции в строке. Ниже приведен пример для того же —