English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
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!
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 모듈의 기능을 사용하려면 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의 키워드 목록은 다음과 같습니다.
after | and | andalso | band |
begin | bnot | bor | bsl |
bsr | bxor | case | catch |
cond | div | end | fun |
if | let | not | of |
or | orelse | receive | rem |
try | when | xor |
주석은 코드를 기록하는 데 사용됩니다. 단일 줄 주석은 행의 어느 위치에서든 % 기호를 사용하여 표시할 수 있습니다. 아래는 같은 Erlang 주석입니다.-
% hello world 프로그램 -module(helloworld). % 함수를 가져오기, io 모듈 가져오기. -import(io,[fwrite/1]). % 함수를 내보내기, 시작 함수에 접근할 수 있도록 보장. -export([start/0]). start() -> fwrite("Hello, world!\n").