This page contains links to random, interesting
programming languages related stuff. Lots of links to
interesting languages and learning materials.
A functional language based on ML. VMl based with
laziness, higher-order modules, packages, components
and constraints.
A formal language environment implementing the OBJ
formal specification language. The language implements
algebraic theories and insitutions providing both
formal analysis capabilities and executability. CafeOBJ
differs from most langauges in that it is highly formal
with a clean mathematical syntax.
The first business programming language
An alternate implementation of Lisp that shares many
concepts with Scheme. While Scheme is intended to be
small and highly consistent, Common Lisp has an
expansive feature set. Of particular interest is the
excellent object-oriented extension called CLOS (Common
Lisp Object System).
A functional / parallel programming language. Erlang
computations are purely functional and embedded in a
parallel programming language based on the pi calculus.
A synchronous language used for describing control
systems and hardware systems. Synchronous refers to the
concept of a clock and triggering execution on changes
in signals.
The first scientfic programming language
A domain specific language built on Haskell for
functional representation of music. We may play around
with Haskore in one of our projects.
A call-by-value, strict, functional language somewhat
like Haskell in appearance, but very different in
implementation. The ML module system and type inference
systems are quite interesting. ML and it's derivative
OCAML have attracted significant recent interest.
A strictly typed, structured programming language with
a powerful module system. Developed by Nicholas Wirth.
An extension of Modula-2 that added a powerful
object-oriented capability, among other modern
features. Initially was considered competition for
Java.
A multiparadigm programming langauge.
An object-oriented derivative of ML. Growing in
popularity in several areas such as network
programming.
Perl is among the most popular scripting languages
currently in use. With bindings to many libraries, a
powerful pattern matching capability, and many other
scripting features, you will definitely find Perl
useful for scripting, CGI writing and other day-to-day
tasks. Perl will be installed by default in virtually
any Linux environment. Take a look at the FAQ and info
to find out more.
A superset of Java that adds function pointers,
generics and algebraic types
A widely used logic programming language. Instead of
describing how a computation is performed, properties
of the solution are defined. The prolog interpreter
takes the problem description and determines how to
satisfy it. Prolog is particularly popular in the
European artificial intelligence community.
Rapidly approaching perl, python is another example of
a scripting language useful for day-to-day computing
tasks. Although python shares features with perl, it is
much better suited for developing larger applications.
It's dictionary capability is particularly useful and
interesting. Python will be installed by default on any
Linux environment. Take a look at the FAQ and info to
find out more.
An object-oriented scripting language.
A language whose basic data structures and operations
center on using sets.
Largely viewed as the first fully object oriented
language, SmallTalk was developed in the 1970s and
still enjoys substantial usage. The terms "message" and
"method" commonly used in describing object oriented
systems emerged from the SmallTalk language. While
languages like Common Lisp, C++ and Java use generic
functions to implement object-oriented features,
SmallTalk uses the classic message-method approach.
Loosely defined, a message is sent to an object
requesting an action be performed. The object responds
with a method associated with the message. Note that
this is not parallel programming or message passing in
the distributed programming sense.
A special purpose simulation language for digital
hardware systems. VHDL is much like Ada in style, but
much different in implementation. VHDL centers on
entities that represent chips or processes. A
collection of interconnected entities is used to
describe a system. All entities execute in parallel and
respond to changes in signals to control execution.
While traditional languages traditionally check the
value of a variable, VHDL signals can be monitored for
changes in value using wait statements and sensitivity
lists. Electrical Engineers and Computer Engineers at
KU learn VHDL in EECS 443.
Programming langauge designer or serial killer. Can you
tell the difference?
The first object-oriented language
A second generation scientific programming language
A language that depends exclusively on function
composition for definition.
A teaching language use commonly in the 1980's.
Structured, strongly typed, with pointers. (My first
modern language.)