2009-09-01から1ヶ月間の記事一覧

字句解析#2

字句解析を続ける。ファイルから読み出した文字列に順番を加えてトークンとする。 (defvar MGH_vlt "^0C.\\\(............\\\)\\\(............\\\)\\\(............\\\)\\\(............\\\)\\\(............\\\)\\\(............\\\)\\\(........\\\).....…

整数ジェネレータ

さて、前回の字句解析#1では、与えられたファイルを字句解析して、トークンを切り出した。ここでいうトークンとは、文字列とファイルを読み出した順番の対である。今回は、後者の"ファイルを読み出した順序"を掘り下げてみよう。前回、このファイルを読み出…

字句解析#1

文字列に番号を振って、番号と文字列の対のデータ構造をトークンとする。 (defun getToken-lexer (f) (cons (getOrder f) (seq-read f))) (defun getOrder (f) (save-excursion (set-buffer f) (1+ (/ (point) 251)))) (defun tk_to_s (tk) (format "#%5s %s…