boolowski parser wyrażeń w java

Czy są jakieś biblioteki java lub techniki przetwarzania fragmentarycznych wyrażeń boolowskich?

Mam na myśli wyrażenie takie jak to:

T && ( F || ( F && T ) )

Można go podzielić na drzewo wyrażeń, aby pokazać, który token spowodował wartość „F”, tak (może coś takiego):

T &&               <- rhs false
    ( F ||         <- rhs false
        ( F && T ) <- eval, false
    )

Próbuję przekazać oceny wyrażeń logicznych nieprogramiściom. Grzebałem w Anlr, ale nie mogłem tego zrobić (wydaje się, że ma trochę krzywej uczenia się).

Nie sprzeciwiam się pisaniu go samemu, ale wolałbym nie odkrywać na nowo koła.

questionAnswers(5)

yourAnswerToTheQuestion