{{About|the functional programming language|the Ruby interpreter|Ruby (programming language)#Alternative implementations}}
{{Use dmy dates|date=June 2022|cs1-dates=y}} '''OPAL''' ('''OP'''timized '''A'''pplicative '''L'''anguage)<ref>{{cite web | website=TU-Berlin/opal - Optimized Applicative Language |title=Opal| url=https://github.com/TU-Berlin/opal | access-date=23 September 2023}}</ref> is a [[functional programming language]] first developed at [[Technische Universität Berlin]].
There is a later framework for [[static code analysis]] also called Opal.<ref>{{cite web | website=OPAL Project|title=Home page| url=https://www.opal-project.de/ | access-date=25 November 2023}}</ref>
==Example program== This is an example OPAL program, which calculates the [[Greatest Common Divisor|GCD]] recursively.
; Signature file (declaration)
'''SIGNATURE''' GCD '''FUN''' GCD: nat ** nat -> nat
; Implementation file (definition)
'''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''' ==References==
{{Reflist}}
==External links== * [https://web.archive.org/web/20170823091221/http://projects.uebb.tu-berlin.de/opal/trac The OPAL Home Page], archived, last modified 30 September 2010. * [https://web.archive.org/web/20120426022221/http://projects.uebb.tu-berlin.de/opal/trac/wiki/InstallationEnglish OPAL Installation Guide], archived.
[[Category:Functional languages]]
{{compu-lang-stub}}