 PROMPT is a string to prompt with, normally it ends in a question mark
 and a space.  \"(true or false) \" is appended if TABLE is nil.
 
-Read with completion over \"true\", \"false\" and the keys in TABLE, see
-also `antlr-read-value'.
+Without TABLE, use `y-or-n-p', otherwise read with completion
+over \"true\", \"false\" and the keys in TABLE, see also
+`antlr-read-value'.
 
 Used inside `antlr-options-alists'."
-  (antlr-read-value initial-contents
-		    (if table prompt (concat prompt "(true or false) "))
-		    nil
-		    table '(("false") ("true"))))
+  (if table
+      (antlr-read-value initial-contents prompt
+                        nil table '(("false") ("true")))
+    (if (y-or-n-p prompt) "true" "false")))
 
 (defun antlr-language-option-extra (phase &rest _dummies)
 ;; checkdoc-params: (dummies)

      ;; impl (org.antlr.runtime.tree.CommonTree in Java)?
      nil antlr-read-value "Token type: ")
     ("superClass"                      ; in combined grammar: for parser
      ;; Set the superclass of the generated recognizer. TODO: Default value
      ;; (org.antlr.runtime.Parser in Java)?
      nil antlr-read-value "Super class: ")
     ("filter"    ; lexer and tree(?) only
      ;; In the lexer, this allows you to try a list of lexer rules in
      ;; order. The first one that matches, wins. This is the token that
      ;; nextToken() returns. If nothing matches, the lexer consumes a single
      ;; character and tries the list of rules again. See Lexical filters for
      ;; more.
      nil antlr-read-value "Lexer filter: ")
     ("rewrite"                         ; parser and tree only
      ;; Valid values are true and false. Default is false. Use this option
      ;; when your translator output looks very much like the input. Your

		(insert " " (format (car antlr-special-file-formats)
				    (cdr super)))))
	  (insert "\n\t"
		  (cl-caddr antlr-makefile-specification)
		  (car glibs)
		  " $<\n"
		  (car antlr-makefile-specification)))))
    (if n
	(let ((i 0))
	  (antlr-makefile-insert-variable nil "" " =")
	  (while (<= (cl-incf i) n)
	    (antlr-makefile-insert-variable i " $(" ")"))
	  (insert "\n" (car antlr-makefile-specification))))
    (if (bobp)
