Lisp начинался как математическая запись вычислительной модели, чтобы у лектора был лучший инструмент, чем машины Тьюринга. Случайно оказывается, что это может быть реализовано в ассемблере - таким образом, lisp, язык программирования родился.
Но я не думаю, что это действительно то, что вы ищете, поскольку вычислительная модель, описанная в lisp, не имеет циклов: вместо этого используется рекурсия. Синтаксис происходит от алгебры, где фигурные скобки обозначают оценку-это-и-заменитель-результат. Действительно, модель вычислений в Лиспе - это, по сути, замена - то, что по сути является алгеброй.
Действительно, большинство функциональных языков, таких как Lisp, Haskell и Erlang, являются производными от математики. Хаскель на самом деле является результатом доказательства того, что лямбда-исчисление может быть использовано для реализации систем типов. Так что Хаскелл, как Лисп, родился из чистой математики. Но опять же, синтаксис не тот, к которому вы, вероятно, привыкли бы.
Вы, конечно, можете объяснить синтаксис Lisp и Haskell математикам, и они воспримут это как "игру". Языковые конструкции, такие как циклы, рекурсия и условные выражения, могут быть проверены вне правил игры, а не реализованы вслепую, как в других языках. Это привело бы вас в сферу комбинатроники, еще одной области математики. Действительно, в комбинатронике даже концепция чисел может быть построена из правил игры, а не как часть языка (церковные цифры Google).
Так что взгляните на Lisp / Scheme, Erlang и Haskell, если хотите. Эрланг особенно имеет синтаксис, близкий к тому, что вы хотите:
add(a,b) -> a + b
Но я рекомендую писать в C-подобном псевдокоде. Это своего рода самый низкий общий знаменатель в языках программирования. Имеет синтаксис, который довольно легко понять и очистить. И синтаксис функции даже происходит от функций в математике. Помните f(x)
?
Как плюс, математики привыкли писать C, статистики - писать C (хотя обычно они предпочитают R), физики - писать C, программисты привыкли хотя бы смотреть на C (я знаю несколько, кто никогда не трогал C).
На самом деле, поцарапайте это. Вы упоминаете, что вашей целевой аудиторией являются статистики. Пишите в R