루아는 애초에 다른 언어에서 동작 될 수 있도록 개발 되었기 때문에, 확장성이 어마어마하다고 한다. 이는 접착 언어(glue language)로 괜찮은 평가를 받고 있는 증거이다.

어디에 쓸까?

응용할 수 있는 부분은 "알고리즘" 부분이라고 생각한다. 프로그램 생명 주기 동안, 알고리즘이 개선 되었을 때, 재컴파일 하지 않고, 스크립트만 바꾸어 주면 되기 때문이다.

게임을 예로 들자면, 여러 공식들이 있을 것이다. (아직 써보진 안아서 이거 밖에는 모르겠다.)

이는 개발 중 시간을 많이 아낄 수 있음을 보여주며, 이렇게 벌어둔 시간으로 "최적화"를 지연평가(ㅋㅋ)하여, "설계"에 몰두할 수 있는 장점을 지닐 수 있게 된다.

이번에 맡은 프로젝트로 인하여 시작하게 되었는데, ... 뒤로 미루고 미루고 미루다가, ... 더 미룰수 없게 되어 시작하게 되었는데 무척 호기심을 자극하는 개념들이 있다. :)

루아는 http://www.lua.org 에서 정보 확인 가능하다. 루아 문법만으로는 아무것도 할 수 없으므로, 테스트 할 수 있는 환경을 자연스럽게 요구하게 되는데, 이를 위해 루아 독립형 인터프리터를 제공해 준다. 위의 싸이트에서 다운로드 받을 수 있으며, .. 아래 올려 둔다.

관련 싸이트

루아 싸이트 : http://www.lua.org
루아 사용자 커뮤니티 : http://lua-users.org
이 책 싸이트 : http://www.inf.puc-rio.br/~roberto/pil2/
레드위키 : http://www.redwiki.net/wiki/wiki.php/Lua <-- 이곳 추천, 한글로 대부분 정리되어 있다.


독립형 인터프리터 사용법

1. 루아 문법으로 만든 텍스트 파일을 저장한다(대개 확장자 lua 로 한다)
2. 위에서 다운로드 받은것을 풀고 lua5.1.exe 저장파일명 <-- 엔터
* 위의 윈도우 콘솔용이다. 유닉스 계열은 별도로 다운 로드 받는게 좋겠다.

이렇게 할수 있으며, 단순히 라이브러리 함수를 체크만 하고자 할때는 그냥 실행시킨 후
함수에 매개변수를 전달만 하면 된다.
예)
print("Hello World")


윈도우 환경이라면 더 편하게 http://luaforwindows.luaforge.net/ 에서 다운받아 설치하고, "SciTE" 를 이용하여, 손쉽게 짜고 테스트 할 수 있다.(자동으로 SciTE 가 설치되며, 테스트 가능하다 쵝오!)


SciTE 관련
http://kaisyu.blogspot.com/2004/01/scite.html


총평

휴~ 한개 알면 적어도 3개는 알아야 하고 3개 알면 적어도 9개는 알아야 하니, .. 1개 공부 할 땐 10개 공부할 각오로 공부 해야 살아남을 수 있는 세계에 발을 내딘 순간이다.
posted by 농사를 짓는 게임 프로그래머 최익필

댓글을 달아 주세요