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.
ML
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.)