borisshapa / combinatorial-parsers-clj

Combinatorial parsers for parsing mathematical expressions in Java.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Combinatorial parsers

  • Функция (parseObjectSuffix "expression") разбирает выражения, записанные в суффиксной форме.
  • Функция toStringSuffix возвращает строковое представление выражения в этой форме. Например,
    (toStringSuffix (parseObjectSuffix "( ( 2 x * ) 3 - )"))
    
    возвращает ((2 x *) 3 -).
  • Функция (parseObjectInfix "expression") разбирает выражения, записанные в инфиксной форме
  • Функция toStringInfix возвращает строковое представление выражения в этой форме. Например,
    (toStringInfix (parseObjectInfix "2 * x - 3"))
    
    возвращает ((2 * x) - 3).
  • Поддерживаются бинарные правоассоциативные операции максимального приоритета:
    • Pow (**) – возведения в степень: 4 ** 3 ** 2 равно 4 ** (3 ** 2) равно 262144
    • Log (//) – взятия логарифма: 8 // 9 // 3 равно 8 // (9 // 3) равно 3

About

Combinatorial parsers for parsing mathematical expressions in Java.


Languages

Language:Java 91.8%Language:Clojure 8.2%