if ... then ... else ...
Haskellに言語/DSLを埋め込んでいるので、キーワードを削除したいと思います。if
、then
そしてelse
多くのドメインで多くの意味を伝えます。言語/ドメインの性質を反映するようにそれらを再定義(または未定義のまま)できれば素晴らしいと思います。
Googleとstackoverflowで検索しましたが、何も見つかりませんでした。if ... then ... else ...
( Haskellにキーワードとして含まれている理由についての古いスレッドを見つけました。)
私のIDEはLeksahにあり、キーワードを削除できる場合は、キーワードをif ... then ... else ...
通常のフォント/色/太字に戻す設定があると便利です。
if'
forなどの命名規則をすでに試しましif
た。特に、とを定義したい場合は、とを定義する必要があり、代わりに、またはとを定義する必要がある場合は、それほど気分が良くありません。両方の存在とも混乱を招く可能性があります。(DSLのユーザーはHaskellプログラマーであるため、私の状況では混乱はそれほど深刻な問題ではありませんが、他の状況でも役立つと思います)。if
if'
if'
if''
if1
if2
if'
if
これまでの回答の要約:
RebindableSyntax
GHCの拡張機能を使用します。キーワードを削除するほど一般的ではありません。Haskellのif-then-elseの構文は保持されます。(フレリッヒ・ラーベ)- 回避策:を使用して、非常によく似た単語/名前を使用します
data Conditional b a = If b (Then a) (Else a)
(一部のコンテキストでのみ適用可能)。(CAマッキャン)
が比較的新しい機能である場合RebindableSyntax
、少なくとも次のバージョンのGHCまでは、より一般的な方法を見つけることはほとんどありません。