General Development Archive

Run JavaScript Files on the Server Side

With ever increasing amounts of Javascript on the client side, maintenance is increased by duplicating business logic on the client side;"In this series, learn how to run JavaScript files on the server side, call remote JavaScript functions with Ajax, and use the Java Scripting API with the JavaServer Pages (JSP) technology." Part 1 of IBM's "Javascript EE" series- "Combine JavaScript with Java code on the server to get the freedom to use the same JavaScript routines on both servers and clients, and allow you to maintain a single code base for both Ajax and non-Ajax clients."

The A-Z of Programming Languages: Perl

Did you know that Perl creator Larry Wall thinks the community 'paints a little picture in heaven'? In a lengthy interview about the history of Perl, Wall talks about the evolving nature of programming languages, especially Perl, and in the future a lot of people will be getting into programming as a profession, but not calling it programming. Wall's genius is expressed in his desire to not recognise Perl in 20 years, instead to design the ability to create things we will need in 20 or 100 years. And, yes, Wall picked the Camel mascot as it is 'an animal that is self-sufficient in a dry place'.

Parallel Machine Learning Toolbox for Linux

Many sophisticated machine learning algorithms cannot process large amounts of data on a single node, but Parallel Machine Learning Toolbox (PML) can do so by distributing the computations. This distribution speeds up computations and expedites training by weeks, days, or even hours in an easy, reliable way. PML can run on a wide array of architectures including single-node, small clusters, grids, and BlueGene.

OpenCL 1.0 Specification Finalised, Released

The Khronos Group has released the finalised, completed specification for OpenCL 1.0, "the first open, royalty-free standard for cross-platform, parallel programming of modern processors found in personal computers, servers and handheld/embedded devices." The specification was first proposed as a draft by Apple, with its new home being the Khronos Group, a consortium that develops and promotes royalty-free media APIs.

Harness the Power of Ruby for Efficient System Administration

Apart from its use as a powerful Web application development platform, in combination with the Rails framework Ruby is also a powerful scripting language. It has immense capabilities, owing to the availability of many built-in and external libraries, the power of which can be harnessed to solve a great deal of the scripting needs that surface in typical systems administrative work environments.

Perl 6 to Break Compatibility, Support Other Interpreters

Version 6 of the popular Perl programming language will not be compatible with previous versions, but will open up a new world of custom "languages" and interpreters, according to its founder Larry Wall. Wall and his co-developers are doing with Perl 6 -- starting again. "It will break backward compatibility in order to simplify it we have to get rid of old cruft, particularly the regular expression cruft," Wall said. "A lot of the unreadability of Perl is related to the regular expression syntax – and we didn't do that, we got it from Unix. It needs to be end-of-lifed."

Python 3.0 Released

"Python 3.0 (a.k.a. 'Python 3000' or 'Py3k') is a new version of the language that is incompatible with the 2.x line of releases. The language is mostly the same, but many details, especially how built-in objects like dictionaries and strings work, have changed considerably, and a lot of deprecated features have finally been removed. Also, the standard library has been reorganized in a few prominent places." See what's new in Python 3.0 for differences between 2.x and 3.x.

RPyC 3.00 Released

RPyC (Remote Python Call) is a transparent and symmetrical python library for remote procedure calls, clustering and distributed-computing. RPyC makes use of object-proxying, a technique that employs python's dynamic nature, to overcome the physical boundaries between processes and computers, so that remote objects can be manipulated as if they were local. Read the tutorial for a thorough overview. This release introduces remote services and capability-based security, which make RPyC an ideal remoting framework.

Tree View Menu Styles in U2 SystemBuilder/XA Apps

The U2 SystemBuilder Extensible Architecture for UniData and Universe (SB/XA) 6.0.0 introduces new application architecture for SystemBuilder applications. One of the features provided by the changes in the architecture is the ability to modify the presentation of your applications without modifying the underlying business logic. In this article, learn how to present a traditional SystemBuilder menu as a Tree View menu.

C++0x Gets Finalised

The proposed new standard for the C++ programming language, C++0x, has reached feature completeness. "This is 'it', feature-complete C++0x, including the major feature of 'concepts' which had its own extensive set of papers for language and library extensions (if you get the impression that concepts is a big feature, well, it is indeed easily the biggest addition we made in C++0x)."

10 Forces Guiding the Future of Scripting

Peter Wayner examines the platforms and passions underlying today's popular dynamic languages, and though JavaScript, Perl, PHP, Python, Ruby, Groovy, and other scripting tools are fast achieving the critical mass necessary to flourish into the future, 10 forces in particular appear to be driving the evolution of this development domain. From the co-optation of successful ideas across languages, to the infusion of application development into applications that are fast evolving beyond their traditional purpose, to the rise of frameworks, the cloud, and amateur code enablers, each will have a profound effect on the future of today's dynamic development tools.

C++: The Ugly Useful Programming Language

Eric Raymond is working on an essay, putatively titled "Why C++ Is Not My Favorite Programming Language". In his announcement, he calls it "an overcomplexity generator", "bloated, obfuscated, unwieldy, rigid, and brittle", and alleges that these characteristics appear in C++ applications also. I contend that many of the complaints about C++ are petty or are aimed at specific libraries or poor documentation and that many of the features commonly regarded as unnecessary (and excluded from intended replacements) are, in fact, highly useful. C++: the Ugly Useful Programming Language

Python 2.6 Released

Python 2.6 has been released on October 1st. The major theme of this release is preparing the migration path to Python 3.0, a major redesign of the language. Whenever possible, Python 2.6 incorporates new features and syntax from 3.0 while remaining compatible with existing code by not removing older features or syntax. See the what's new docs for more details.

The A-Z of Programming Languages: C#

Microsoft's leader of C# development, writer of the Turbo Pascal system, and lead architect on the Delphi language, Anders Hejlsberg, reveals all there is to know on the history, inspiration, uses and future direction of one of computer programming's most widely used languages - C#. Hejlsberg also offers some insight into the upcoming version of C# (C#4) and the new language F#, as well as what lies ahead in the world of functional programming.