{-# LANGUAGE OverloadedStrings #-}
module Language.Lojban.Canonicalization
( basicSentenceCanonicalizer
, extendedSentenceCanonicalizer
, extractSimpleBridi
, normalizeText
) where
import Language.Lojban.Core
import Language.Lojban.Canonicalization.Internals
import Util (replaceSubexpression)
basicSentenceCanonicalizer :: SentenceCanonicalizer
basicSentenceCanonicalizer :: SentenceCanonicalizer
basicSentenceCanonicalizer = SentenceCanonicalizer
canonicalizeText
extendedSentenceCanonicalizer :: SentenceCanonicalizer
extendedSentenceCanonicalizer :: SentenceCanonicalizer
extendedSentenceCanonicalizer = SentenceCanonicalizer
basicSentenceCanonicalizer SentenceCanonicalizer -> (Text -> Text) -> SentenceCanonicalizer
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Text -> Text
replaceQuantifiers where
replaceQuantifiers :: Text -> Text
replaceQuantifiers = (Text -> Text -> Text -> Text
replaceSubexpression Text
"da" Text
"zo'e") (Text -> Text) -> (Text -> Text) -> Text -> Text
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Text -> Text -> Text -> Text
replaceSubexpression Text
"de" Text
"zo'e") (Text -> Text) -> (Text -> Text) -> Text -> Text
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Text -> Text -> Text -> Text
replaceSubexpression Text
"di" Text
"zo'e")