General Development Archive

IronPython 1.0 Released

"IronPython is about bringing together two worlds. The key value in IronPython is that it is both a true implementation of Python and is seamlessly integrated with the .NET platform. Most features were easy and natural choices where the language and the platform fit together with almost no work. However, there were challenges from the obvious cases like exception type hierarchies to the somewhat esoteric challenges concerning different methods on strings." More here.

Review: Borland Turbo Explorer

With the free Turbo Explorer line, Borland brings programming to the masses. Each of the four Turbo Explorer 'personalities' targets a different combination of programming language and platform: Turbo Delphi and Turbo C++ for Windows, and Turbo Delphi and Turbo C# for .NET. There are over 200 components for building programs, but the abundance of features may be overwhelming to new users.

The Future of Programming

What is the future of programming? I retain a romantic belief in the potential of scientific revolution. To recite one example, the invention of Calculus provided a revolutionary language for the development of Physics. I believe that there is a “Calculus of programming” waiting to be discovered, which will analogously revolutionize the way we program. Notation does matter." More here.

The Problem with Threads

"Concurrent programming is difficult, yet many technologists predict the end of Moore's law will be answered with increasingly parallel computer architectures - multicore or chip multiprocessors. If we hope to achieve continued performance gains, programs must be able to exploit this parallelism. Automatic exploitation of parallelism in sequential programs, through either computer architecture techniques such as dynamic dispatch or automatic parallelization of sequential programs, offers one possible technical solution. However, many researchers agree that these automatic techniques have been pushed to their limits and can exploit only modest parallelism. Thus, programs themselves must become more concurrent."

Helpful Hints for Porting Fortran Applications

This article addresses the most commonly encountered scenarios and errors while porting Fortran or any UNIX or Linux-based applications on different systems. Discover how to port Fortran-based High Performance Computing applications, such as computational fluid dynamic (CFD) modeling, weather modeling, and linear algebra packages, using IBM XL compilers and gnu compilers on large clusters.

uBASIC – a Really Tiny BASIC Interpreter

Adam Dunkels, well-known author of the Contiki operating system and the uIP embedded TCP/IP stack, has written a really small BASIC interpreter called uBASIC in about 700 lines of C code. It is intended to be a very small scripting language for systems where memory really is at a premium such as deeply embedded systems which may have as little as a few hundreds of bytes of RAM. It provides an interesting look into how to write a very lightweight script interpreter.

Update XML with XSLT, Apache Ant, Java SE

Learn the method for automating updates to a library of XML files so that they all conform to an updated XML schema in this two part tutorial series. In Part 1, you learn the steps in the entire process, and then create an XSLT stylesheet to update the XML files. In Part 2, you learn to install, configure, and run Ant and Java to iteratively transform your XML files based on the updates specified in your XSLT stylesheet.

The GNU Linear Programming Kit

"The GNU Linear Programming Kit is a powerful, proven tool for solving numeric problems with multiple constraints. Get an introduction to GLPK, the glpsol client utility, and the GNU MathProg language to help find the best solutions to complex numeric problems. Then, learn to solve the problem of optimizing the operations for Giapetto's Woodcarving, Inc., a fictional toy manufacturer."

.NET and Java to Get Better Dynamic Language Support; PHP.NET

With highly expressive syntax that is easy to read, write, and maintain, dynamic programming languages like Python and Ruby are extremely conducive to rapid development. Microsoft and Sun Microsystems have observed growing interest in dynamic programming, and plan to integrate more extensive support for dynamic language features in their respective managed language platforms. Elsewhere, check PHP for .NET.

Building Cheat Sheets in Eclipse 3.2

"Cheat sheets are a great way to guide users of your Eclipse plug-ins or Eclipse-based products through the steps they must follow to use your software. Eclipse V3.2 enhances cheat sheet technology to make them easier to build and more versatile for users. This article gives you a short overview of what's new for cheat sheets in Eclipse V3.2, including the composite cheat sheets feature, and gives good examples of how to use them."

Borland Brings Back Its Turbo Tools

Borland Software's Developer Tools Group is moving back to the company's roots and relaunching its Turbo brand of products - offering the tools both for beginners and nonprogrammers, as well as for professionals. Borland officials said the company is bringing back its Turbo brand of tools as a set of low-cost, language-specific rapid application development tools for students, hobbyist developers, occupational developers and individual programming professionals.

Haskell Programming Equals Coding Without Side Effects

Object-oriented programming with imperative languages like C, C++ and Java has been the norm over the years. But some visionaries argue that other paradigms are more productive. In imperative languages, any method that can possibly return different values, given the same input, has side effects. This article explores the basics of functional programming using Haskell. You to can come to appreciate the raw productivity and power that a functional language can provide and how it eliminates programming side effects.

Tracker: Desktop-Neutral First Class Object Database

"Tracker is a powerful desktop-neutral first class object database, tag/metadata database, search tool and indexer. Tracker is also extremely fast and super efficient with your systems memory when compared with some other competing frameworks. It consists of a common object database that allows entities to have an almost infinte number of properties, metadata, a comprehensive database of keywords/tags and links to other entities. It has the ability to index, store, harvest metadata. retrieve and search all types of files and other first class objects."