Top 1,000 Features Creators Resources Blog Explore Download
GitHub icon

Refal

< >

Refal is a programming language created in 1968 by Valentin Turchin.

#910on PLDB 56Years Old

Refal (Recursive functions algorithmic language) "is functional programming language oriented toward symbol manipulation", including "string processing, translation, [and] artificial intelligence". It is one of the oldest members of this family, first conceived in 1966 as a theoretical tool with the first implementation appearing in 1968. Refal was intended to combine mathematical simplicity with practicality for writing large and sophisticated programs. Read more on Wikipedia...


Example from hello-world:
$ENTRY Go { = <Hello>;} Hello { = <Prout 'Hello World'>; }
* Hello world in Refal $ENTRY Go { = <Hello>;} Hello { = <Prout 'Hello world'>; }
Example from Wikipedia:
Squeeze { '__'e.1 = <Squeeze '_'e.1>; s.A e.1 = s.A <Squeeze e.1>; = ; };

Language features

Feature Supported Token Example
Strings ✓ '
'Hello world'
Print() Debugging ✓
Comments ✓
* A comment
Line Comments ✓ *
* A comment
Semantic Indentation X

View source

- Build the next great programming language · About · Acknowledgements · Extensions · Day 624 · feedback@pldb.io