Announcing NCLx

As you may have seen from previous posts, I use the programming language NCL from NCAR for a lot of my analysis and processing work. Moreover, I find it to be one of the least fiddly plotting engines available to go from "general idea" to "publication quality" in a matter of a few lines of code. Even in situations where I don't use NCL for the processing part, such as when I need to massively parallelise my computations, the plotting engine alone is well worth learning.

That being said, I have mentioned before that NCL is missing some fundamental features that most other programming languages have built-in. I speak of exception handling and error recovery mostly, but there are a few quirks of the language that have inspired me to write a series of utilities to overcome the shortfall.

With that in mind, I am starting the process of open-sourcing my utilities to the NCL community as a library, called NCLx (where X means "extensions").

First up, are a few functions that make reading and writing CSV files that little bit easier, but as I become more confident in what I've written I will free up more of my utilities. My hope is that others out there will recognise the benefit in sharing your utilities with the greater community and contribute to the library to drive this programming language forward.

To check out NCLx, head over the GitHub page:

NCLx on GitHub