簡體   English   中英

if 和 cond 和有什么不一樣?

[英]What is the difference between if and cond?

也許我誤解了一些東西。

在 Hy 中, if*可以取(在if*符號之后)

  • 一個謂詞(如果沒有進一步的表達式,則返回評估)
  • 零或一個結果(如果謂詞為真,則計算並返回)
  • (如果結果存在)零或一個替代方案(如果謂詞為則評估並返回)

如果謂詞為假且未提供替代表達式,則返回 None。

if (不帶星號)可以處理任意數量的謂詞和結果對,如果沒有謂詞求值為真,則計算並返回最終的、可選的非謂詞表達式。

這與cond有何不同,除了cond需要在謂詞-結果對周圍加括號?

cond的方括號提供了隱式do 就是這樣。 我通常只將if用於兩個分支的情況,而cond用於其他所有情況。 if*的存在實際上只是一個實現細節。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM