Michael FIG | 6 May 02:36

incorrect string literal quasiquotation in jolt2

Hi,

The following crashes Jolt2:

(syntax test-quasiquote
  (lambda (node compiler)
    (let ((expr `(printf "hello world\n")))
      [StdOut print: expr] [StdOut cr]
      expr)))
(test-quasiquote)

The output is:

(#printf (104 101 108 108 111 32 119 111 114 108 100 10))

I can see from function/jolt2/boot.k that quasiquote doesn't handle
constant strings correctly, so they get treated as if they are a list
of integers (because they are vectors too).

I don't know how to fix this right now given the tools in the current
Jolt2 parser.  Are there any suggestions?

--

-- 
Michael FIG <michael@...> //\
   http://michael.fig.org/    \//


Gmane