Linux Goodies

In Pursuit Of The Perfect O/S

Home Page Go To Small Telescope Astronomy Writing and Sci Fi humorous science shirt,comical science shirt,funny science shirt,zany science shirt,humorous math shirt,comical math shirt,Pi shirt,Pi day shirt,zany math shirt,funny linux shirt,comical linux shirt,linux nerd shirt,humorous linux shirt,computer geek shirt

Linux and the Computer Programmer

Home

Linux General Info
Migrating from Windows
Programming Languages
Making Documents
Linux on an Old Laptop
Linux User Survey

Linux Astronomy
Kstars Planetarium
Stellarium Planetarium
Xephem Planetarium

Window Manager Reviews
Dwm
Fluxbox
FVWM
Idesk
Icewm
Ratpoison
Window Maker

Linux Hints and Tips
Linux App Hints
Linux Distro Hints
Forth Programming Hints

Linux Lite Apps
MtPaint

Linux Language Reviews
Gforth Review
Linux Matrix Languages
Euler Math Toolbox Review
Octave Language Review
PDL Language Review
R Language Review
Scilab Language Review
Tela Language Review
Yorick Language Review

Linux Virtual Machines
Virtual Machine Intro
Qemu Review
Vbox Review
VMware Review
VM File Sharing
Freedos in DOSEMU
Freedos in QEMU

Linux Distro Reviews
Antix Review
Puppy Linux Review
  Puppy On Flash
  Frugal Puppy

Favorite Sites
Reviewed Products
Science T-shirts
Math T-shirts
Computer T-shirts
Climate Change T-shirts
Science Posters
Digital Art Posters
Witty T-shirts
Bowling T-shirts
Free Craft Howto's
Building a Dobsonian Telescope


Programming Tools and Languages In Linux

Frankly, if you are a programmer, you're gonna love Linux.

Why?

Because you'll likely never see a larger collection of programming languages and utilities in one place. There are a number of popular compiler languages included in most Linux distributions, as well as a sizable collection of scripting languages.

Popular Compilers in Linux

The most popular compiler in the Linux arsenal is probably the gcc compiler. gcc is the Linux C++ compiler. gcc has a plethora of options, including the ability to target compile to a number of popular architectures. Assembly code can be entered in-line in the c or c++ code.

Like Unix, much of Linux is actually written in c and compiled with gcc. In addition to a number of other language compilers, there are conversion utilities to convert some other popular languages to c for use with the gcc compiler.

The following table lists just some of the compilers available in the Debian distribution of Linux:

gcc

GNU c++ compiler

g77

GNU Fortran 77 compiler

gambc

Package that contains gsi(Gambit Scheme Interpreter) and gsc (Gambit Scheme Compiler)

gfortran

The GNU Fortran 95 compiler

gnat

The GNU Java Compiler

gpc

The GNU Pascal Compiler

gprolog

The GNU Prolog Compiler

iconc

The GNU icon compiler, a general purpose language similar to Pascal and c

m2c

Modula-2 to c translator

mono

An open source compiler that produces .NET client and server applications

pocketpc-gcc

GNU C compiler for the Pocket PC

sbcl

A Common Lisp compiler

smarteiffel

The GNU Eiffel compiler


General Purpose Scripting Languages in Linux

Linux is also very rich in its collection of scripting languages. Code written in scripting languages doesn't need to be compiled, but is executed by an interpretive program. With modern ultra-fast computers, scripting languages are more often a quicker way to get to a solution.

The old BASIC languages in the microprocessor days were scripting languages.

Linux has many general purpose scripting languages used to perform text-file manipulation, simple arithmetic, and system functions. Some of these have additional packages that elevate them to more complex and specialized use.

The following table lists just a few of these scripting languages and what they they are commonly used for. Other scripting languages are freely available for Linux, and variations on the listed languages are also available.

bigloo

A practical Scheme language

bwbasic

The Bywater BASIC interpreter

clif

A C language interpreter

clisp

GNU CLISP, a common Lisp implementation

gawk

A pattern scanning and processing language

gforth

The GNU Forth implementation

gnu-smalltalk

The GNU Smalltalk language

nickle

A desk calculator language

perl

Very large tool set language for text file manipulation, system control, and webpage CGI support

python

Another extensively used language than can be extended to mathematics work with available packages. Newer than perl, and generally considered less arcane.

ruby

An interpreter of the object-oriented language Ruby

tcl

General text and arithmetic usage

TK

Extended version of tcl with GUI creation tools

Zazzle Keen Designs T-Shirts and Mugs

Mathematical Scripting Languages in Linux

If you're a mathematics, engineering, or science student, then you'll find that Linux offers you a free large selection for your calculation, data reduction, and modeling needs. Some of these have a Matlab type of nomenclature (Octave is even highly compatible with Matlab), some have more of a FORTRAN style of nomenclature, and many have a c style nomenclature.

The primary means by which these languages provide rapid calculations is that they use matrix operations. In this way, though the languages are scripted instead of compiled, they can do large scale calculations close to the speed of a compiled program.

That is, of course, if you can make maximum use of the matrix operators and avoid programming in extra loops. By expressing your solutions with matrix nomenclature, you allow these programs to use built-in compiled looping mechanism to do large scale calculations quickly.

The following table lists just a few of the scripting languages readily available for free in the Linux world. All those in this list are already within the Debian Etch distribution. Others can be easily obtained.

octave

A scripting language very similar to Matlab. In fact, octave is probably 95% compatible with Matlab.

perl PDL

PDL is an object-oriented extension to the extensive perl language that gives powerful matrix capabilities. Heavily laden with tools for astronomers.

R

R is an object oriented matrix language with considerable statistical analysis support.

scilab

A language with similar nomenclature to Matlab. Unlike most of those listed here, it comes with an IDE and an optional diagrammatic methodology for designing solutions.

tela

A matrix language primarily designed for simulation and pre- and post-processing analysis.

yorick

A c-style language for numerical analysis and simulation. One of the fastest matrix languages I've ever tried.

It's important to note that this impressive list of programming languages, all of which are included in the latest Debian Linux distribution, is incomplete. Incredibly, there are even more compiler and scripting languages available.