>On Mon, Dec 09, 2024 at 11:37:33AM +0000, Ricardo G. Herdt wrote: >> Hi Jeremy, >> >> Am 09.12.2024 11:21 schrieb Jeremy Korwin-Zmijowski: >> > The reference says : >> > >> > Scheme Procedure: *sorted?* items less >> > C Function: *scm_sorted_p* (items, less) >> > >> > Return |#t| if items is a list or vector such that, for each >> > element x and the next element y of items, |(less y x)| returns >> > |#f|. Otherwise return |#f|. >> > >> > I think the description should be : >> > >> > Return |#t| if items is a list or vector such that, for each element >> > x and the next element y of items, |(less y x)| returns |#t|. >> > Otherwise return |#f|. >> >> Actually no, since less is applied to y and x in that order. This way >> (sorted? '(1 1) <) correctly returns #t as your experiments show. >I don't get it. (< 1 1) is /always/ #f, regardless of the order of the ones?
Please read the description closely. (< 1 1) returns #false, so ‘sorted?’ returns #false according to the first description.