Ich bin ein Anfänger und ich versuche, die primitive Funktion foldl/foldr zu verstehen. Ich lese die documentation und versuchte ein paar Dinge. aber ich kann einfach nicht begreifen, sein Verhalten in diesem Fall:Verständnis der primitiven "foldl" in Racket
(foldl expt 2 '(1 2 3 4))
>> 262144
ich glaube, das Ergebnis sollte das gleiche sein wie:
(expt (expt (expt (expt 2 1) 2) 3) 4)
>> 16777216
Ich kann nicht nachvollziehen foldl da die Funktion ein primitive ist. Ich sehe nicht, wie das Verfahren dieses Ergebnis erreicht. Ich benutze Racket und Dr. Racket.
Dieser Beitrag kann auch hilfreich sein: http://stackoverflow.com/questions/39018163/expanded-form-of-fold-in-racket – rnso