PRM
From Wikipedia, the free encyclopedia
PRM stands for "Program with Refinement and Modules". It is a statically typed object-oriented programming language. The goal of PRM is to propose a statically typed programming language where structure is not a pain.
PRM has a simple straightforward style and can usually be picked up quickly, particularly by anyone who has programmed before. While object-oriented, it allows procedural styles.
The PRM Compiler (prmc) produces efficient machine language binaries. Currently, prmc is a prototype written in Ruby, but a new version written in PRM is planed for this summer.
Some PRM features:
- Pure Object-Oriented.
- Multiple Inheritance.
- Genericity.
- Realistic typing policy (as Eiffel).
- Fine property visibility (as Eiffel).
- Light and clear syntax.
- Easy C binding.
class Int # This is not a class introduction, but a class refinement # This refinement add the fibo function to primitives Int def fibo : Int # the well known fibo function, why a so basic example ... do if self < 1 then return 0 elsif self = 1 then return 1 else return (self - 1).fibo + (self - 2).fibo end end end
[1] PRM Web site