PSA: Major changes to JuliaParser upcoming

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

PSA: Major changes to JuliaParser upcoming

Keno Fischer
Folks,

I know some of you are using JuliaParser for various projects, so I wanted to give
a heads up that I'm about about to tag a new version with a significant number of
changes. Impact for existing users is likely:

- May be slightly slower, though I haven't done any performance work yet, so that'll probably be resolved soon
- Minor API incompatibilities
- A significant number of internal APIs take extra arguments (only an issue if you're
  building on top of JuliaParser)
- May no longer parse your code. I tried my best to get all the syntax corner cases right, but the julia syntax is large, so it is likely I missed something. Please file any issues you encounter.
- Targets 0.5- only. Most of the code to parse older versions is still there, but maintaining it is a significant amount of work. If somebody wants to step up and maintain that part of it, I'll happily accept pull requests. Otherwise, I'll probably slowly remove the remaining bits of support for old versions.

Now for what you get in exchange.

- I've updated JuliaParser for all recent parser syntax changes and bugfixes.
- I've added a new mode that adds token-accurate location tracking
- You can use that mode to get pretty error messages:

Inline image 1

Keno
Reply | Threaded
Open this post in threaded view
|

Re: PSA: Major changes to JuliaParser upcoming

Eric Davies
Ooh, this will be nice. I wanted to make a Julia formatter but neither Base.parse nor JuliaParser held enough information about the original code. Perhaps this version will do that.

On Thursday, 31 March 2016 20:24:16 UTC-5, Keno Fischer wrote:
Folks,

I know some of you are using JuliaParser for various projects, so I wanted to give
a heads up that I'm about about to tag a new version with a significant number of
changes. Impact for existing users is likely:

- May be slightly slower, though I haven't done any performance work yet, so that'll probably be resolved soon
- Minor API incompatibilities
- A significant number of internal APIs take extra arguments (only an issue if you're
  building on top of JuliaParser)
- May no longer parse your code. I tried my best to get all the syntax corner cases right, but the julia syntax is large, so it is likely I missed something. Please file any issues you encounter.
- Targets 0.5- only. Most of the code to parse older versions is still there, but maintaining it is a significant amount of work. If somebody wants to step up and maintain that part of it, I'll happily accept pull requests. Otherwise, I'll probably slowly remove the remaining bits of support for old versions.

Now for what you get in exchange.

- I've updated JuliaParser for all recent parser syntax changes and bugfixes.
- I've added a new mode that adds token-accurate location tracking
- You can use that mode to get pretty error messages:

Inline image 1

Keno