검색어 입력폼

렉스와 야크로 만든 자바 인터프리터

저작시기 2009.11 |등록일 2009.12.25 파일확장자압축파일 (zip) | 가격 2,500원

*해당 문서는 미리보기가 지원되지 않습니다.

소개글

자바 소스를 본석하고 실행하는 자바 인터프리터를 만들었습니다.
기본적인 클래스 개념, 메소드, 변수, 타입, 접근 제한자, 배열, 재귀 등등
여러가지를 구현했습니다.
lex로 단어를 추출하고 yacc로 문법을 분석해서 실행합니다.
make 파일도 만들어 놔서 make만 치면 실행파일이 나옵니다~!

구성 : pl2_l.l pl2_y.y sym.h make파일

제가 다른 버젼을 올려 놓았는데 그것과는 구현이 40%정도 다릅니다~
둘다 상당히 다르니 모두 참고하는 것도 좋을 것 같네요^^;
A+ 받았씁니다!

본문내용

%{
#include <stdlib.h>
#include "sym.h"
#include "y.tab.h"
void yyerror(char *);
%}

%%
[ tnr]+ ; /* ignore whitespace */

"class" return CLASS;
"boolean" return BOOLEAN;
"public" return PUBLIC;
"static" return STATIC;
"void" return VOID;
"String" return STRING;
"extends" return EXTENDS;
"if" return IF;
"else" return ELSE;
"while" return WHILE;
"return" return RETURN;
"System.out.println" return PRINTLN;
"new" return NEW;
"this" return THIS;
"null" return tNULL;
"true" { yylval.bValue = 1;
return TRUE; }
"false" { yylval.bValue = 0;
return FALSE; }
">=" return GE;
"<=" return LE;
"==" return EQ;
"!=" return NE;
"int" return INT;

[a-zA-Z][a-zA-Z0-9]* {
yylval.identifier = strdup(yytext);
return VARIABLE;
}

.... 등등등!!

압축파일내 파일목록

make.exe
pl2_l.l
pl2_y.y
sym.h
다운로드 맨위로