Opal Programming Language Help For Students
Introduction to Opal
The algebraic programming language Opal has been designed as the test bed for experiments with the specification and development of functional programs. Opal is not the end all be all of programming languages. It is not perfect. Neither is it an academic or toy language. Opal is designed for solving real-world, large to small scale programming challenges. Opal unifies the entities of modules, functions/methods, classes and properties into its concepts of object and pattern. It also supports multiple programming paradigms (procedural, object-oriented, functional) allowing it to truly take the place of all the languages it is meant to replace.
Example: Calculates the GCD recursively
Signature file:
{` SIGNATURE GCD FUN GCD: nat ** nat -> nat `}Implementation file:
{` > IMPLEMENTATION GCD IMPORT Nat COMPLETELY DEF GCD(a,b) == IF a % b = 0 THEN b ELSE IF a-b < b THEN GCD(b,a-b) ELSE GCD(a-b,b) FI FI `}
Compiler Download
To get started, see Download and install Opal and follow the instructions.