Hello.

I am having some trouble working with Strings or Transient Symbols.  (I'll call 
them strings for now.)

Consider this string:

        "^(a+)\)"

In picoLisp, I must enter that as:

        "\^(a+)\\)"

See, the escaping syntax is a pretty heavy burden for the types of strings I 
work with...

So, I considered using a reader macro.  I imagined something like:

        (re-handler /^(a+)(.*)'.*(\)+)/ "aaaand here's some input! :))))")
-->
        (re-handler "\^(a+)(.*)'.*(\\)+)" "aaaand here's some input! :))))")

See, the / is being used as a delimiter, instead of ".  Javascript does this. 
/foo/ is a kind of literal like "foo" is a literal.

..Then I discovered that we don't have a defmacro.  (I've read previous 
discussion about macros and I accept Alex's stance.)

Any advice for implementing some sort of special case for /strings/, which 
would be just like "strings" but with different escape mechanics?

I see src64/io.l contains (code 'readA_E) which handles reading "strings".  But 
I don't understand this assembly code.

I hope my question is clear.

Thanks, cheers,
--Dave
--
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to