My FeedDiscussionsHeadless CMS
New
Sign in
Log inSign up
Learn more about Hashnode Headless CMSHashnode Headless CMS
Collaborate seamlessly with Hashnode Headless CMS for Enterprise.
Upgrade ✨Learn more

What's your take on Julia?

Jason Knight's photo
Jason Knight
·Aug 30, 2018

For those unfamiliar with it:

julialang.org

I've watched it for a bit, and overall I'm liking it. It mixes and matches the best and worst of a number of other languages.

I'm not sure I'm wild about the lack of an implicit block opener ('begin' or '{') but the use of 'end' is good. I prefer words over symbols -- but again I'm a wirth guy. Even so the syntax feels solid as it removes a lot of 'pointless stuff' so common to the C syntax legacy that so often hobbles other languages.

The triple quoted strings that automatically 'de-indent' in the output might be nice for writing server-side HTML that's nice and formatted, but outputs with a decent amount of whitespace stripped. Switching between minified and not minified becoming as simple as switching between single and triple.

Optional typecasting is something that's only just starting to emerge into ECMAScript, that really gives you the best of both worlds. When for security and performance reasons you want strict typecasting it's available, but when the data you're working on could be any type it can do that as well. That gets a thumbs-up from me as I PREFER strict for most things, but recognize there are places it is just easier to have loose/dynamic variables.

About my only real complaint so far is that it allows for 'on the fly' variable creation and is a bit of a wonk on how scope works... but I'm a big fan of forward declaration since it tends to just reduce code errors and provide a degree of clarity. Block-level scoping is most always just a train wreck in terms of memory thrashing and code comprehension.

Performance-wise it's no slouch either, but it's implemented with LLVM so that's kind of a given.

Anyone else here given it a try and/or started learning this one yet?