4. 성능

JLex에 의해 생성된 lexical analyzer와 수동으로 작성된 lexical analyzer의 성능을 비교한 벤치마킹 결과가 있다. 실험 시 사용된 예제 입력은 간단한 프로그래밍 언어였으며, 수동으로 작성된 lexical analyzer도 자바로 작성이 되었다.

두개의 간단한 프로그래밍 언어 소스 파일에 대해 각각의 lexical analyzer를 동작시키고, 처리시간을 측정하였다. 각각의 lexical analyzer는 자바로 작성된 driver에 의해 수행되었다.

JLex로 생성된 lexical analyzer가 더 빠르다는 것이 다음 실험 결과와 같이 판명되었다.

표 2.

Size of Source FileJLex-Generated Lexical AnaylzerHand-Written Lexical Analyzer
177 lines0.42 seconds0.52 seconds
897 lines0.98 seconds1.28 seconds

JLex lexical analyzer가 수동으로 작성된 lexer보다 충분히 빠른 속도를 가지고 있음을 알 수 있다.

JLex와 같은 프로그램에 의해 만들어진 table-driven lexical analyzer들의 가장 큰 문제점 중 하나는 수동으로 작성된 것에 비해 속도가 느리다는 점이었다. 그러므로, 이것은 JLex lexical analyzer의 상대적인 속도를 입증하는 중요한 실험 결과로 볼 수 있다.