|
The Falcon Programming Language |
 vote
 |
|
Falcon, as described by its creator...
What prompted the creation of Falcon? Part of my daily job was taking care of the status of servers streaming real time data through financial networks. A scripting facility in the control application would have been a godsend, as the alert conditions were too complex to be determined, constantly shifting and requiring constant supervision. I was not new to the topic, as I previously worked on the XHarbour project (a modern porting of the xbase languages), and I also did some research in the field. read more... |
|
| | mail this link | permapage | score:9615 | -Ray, April 9, 2009 |
|
Introduction to the R programming language |
 vote
 |
|
An introduction to R and its basic usage...
R (http://www.r-project.org) is an integrated suite of software tools for data manipulation, calculation, and graphical display. It provides a huge set of statistical and graphical techniques such as linear and nonlinear modelling, statistical tests, time series analysis, non-parametric statistics, generalized linear models, classification, clustering, bootstrap, and many others. R is being developed for the Unix, Windows, and MacOS operating systems.
The core of R is an interpreted computer language that allows branching and looping as well as modular programming using functions read more... |
|
| | mail this link | permapage | score:9134 | -Ray, May 7, 2007 |
|
Programming Language Tradeoffs: 3GL vs 4GL |
 vote
 |
|
Level of Abstraction The level of abstraction that a programming language provides is all about tradeoffs. Lower level languages (I'll inaccurately call them 3GL's) supply a few small operations which can be combined with great flexibility to accomplish almost anything. The cost, of course, is in the time-consuming detail in which each and every bit of code must be cast. Conversely, high level languages (loosely, 4GL's) and application generators include meta-operations which provide much more functionality for a given amount of code. Once again, there is a cost. Here the big penalty is a loss of flexibility -- which is proportional to the size of the functional units. There are a prohibitively large number of ways in which a few small operations can be combined to create large ones. Therefore, only the most common of these large functions can be reasonably implemented in a high level language before the point of diminishing returns is reached. As the language integrates more large functions into its syntax, its complexity eventually reaches a point where a high level of skill is required to use it effectively.
Special-purpose Libraries The original distinction between 3GL and 4GL languages has long been blurred by the availability of prepackaged libraries. For example, there are a wide variety of special-purpose function and class libraries on the market for C and C++. These tools lets experienced programmers use their general-purpose language skills while adding only the specialized components needed to complete an application. The details of using the library follow the patterns that they already know, leaving them to learn only the minimum necessary to write their specialized program.
Applications Generators Meanwhile, programming with some application generators no longer resembles traditional coding -- but the same type of decisions are being made and the same kind of work is being done. The units of functionality are larger, of course, and the methods of manipulating the chunks of logic are usually different as well. Only if the generator is a good match for the application, however, will the potential productivity advantage of this approach be fully achieved. In selecting such a tool, the same tradeoffs that apply to the choice of 4GL's versus 3GL's must be considered. Application generators don't represent a fundamental change in the nature of programming but rather just another point in the continuum of low and high-level programming.
Intermediate Code To blur the distinction further, the ability of some 4GL's to generate 3GL intermediate code would seem to give the developer the best of both worlds. It retains the productivity of high-level programming and provides access to the machine efficiency and low-level flexibility of a 3GL -- just as the libraries for 3GL's seem to do. While this approach should result in an environment that is as flexible as the 3GL alone, it comes with a tradeoff. To exercise the flexibility of the 3GL it becomes necessary to program in two languages, which increases maintenance costs and training requirements.
The Right Tool for the Job Versus Expertise Further complicating the issue is the matter of expertise. A very specialized language may be the most productive for a particular application. However, experts in a more generalized language might complete the application on schedule more predictably than would neophytes with a special-purpose language. Of course, the practitioners of the general-purpose language get more opportunities to hone their skills.
Because of this effect, choosing the best language for each particular application might not always be the optimum overall strategy.
[The author codes in C and PHP and no longer uses COBOL, Atari BASIC, Visual BASIC, FORTRAN, ALGOL, Natural, RPG, or IBM 370 Assembly.]
|
|
| | mail this link | permapage | score:9068 | -Ray, June 24, 2001 (Updated: November 29, 2002) |
|
Newbie guide to programming languages |
 vote
 |
|
Five top languages described and compared...
You may notice that I didn't list Java or PHP. Why not? Because they're primarily used to write software that runs Web servers. Java (which despite the name has nothing to do with JavaScript) is sometimes used to write desktop applications or cellphone games, but it's relatively complex and I don't recommend it as a first langauge. PHP is a little simpler, but it isn't used much outside Web servers and for most beginning programmers, you're better off with another language. read more... |
|
| | mail this link | permapage | score:8733 | -Ray, June 28, 2009 |
|
Programming Language Popularity Statistics |
 vote
 |
|
There is a wealth of interesting statistics in this concise little article. If you're looking for a programming job, it just might help you decide which language to bone up on.
We examine four sources of information. First, the raw number of results found with Google's search engine. We also look at dollars per click information gleaned from an online advertising service (Overture). In other words, how much it costs you, the advertiser, per click for ads placed with search terms such as “java consulting” or “perl training”. In addition, to look at the open source community's take on the situation, we look at projects registered with freshmeat. We also use the Craig's List (http://www.craigslist.org) job search board as a source for very rough job statistics. read more... |
|
| | mail this link | permapage | score:8616 | -Ray, September 25, 2004 |
|
The D Programming Language |
 vote
 |
|
The performance of C with the productivity of Ruby?
Why create a new programming language? Because C++ is complicated and expensive to implement. Most C++ programmers get accustomed to using certain feature sets and never touch any others, because it is too hard to remember them all. This is not a problem for the compiler, but for other programmers trying to read the code it can be, because they might be used to other feature sets. D avoids this problem, because it was hugely simplified without removing important features. But that is not the only benefit D has. read more... |
|
| | mail this link | permapage | score:8420 | -Ray, January 17, 2008 |
|
The TCL Programming Language |
 vote
 |
|
Tcl creator John Ousterhout describes the uses and inspiration for TCL...
The original goal for Tcl was to make it easy to build applications with powerful command languages. At the time I didn't envision Tcl being used as a stand-alone programming language, though that is probably the way that most people have used it. read more... |
|
| | permapage | score:8390 | -Ray, May 11, 2009 |
|
Ten Programming Languages to Learn... |
 vote
 |
|
Or, at least, consider...
"Don't get fixated on one or two languages. When I started in 1969, FORTRAN, COBOL and S/360 Assembler were the big tickets. Today, Java, C and Visual Basic are. In 10 years time, some new set of languages will be the 'in thing.' …At last count, I knew/have learned over 24 different languages in over 30 years," Wayne Duqaine, director of Software Development at Grandview Systems, of Sebastopol, Calif., told eWEEK. read more... |
|
| | permapage | score:8305 | -Ray, September 18, 2006 |
|
Which Programming Language to Choose? (for Linux) |
 vote
 |
|
Make mine C.
...Let me begin by listing the five contenders: C, C++, Java, Python and Perl. There are, of course, lots of other programming languages; however, references to these five appear more than most, especially in the Linux world.
Before looking at each language in turn, there is one thing we can say about them all: they are general-purpose and can be used for most any programming task. A general distinction is that C and C++ are compiled languages, much like Fortran, whereas Python and Perl are interpretive, like most versions of BASIC. Java is somewhere in the middle; source code is compiled into an intermediate format which is then interpreted... read more... |
|
| | mail this link | permapage | score:7901 | -Ray, February 19, 2001 (Updated: June 24, 2003) |
|
Introduction to the Ruby Programming Language |
 vote
 |
|
'Hello World!', loops, and more, with code examples.
Readers who know how to use some other scripting language, such as Perl, will benefit most from this series. Joshua begins his exploration into Ruby with a discussion of variables, quotes, arrays, objects, and methods. Subsequent articles in this Ruby series will deal with more advanced topics, including developing graphical applications and using Ruby with databases. read more... |
|
| | permapage | score:7801 | -Ray, August 13, 2001 (Updated: July 8, 2003) |
|
Ruby: Productive Programming Language |
 vote
 |
|
More good press for Ruby.
"Every few years something significant happens in the land of computer programming. In my opinion the Ruby computer language is such a landmark."
"Over the years I have seen programmer productivity go up. These are no hard measured calculations, but I have the impression that every five years the speed of delivering software doubles. Not only that, the curve for writing maintainable software appears to increase linearly too. A lot of that speed can be attributed to the tools of a developer, and core to these tools is the computer language." read more... |
|
| | mail this link | permapage | score:7755 | -Ray, March 25, 2002 |
|
The Economics of Programming Languages |
 vote
 |
|
A related article is Programming Language Tradeoffs: 3GL vs 4GL
PHP, for example, wasn't a novelty when it was created. As a language, it's nothing particularly innovative compared with others of its kind. However, it did dynamic web pages really well, and very easily compared to other systems available at the time. I recall setting up mod_perl and installing various components that often had version requirements. It was a pain compared to the more tightly integrated PHP setup. Another example, as mentioned above, was the combination of Tk with Tcl for scripting GUIs. Tcl is well suited to a variety of tasks, from running on Cisco routers to doing web scripting itself, but Tk was its home run, and what it became known for. read more... |
|
| | mail this link | permapage | score:7670 | -Ray, July 20, 2005 |
|
Introduction to D, the programming language |
 vote
 |
|
A new language for us old C coders who don't want to give up all the good features of C...
D is a (relatively) new addition to the C family of programming languages, intended as a successor to C++ but also incorporating ideas and improvements from other C-like languages such as Java and C#. It is an object-oriented, garbage-collected, systems programming language that is compiled to executable rather than bytecode. The specification and reference compiler are currently at version 0.82, and are expected to reach 1.0 within the year. The reference compiler runs on both Windows and Linux x86, and the frontend if Open-Sourced. A port of the frontend to GCC is underway and already functional on Linux x86 and Mac OS X. read more... |
|
| | mail this link | permapage | score:7631 | -Ray, April 20, 2004 |
|
Tutorial: Unix Assembly Language Programming |
 vote
 |
|
When you absolutely must have the maximum possible code speed and flexibility.
This document is intended to be a tutorial, showing how to write a simple assembly program in several UNIX operating systems on IA32 (i386) platform. Included material may or may not be applicable to other hardware and/or software platforms. Document explains program layout, system call convention, and build process. It accompanies Linux Assembly HOWTO, which may be of your interest as well, though is more Linux specific... read more... |
|
| | mail this link | permapage | score:7592 | -Angela, June 17, 2000 (Updated: July 26, 2003) |
|
Why the C programming language is here to stay |
 vote
 |
|
Almost everything I write these days is in C -- with the notable exception of this website, written in PHP -- and I see no compelling reason to change that.
The answer is that although C++ is better than C, it's not that much better. In other words, the cost of converting C programs to C++ out weighs the benefit of conversion. Another problem is that there are not enough C++ programmers out there. So many companies faced with a huge amount of C code and a large number of C programmers, tend to stay with C. That's not to say that C++ won't grow in popularity in the future, but for now there's still a lot of C out there. read more... |
|
| | mail this link | permapage | score:6744 | -Ray, January 28, 2002 (Updated: June 16, 2003) |
|
|