簡體   English   中英

在DrRacket中使用R5RS方案排序

[英]Sort with R5RS scheme in DrRacket

我正在學習使用DrRacket 7.0版的方案。

我已經從該SO答案復制並修改了以下過程。

#lang racket

(define sort-asc-by-second
  (lambda (lst)
    (sort lst
          (lambda (x y) (< (cdr x) (cdr y))))))

而且效果很好。

現在,我用#lang r5rs更改了#lang racket說明。

DrRacket抱怨以下錯誤:

排序:綁定標識符:排序

我是否忘記在DrRacket中添加某些內容(庫,模塊等)? 或者也許R5RS中沒有sort

按照R5RS報告有沒有這樣的東西sort 您可以從SRFI-95排序和合並中獲取用於sort的參考實現。 它與#lang racket不是100%兼容的。 R5RS沒有庫,因此可移植的方式是load或內聯它。

R6RS取代了R5RS,並且在其標准庫中具有list-sort

R7RS-大,這還沒有完全批准,使用SRFI-132 ,因為它分揀庫(scheme sort)也具有list-stable-sort是一樣的R6RS list-sort

在Racket中,您可以混合和匹配其支持的所有語言的庫,但是它不適用於以不同方式實現的列表,並且是鎖定的。依賴於其他語言的庫意味着您無法在其他實現中運行代碼,像伊卡洛斯(Ikarus)和切斯(Chez)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM