2つの関数がありますが、一方の関数はもう一方の関数からのみ呼び出されるため、ヘルパー関数をインライン化します。私のコードは次のようになります。
data PoS = N | V | Adj | Adv | Phr
posEntity :: Parser PoS
posEntity =
do pos <- string "N." <|>
string "V." <|>
string "Adj." <|>
string "Adv." <|>
string "Phr."
return (posToPoS pos)
<?> "part of speech"
posToPoS pos
| pos == "N." = N
| pos == "V." = V
| pos == "Adj." = Adj
| pos == "Adv." = Adv
| pos == "Phr." = Phr
明らかにposToPoSはインライン化する必要がありますが、そのようなことを行うために必要な構文がわかりません。
ありがとう!