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).
Is Becky's baby the cutest baby in the entire world? Becky thinks so, as Birthday 1.0 arrives.
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++.
There is always going to be argument about which language is the best, which Linux distribution, which web framework, and systemd.
I have been using Crystal and the Lucky Web Framework 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).
Bruce Perens.
C is lightning fast and is the tool for when you know what you're doing.
Python is .. for everything else.
Everything else just turns into a clusterfuck over time. C and Python have somehow avoided turning into clusterfucks by being simple, while building an unstoppable freight train of reference work.
Julia solves lots of problems in a specialized domain, but most programming is laughably mundane.
..don't panic
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.
... for developers "who want it all" ...
I want: local/global "goto" operations; unchecked pointers and arrays; brace *and* white-space (for you Python freaks) block delineation; weird operators like "+-+", "=!=", "-+/*" and "..."; support for casting on the *left* side of the assignment (ya, I did that on 4.3 BSD w/K&R C); random requirements for some variable to be in UPPER case and/or start with specific letters (for you FORTRAN fans) ...
Feel free to add to this; I'll be back after I get a fourth cup of coffee.
It must have been something you assimilated. . . .
...but why {...} ?!? {...} the syntax looks like the bastard child of Fortran and Perl
Because since Python started overtaking Perl, my cats are sad because they can't write fully compliant programs just by random walking across the keyboard anymore.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
the readability of Perl with the brevity of COBOL.
Technologically aggressive company in the expanding AI and Scientific arena is looking for experts in Julia.
Must have at least 5 years hands on experience building applications with Julia in multi-core, machine learning applications and simulations.
When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
Once you get over your newbie tunnel vision with the block syntax, you will find that Julia is a compact (despite the ends), powerful, high-performance, array language with meta-programing features.
No, it is not an academic language like say, Haskell. It is a practical programming language for research into math-heavy algorithms - Artificial Intelligence, Signal Processing, Image Processing etc.
No, it is not a general purpose language for day-to-day scripting or web/business programs. It is not, as you put it, for "bootcamp coders".
"want it all" refers to the historically diametric needs of computer scientists. They need a high-level, expressive, vectorized language like Matlab to prototype and interactively explore data... and a high performance language like Fortran or C++ to implement that algorithm after, on the fastest supercomputers. This gives them both in one tool.
It sounds like your never wrote any significant matrix/math code in your life. Writing any complex matrix code with just loops is like having one's teeth pulled, compared to how it is done in an array language like Julia. The block syntax is the least of one's worries when dealing with high-dimensional data.