在Prolog謂詞,我經常寫這樣的一個重複的條件語句,但我希望他們可以更簡明地寫:switch語句
output(Lang, Type, Output) :-
(Lang = javascript ->
Output = ["function", Type];
Lang = ruby ->
Output = ["def", Type];
Lang = java ->
Output = [Type]).
是否有可能取代這一系列的條件語句一個更簡潔的開關語句?
您在條件下編寫的括號是多餘的。您應該在整個(a-> b; c-> d; e)構造中放置一對括號。當您想要將條件與其他目標結合時,這是避免意外的最佳實踐。 – jschimpf
@jschimpf我解決了這個問題,所以現在看起來更簡潔。 –