Pure and Julia are cool languages worth checking out
Network World - Ah! The fresh aroma of the New Year accompanied by the aroma of fresh new tech! I love the smell of geekiness ... Mmmm. This week, we'll start with some uber-geekosity: A couple of really interesting programming languages.
The first is called Pure and it's web site describes the language as "a modern-style functional programming language based on term rewriting. It offers equational definitions with pattern matching, full symbolic rewriting capabilities, dynamic typing, eager and lazy evaluation, lexical closures, built-in list and matrix support and an easy-to-use C interface."
Wikipedia explains that "functional programming" is "a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data," and the site gives an example of a Pure program that prints the first 1,000 Fibonacci numbers:
extern int puts(char*); do (puts.str) (take 1000 (fibs 0L 1L)) with fibs a b = a : fibs b (a+b) & end;
Fascinating stuff. Pure is available, for free, for FreeBSD, GNU/Linux, Mac OS X, and Windows and licensed under the GNU Lesser General Public License V3.
The other language that's worth checking out is Julia, "a high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to users of other technical computing environments. It provides a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library."
Julia's support for parallelism is intriguing as the language "provides a number of key building blocks for distributed computation, making it flexible enough to support a number of styles of parallelism, and allowing users to add more." The site gives an example of counting, in parallel, the number of heads in a large number of coin tosses:
nheads = @parallel (+) for i=1:100000000 randbit() end
The @parallel directive automatically distributes the calculation "across all available compute nodes, and the result, reduced by summation (+), is returned at the calling node."
I'd love to see Julia implemented on Parallela, a Kickstarter project I was amped about last year, that succeeded in raising almost $900,000 on its goal of $750,000. Described as "A Supercomputer For Everyone," this $99 board, which runs Linux, will support a performance of 26 GFLOPS and should be perfect for a language like Julia.
Enough of the rarified stuff: Here's something that may make you more productive in 2013 ... Mindjet Tasks.
I wrote about Mindjet last May when the company released Mindjet Maps for iPad and Android and for iPhone.
I still think that these apps ... which are free! ... are indispensable planning tools. Late last year, Mindjet released another iOS app that's related to mind-mapping: Mindjet Tasks.
Mindjet Tasks allows you and your team to set up dashboards for projects so you can coordinate planning from wherever you have a cell signal. If you do have some kind of connection, then Mindjet Tasks allows you to make on-the-fly task assignments with real-time updates and team postings. It will also auto-prioritize tasks and can share data with MindJet on OS X and Windows.
I've always been an admirer of Mindjet and Mindjet Tasks looks like a very slick addition to their product line. I'll give it a Gearhead rating of 5 out of 5!
Gibbs is geeked out but organized in Ventura, Calif. Your resolutions to gearhead@gibbs.com and follow him on Twitter and App.net (@quistuipater) and on Facebook (quistuipater).
Read more about software in Network World's Software section.
- Google I/O 2013's Coolest Products and Services
- 10 Star Trek Technologies That are Almost Here
- 19 Generations of Computer Programmers
- 25 Must-Have Technologies for SMBs
- A walking tour: 33 questions to ask about your company's security
- 15 social media scams
- The 7 elements of a successful security awareness program
- IT Certification Study Tips
- Register for this Computerworld Insider Study Tip guide and gain access to hundreds of premium content articles, cheat sheets, product reviews and more.
- The Five Big Lies the C-Suite Hears About "Going Mobile" Mobile has already made a tremendous impact-to the tune of 29 billion apps downloaded in 2011. With such a new technology, it's not...
- mPayment Scenario Planning and Recommendations The mPayment industry is predicted to reach $1.3 trillion by 2017. This report offers conclusions into the impact mobile will have on businesses...
- Is Your App Getting Used? Understanding UX and Your Audience Want your app to be one of the 70 percent that is opened but never used again? If not, then you need to...
- Case Study: Hospital Turns to Email Archiving Solution to Ensure Regulatory Compliances Read this case study to learn how a cloud-based email archiving solution enabled the hospital to meet government mandates and helps avoid thousands...
- 3 Reasons Why Sepaton is the World's Fastest Backup Solution Leading analyst, Storage Switzerland learns how Sepaton backs up and deduplicates massive data volumes while maintaining the industry's fastest performance - all in...
- Enterprise File Sharing: All You Need to Know Security. Scalability. Control. These are just some of the many benefits of enterprise cloud file-sharing that you'll discover in this KnowledgeVault, packed with... All App Development White Papers | Webcasts
Our weekly newsletter will cover a wide range of topics and trends related to consumerization. Stay up to date with news, reviews and in-depth coverage of BYOD, smartphones, tablets, MDM, cloud, social and how consumerization affects IT. Subscribe now!