Блог типа

Язык Твой Враг Твой

Конечно же, новый язычок не мог обойтись без гибкой концепции процедурных блоков.

  BLOCK Add 
  	VAR x, y, res INTEGER
  	PAR x, y, res* FUNC res(x, y) 
  BEGIN
  	a + b -> res
  END Add
  
  Add[1, 2, fx]
  Add[x: 1, y: 2, res::fx]
  Add(1, 2) -> fx
  Add(x: 1, y: 2) -> fx
  1 \Add 2 -> fx

Тут тебе и процедура, и процедура с переменным числом параметров, и функция, и наличие именованных параметров, и даже, не может быть, инфиксный вызов (надо ограничить его только для одного и двух операндов)!