回答
乍一看,你的問題並沒有真正使任何意義。 「引用」是一種可以在源代碼片段的基準上執行的功能。 「引用」運行時間值最多是空操作,最糟糕的是無意義。
你的問題中的例子說明了爲什麼它沒有任何意義。您所謂的quoteresult
表單將評估(+ 1 1)
以生成'2
,但'2
評估爲2
,(+ 1 1)
評估的結果與此相同。 quoteresult
的結果與普通評估有什麼不同?
但是,如果要真正地產生quote
表達將被切換到一些使用動態評價(與通常的免責聲明that is probably a bad idea),那麼你只需要生成兩個元素的列表:符號quote
和你的函數的結果。如果是這樣的話,你可以實現quoteresult
很簡單:
(define (quoteresult x)
(list 'quote x))
這一點,但是,對於大多數程序用處不大。
有關報價是什麼以及工作原理的更多信息,請參閱What is the difference between quote and list?。
我需要引用結果,因爲我正在構建基於輸入的計劃程序的引用表示。一旦建成,我將對其進行評估。在這之前,我必須引用裏面的每個列表來確保eval函數不會試圖將列表頭部應用到其尾部。 –
@FordO。所以你說你想要結果是* list *'(quote 2)'?也就是說,評估表達式'(list'quote 2)''的結果? –
@FordO。爲什麼你首先評估表格?如果你不知道怎麼做'quoteresult',我想你可以跳過評估他們呢? – Sylwester
- 1. 如何在方案中調用函數
- 2. 函數調用函數WEIRD結果
- 3. 調用javascript函數結果函數
- 4. 調用的函數,而另一個函數調用的結果
- 5. 如何調用稍後使用的函數結果?
- 6. 調用Web文檔的函數結果
- 7. 調用未定義的函數結果()
- 8. 如何將http調用的結果作爲方法的結果?
- 9. 如何使用方案在另一個函數中調用函數?
- 10. 如何使用函數結果調用變量名稱?
- 11. 調用scala方法中的函數時意外的結果
- 12. 方案如果結構
- 13. 函數的回調結果
- 14. 如何從函數外部返回JSONP調用的結果?
- 15. 如何解釋模板函數調用的gcov結果
- 16. 如何從另一個函數的結果調用jquery
- 17. 如何從Python函數中檢索調用腳本的結果?
- 18. 如何從具有$ .ajax調用的函數返回結果
- 19. 如何調用另一個函數的結果R
- 20. 如何從德爾塔函數調用Lua的結果
- 21. 如何將函數調用的結果傳遞給指令?
- 22. 如何從MySQL Workbench中的結果集中調用函數?
- 23. 如何將函數的結果傳遞給子調用?
- 24. 如何在Struts 2 JSP中打印函數調用的結果?
- 25. Nodejs如何使用函數的回調結果
- 26. 有沒有方法來decltype不可調用函數的結果?
- 27. 方法定義爲ClojureScript函數調用的結果
- 28. 調用函數,呼應結果
- 29. 調用PL/pgSQL函數忽略結果
- 30. 函數調用沒有結果集
雖然這是一個非常基本的問題,但很難谷歌任何方案的學習材料。 –
[計算機程序的結構和解釋](https://mitpress.mit.edu/sicp/),[如何設計程序](http://www.htdp.org)。 – molbdnilo