On Oct 18, 11:42 am, Alexander Kjeldaas <[EMAIL PROTECTED]>
wrote:
> The following fails for me:
>
> (load-string
> (format "(quote (%s))"
> (nth (iterate #(format "%s%s" % %) "(1 2 3 4)") 13)))
> java.lang.ClassFormatError: Unknown constant tag 32 in class file user/
> eval__2485 (NO_SOURCE_FILE:0)
>
> With 12 as the argument to nth, it works.
In moving to ahead-of-time compilation there are now limits to the
size of data structures that can be embedded in code, since they have
to be included in the class files. In most cases, large data
structures can be saved separately and then read, with read. For the
case above, which is just the representation of a data literal as a
string, I've also added read-string:
(read-string
(format "(%s)"
(nth (iterate #(format "%s%s" % %) "(1 2 3 4)") 13)))
The reader is a fine and sufficient tool for reading data structures -
there's no need to involve the compiler. load should be reserved for
for code from now on.
Rich
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---