English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Erlang 기본 문법

Erlang의 기본 문법을 이해하기 위해 먼저 간단한Hello World프로그램

예제

% hello world 프로그램
-module(helloworld). 
-export([start/0]). 
start() -> 
   io:fwrite("Hello, world!\n").

위 프로그램에 대해 주의해야 할 몇 가지 점이 있습니다:

  • % 기호는 프로그램에 주석을 추가하는 데 사용됩니다.

  • module 문은 어떤 프로그래밍 언어에서도 명령 공간을 추가하는 것과 같습니다. 여기서 언급해야 할 것은 이 코드가 helloworld 모듈의 일부로 되어 있다는 것입니다.

  • export 함수를 사용하면 프로그램에서 정의된 모든 함수를 사용할 수 있습니다. 우리는 start라는 함수를 정의하고 있으며, start 함수를 사용하려면 export 문을 사용해야 합니다./0은 우리의 함수 'start'가 0개의 파라미터를 받는다는 것을 의미합니다.

  • 우리는 마침내 start 함수를 정의했습니다. 여기서는 또 다른 io 모듈을 사용했습니다. 이 모듈은 Erlang에서 모든 필요한 입력 및 출력 함수를 가지고 있습니다. 우리는 fwrite 함수를 사용하여 "Hello World"를 컨솔에 출력했습니다.

위 프로그램의 출력은 다음과 같습니다-

출력

Hello, world!

declaration general form

Erlang 언어에서는 다양한 기호를 사용하는 것을 본 것을 보셨습니다. 간단한 Hello World 프로그램에서 본 것을 살펴보겠습니다-

  • hyphen(–)일반적으로 모듈, import 및 export 문과 함께 사용됩니다. 마이너스 기호는 각 문장에 의미를 부여하는 데 사용됩니다. 따라서 Hello world 프로그램의 예제는 다음과 같은 프로그램에서 표시됩니다-

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

각 문장은 점으로 끝납니다(.)symbol delimiter. Erlang의 각 문장은 이 delimiter로 끝날 필요가 있습니다. Hello world 프로그램의 예제는 다음과 같습니다:

io:fwrite("Hello, world!\n").
  • slant(/)기호는 함수와 함께 사용되어 함수가 받을 수 있는 파라미터 수를 정의합니다.

-export([start/0]).

모듈

Erlang에서 모든 코드는 모듈로 나뉩니다. 모듈은 일련의 속성과 함수 선언으로 구성됩니다. 다른 프로그래밍 언어의 이름 공간 개념과 마찬가지로, 이 이름 공간은 다른 코드 단위를 논리적으로 분리하는 데 사용됩니다.

모듈 정의

모듈 식별자를 사용하여 모듈을 정의합니다. 일반 문법과 예제는 다음과 같습니다.

문법

-module(ModuleName)

ModuleName필요는 동일한 파일 이름에서 확장자를 제거한 것입니다..erl그렇지 않으면 코드 로드가 예상대로 진행되지 않을 수 있습니다.

예제

-module(helloworld)

이 모듈들은 이후 장에서 자세히 설명할 것입니다. 이는 모듈 정의 방법에 대한 기본적인 이해를 제공하기 위해만 사용됩니다.

Erlang의 입력 및 출력 선언

Erlang에서는 기존 Erlang 모듈의 기능을 사용하려면 import 문을 사용할 수 있습니다. 다음 프로그램은 import 문의 일반 형식을 설명합니다.-

예제

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

어디서

  • 모듈 이름− 필요로 하는 모듈의 이름.

  • 함수 이름/파라미터 − 모듈에서 필요한 기능.

hello world 프로그램을 import 문을 사용하여 작성하는 방법을 변경해 보겠습니다. 이 예제는 다음 프로그램에서 표시됩니다.

예제

% hello world 프로그램
-module(helloworld).
-import(io,[fwrite/1]).
-export([start/0]).
start() ->
   fwrite("Hello, world!\n").

위의 코드에서는 import 키워드를 사용하여 라이브러리 "io"를 가져오았습니다. 특히fwrite함수. 따라서 지금부터 fwrite 함수를 호출할 때마다 어디서든 언급하지 않아도 됩니다.io모듈 이름.

Erlang의 키워드

키워드는 Erlang에서의 보존된 단어로, 예약된 목적 외에 다른 목적에 사용할 수 없습니다. Erlang의 키워드 목록은 다음과 같습니다.

afterandandalsoband
beginbnotborbsl
bsrbxorcasecatch
conddivendfun
ifletnotof
ororelsereceiverem
trywhenxor

Erlang 주석

주석은 코드를 기록하는 데 사용됩니다. 단일 줄 주석은 행의 어느 위치에서든 % 기호를 사용하여 표시할 수 있습니다. 아래는 같은 Erlang 주석입니다.-

예제

% hello world 프로그램
-module(helloworld).
% 함수를 가져오기, io 모듈 가져오기.
-import(io,[fwrite/1]).
% 함수를 내보내기, 시작 함수에 접근할 수 있도록 보장.
-export([start/0]).
start() ->
   fwrite("Hello, world!\n").