Is Julia the Next Big Programming Language? MIT Thinks So, as Version 1.0 Lands (techrepublic.com)
Julia, the MIT-created programming language for developers "who want it all", hit its milestone 1.0 release this month -- with MIT highlighting its rapid adoption in the six short years since its launch. From a report: Released in 2012, Julia is designed to combine the speed of C with the usability of Python, the dynamism of Ruby, the mathematical prowess of MatLab, and the statistical chops of R. "The release of Julia 1.0 signals that Julia is now ready to change the technical world by combining the high-level productivity and ease of use of Python and R with the lightning-fast speed of C++," says MIT professor Alan Edelman. The breadth of Julia's capabilities and ability to spread workloads across hundreds of thousands of processing cores have led to its use for everything from machine learning to large-scale supercomputer simulation. MIT says Julia is the only high-level dynamic programming language in the "petaflop club," having been used to simulate 188 million stars, galaxies, and other astronomical objects on Cori, the world's 10th-most powerful supercomputer. The simulation ran in just 14.6 minutes, using 650,000 Intel Knights Landing Xeon Phi cores to handle 1.5 petaflops (quadrillion floating-point operations per second).
Great... Just what we need... another language.. oh wait, that will need a new package manager.. and new frameworks.. and..
screw it I'll just stick to C++.
I z^2+c what you did there.
Inheritance is the sincerest form of nepotism.
If MIT had been having its way, we'd all be using Scheme.
Julia is a better Octave (open source Matlab replacement) - good for computer scientists, but software engineers will not be interested. Question is, will the scientific community create enough definitive libraries to provide alternatives for Matlab toolboxes. Not enough seem to have attended the Octave party.
Also, computer scientists don't define popular adoption of programming languages. Else, we'd be using Haskell/Scheme by now.
C is lightning fast and is the tool for when you know what you're doing.
Python is .. for everything else.
So Python when (a) you don't need fast and (b) you don't know what you're doing. :-)
[ And when you don't want C, but want fast and you know what you're doing, use Perl. ]
It must have been something you assimilated. . . .
C is lightning fast and is the tool for when you know what you're doing.
C is a lightning fast tool for people who are obsessed with micromanaging things which can be easily automated. If yu want lightning fast performance (often faster) but don't really want to do things by hand that a computer can be easily taught how to do then there's C++.
Everything else just turns into a clusterfuck over time. C and Python have somehow avoided turning into clusterfucks by being simple
C moves the complexity of the language into every single project that uses it. So the language per-se might not be a cluster fuck, but it is the epicentre of a custerfuck of biblical proportions.
SJW n. One who posts facts.
I have been using Crystal [crystal-lang.org] and the Lucky Web Framework [luckyframework.org] for a large project, and it's been great. Crystal's handling of types, and the fact that you get all of the error-killing power of tight typing while you often don't have to specify the types at all because they are inferred, has make my code cleaner and easier to write, with fewer bugs and less need for testing. You write it like an interpreted language (it follows Ruby syntax, but treats typing and metaprogramming differently) and it has compiled speed (uses LLVM).
I'm sure your employer (or contractor) is ecstatic about the fact that they'll have to pay 3x the going rate to find devs that can work on the project you've built. Well actually that's not true. They'll have to pay someone to completely re-write the project when they can't find anyone to work on it and / or the niche framework you've picked is no longer supported / evolved.
Maybe it was a pet project though.