anchor.diff:    (1- index-trans-table))
   
   (defun make-dfa (regex-string)
  +  "MAKE-DFA
  +   return a dfa.
  +   using GLOBAL parameters and ugly. Hence I will fix it later.
  +   RETURN: *TODO*"
     (progn
       (defparameter trans-table (make-array 50))
       (defparameter index-trans-table 0))
  
positive.code:    parse a regex-string recursively.
     RETURN:(lst begin-index end-index length+2)
     "
    (let ((current-char nil)
          (begin-index nil)
          (end-index nil)
  
negative.code:   (let ((begin-index nil)
          (end-index nil)
          (len (string-length rest-regex)))
      (if (is-union rest-regex)
        (if (not (union-ugly-p rest-regex))
          ()))
      ))
  
  (defun make-union (union-string)
    "MAKE-UNION
     make union states.
     RETURN:(lst begin-index end-index length+2)"
    (let* ((begin-index (add-state nil '♂))
           (end-index   (add-state nil '♂))
           (split-cons (split-cons (split-union union-string)))
           (regex1 (car split-cons))
           (regex2 (cdr split-cons)))
      (progn ; fuck regex1
        (let ()))
      (progn ; fuck regex2
        (let ()))))
  
  
  (defun get-first-paren (regex-string)
    "GET-FIRST-PAREN
  