我看到有關於點「」的other questions。 我遵循,但它不適用於我的代碼.... 它是代碼的一部分,實現不集中在此符號。 但輸出應該包含在這個點。 當我給兩個列表 '(1 2 3)'(4 5) 我的預期輸出=>(1。4)(2。5)。「在計劃
我設法得到(1 4)(2 5的輸入) 只需要添加「。」在中間。
Part of mycode
(cons (list (car lst1) (car lst2))
....
爲「。」符號,如果我嘗試
**trial-1**
(cons '(list (car lst1) (car lst2)) ...)
則輸出:((名單(汽車LST1)(汽車LST2))
**trail-2**
(cons (list (car lst1) '. (car lst2)) ...)
然後..它說:非法使用`「
。什麼用點?任何文件的規則我可以看看? 順便說一句,我使用的球拍(R5RS)。
我的代碼是... cons(list ...和你的代碼... list(cons ... =>(我只是試着用我自己的話,看到我理解正確);因爲點當我建立cons-pair時,符號將被「自動」顯示出來,但是我的錯誤是我先建立一個列表,然後利用它,所以它不顯示虛線符號,因爲列表不適合顯示虛線符號。如果代碼先建立cons對,然後從cons對結果中建立一個列表,以便顯示虛線符號....對嗎? – user1915570
@ user1915570 mmm,我最好說點符號有這是一個特殊的含義,所以你不能使用它作爲一個「正常」的符號,當你顯示具有特定結構的'cons'單元格時顯示,但你不能明確地將它添加到你的列表中 –
也有你解釋「意思是:它不會以空列表結束「。究竟是什麼意思呢?因爲我的出身(代碼的一部分)...(列表(cons lst2)).... myFunc是尾遞歸部分...輸出是這樣的:(myFunc'(1 2 3)'(abc))=>((1。 a)((2。b)((3。c)())))....我最後得到空列表。 – user1915570