2013-04-04 18 views

Odpowiedz

7

Ta informacja jest moją interpretacją robienia archeologii w repozytorium Clojure git.

Pierwotnie był tylko rest, który zwrócił nil zamiast listy emtpy, tak jak dzisiaj. Kiedy Rich wprowadził lazyness, zmieniono nazwę na next, a ISeq zyskał metodę more. ASeq implementuje metodę more, aby zwrócić pustą wartość seq zamiast nil i pozostawia streszczenie metonimu . W pewnym momencie funkcja rest została przywrócona do życia jako wersja inna niż pusta, przywracająca listę, którą znamy dzisiaj, ale kod Java nie został refaktoryzowany.