diff options
author | Eduardo Julian | 2015-08-17 16:59:18 -0400 |
---|---|---|
committer | Eduardo Julian | 2015-08-17 16:59:18 -0400 |
commit | 1b48e9e06cb90187b28381bcadbeeba60806964d (patch) | |
tree | 1e30e61bd5ec7f5d3b0c2c12f1f549bc23b5ee48 /src/lux/parser.clj | |
parent | df3e4ba2df6462812174e69ea5c334a7edbbd5c7 (diff) |
- Finished turning tags into indices.
- As an unexpected bonus, the compiler has become 2.5x faster.
- Fixed some minor bugs.
- Tag declarations now include associated types.
- Tag declarations info is now stored twice (one from the perspective of tags, the other from the perspective of types).
- Changed the named of the "types" member of the Compiler type, to "type-vars" to avoid collision with the "types" member of the Module type.
Diffstat (limited to '')
-rw-r--r-- | src/lux/parser.clj | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lux/parser.clj b/src/lux/parser.clj index a8b2cfc16..eaa22db20 100644 --- a/src/lux/parser.clj +++ b/src/lux/parser.clj @@ -76,10 +76,10 @@ (return (&/|list (&/V &/$Meta (&/T meta (&/V &/$BoolS (Boolean/parseBoolean ?value)))))) ($Int ?value) - (return (&/|list (&/V &/$Meta (&/T meta (&/V &/$IntS (Integer/parseInt ?value)))))) + (return (&/|list (&/V &/$Meta (&/T meta (&/V &/$IntS (Long/parseLong ?value)))))) ($Real ?value) - (return (&/|list (&/V &/$Meta (&/T meta (&/V &/$RealS (Float/parseFloat ?value)))))) + (return (&/|list (&/V &/$Meta (&/T meta (&/V &/$RealS (Double/parseDouble ?value)))))) ($Char ^String ?value) (return (&/|list (&/V &/$Meta (&/T meta (&/V &/$CharS (.charAt ?value 0)))))) |