02. 루아 형식 익히기

1. Getting Started [ 시작 ] 루아 / 공부
2018. 3. 18. 23:34

번역하기 전용뷰어 보기



1.1 Chunks
1.1 청크
1.2 Some Lexical Conventions
1.2 몇 어휘의 관례들
1.3 Global Variables
1.3 전역변수
1.4 The Stand-Alone Interpreter 
1.4 독립형 인터프리터
이 과의 첫 내용은
To keep with the tradition, our first program in Lua just prints "Hello World";
전통을 따르기 위해, 루아에서 우리의 첫 프로그램은 그냥 "Hello World" 를 출력하는 것 입니다.


이다. 간단하게 print("Hello World") 가 작성된 루아 파일을 인터프리터로 실행시키는 것.
그다음 내용은 팩토리얼 함수를 예시로 보여준다.

--defines a factorial function.


function fact(n)
if n == 0 then
  return 1
else
  return n * fact(n-1)
end
end


print("enter a number:")
a = io.read("*number")
print(fact(a))



그 외 내용은 만든 파일을 실행시키는 방법과 독립형 인터프리터를 추천한다는 내용이 쓰여있다.
----------------------------- Chunks [청크]
그 다음 내용은 Chunks, 청크에 대한 내용을 설명하는 파트 이다.

Each piece of code that Lua executes, such as a file or a single line in interactive mode, is called a chunk.
A chunk is simply a sequence of commands or statements.
 
대화형 모드에서 파일 또는 한 줄 같은 루아가 실행시키는 각 코드 조각들을 청크라 한다.
청크는 명령어들의 순차 또는 문(文)이라 한다.


이 주제에서 내가 이해한 내용은 이러하다.
1. 루아에선 세미콜론(;)을 굳이 안 써도 된다. ( 선택적이다 )




2. 인터프리터에서 인수가 없이 lua를 치면, 대화식 모드로 들어간다.
( 더해서, os.exit()를 치면 대화식 모드를 종료할 수 있다. )





3. 대화방식 모드 ( Interactive mode)에선, 보통 입력자가 완벽한 청크로 입력한 한 줄을 해석하는데, 완벽한 청크가 아닌 경우에는
완벽한 청크가 될 때까지 더 있을 입력을 기다린다. ( 함수, 루프/반복문 등... )




4. 위 3번 내용을 보충하여 ,-i 옵션을 사용하여  주어진 청크를 실행 후, (Interactive Session) 대화형 세션에 들어 갈 수 있다.
음.. 미리 함수 따위를 .lua 파일에 정의 후 인터프리터에서 "lua -i <파일이름.lua>" 를 실행시키면 파일이름.lua를 적용시킨 채로
대화방식 모드로 들어가게 된다.
( 이 방식은 수동적인 테스팅과, 디버깅할 때 유용하다고 책에 적혀 있다. )





5. 위 4번과 다른 방식으론, dofile 함수를 사용하요 파일을 즉시 실행 시킬 수 있다.
간단하게, 대화식 모드에서 dofile("파일이름.lua")를 작성하면 주어진 루아를 적용시켜준다.


-----------------------------   Some Lexical Conventions [몇 어휘 규칙들]
Convention이 관례, 협약... 등 여러 가지 뜻이 있는데 규칙으로 쓰는 게 맞는 것 같아서 이렇게 썼다.


첫 내용은 이러하다.


Identifiers in Lua can be any string of letters, digits, and underscores, not beginning with a digit.
 
루아에서 식별자는 숫자로 시작하지 않는 아무 글자들의 문자열, 숫자들 그리고 밑줄 표시이다.


이 소 주제에선 언더바 (특수기호 "_" )로 시작해 한 개 또는 그 이상의 대문자가 따르는 식별자는 피해야 한다.
왜냐하면 임시 변수들이 대부분 언더바로 시작하기 때문에 웬만해선 사용하지 말라고 한다.
또한 예약어들도 있으니 변수 선언 시 주의.


 예약어들 목록
 and
 break
do 
else 
elseif 
 end
false 
for 
function 
if 
 in
local 
nil 
not 
or 
 repeat
return 
then 
true 
until 
 while
 
 
 
 

또한 루아는 대소문자를 구별한다,  and  는 예약어지만, And , AND 는 각각 다른 식별자이다 


또한 이음표 두 개 ( -- hypen )를 이용하면 적용이 된 줄의 실행을 막을 수 있고
이음표 2개 + 대괄호 2개 ( --[[ ) 를 이용하면 닫는 대괄호 2개 ( ]] )가 있는 줄까지 실행되는 걸 막을 수 있다.



-----------------------------   Global Variables [전역 변수들]


Global variables do not need declarations. You simply assign a value to a global variable to create it.

전역변수는 선언이 필요 없다. 간단하게 당신은 전역변수에 값을 부여하여 만들면 됩니다.


이번 소 주제에선 전역변수에 대한 짤막한 소개이다.
주 내용을 쓰자면..
  1. 전역변수는 값만 부여하면 사용할 수 있고, 어떠한 종류라도 상관없다. ( 수, 배열, 문자열, 함수.. 등 )
  2. 보통 전역변수를 지우지 않아도 된다, 하지만 지우고 싶다면 그 변수에 nil 값을 부여하면 된다.
이 2개가 끝이다. 아이 간단해.
-----------------------------   The Stand-Alone Interpreter [자립형 인터프리터] 
 이 주제에서는 인터프리터의 옵션에 대한 설명이다.
그냥 생략하겠다...


-----------------------------------------------
02. 루아 형식 익히기 02. 루아 형식 익히기 Reviewed by kukanuc on 1월 23, 2019 Rating: 5

댓글 없음:

Powered by Blogger.