From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Maxim Cournoyer Newsgroups: gmane.lisp.guile.devel Subject: [PATCH v8 11/16] module: Add (scheme sort). Date: Wed, 6 Dec 2023 18:15:07 -0500 Message-ID: <20231206231512.6505-12-maxim.cournoyer@gmail.com> References: <20231206231512.6505-1-maxim.cournoyer@gmail.com> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="39276"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Maxim Cournoyer To: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Thu Dec 07 00:17:09 2023 Return-path: Envelope-to: guile-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rB18f-0009q9-9O for guile-devel@m.gmane-mx.org; Thu, 07 Dec 2023 00:17:09 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rB17a-0001z6-C3; Wed, 06 Dec 2023 18:16:02 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rB17G-0001nd-5i for guile-devel@gnu.org; Wed, 06 Dec 2023 18:15:45 -0500 Original-Received: from mail-qk1-x729.google.com ([2607:f8b0:4864:20::729]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rB17C-000191-FD for guile-devel@gnu.org; Wed, 06 Dec 2023 18:15:41 -0500 Original-Received: by mail-qk1-x729.google.com with SMTP id af79cd13be357-77d6f853ba0so5631085a.0 for ; Wed, 06 Dec 2023 15:15:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701904535; x=1702509335; darn=gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=DCz/SeHYdWk0bZHe/LdOCYrEAtCeMCJmvhCnY3R+iLw=; b=BLqrK13FCCc6ccqEcm+m9cwvfrd2hZ2gbfuNRgYjWgl/3c9TrmyRRqw3KafCtZRUu0 mZzc5cVO6mRevVtVc0Yd1cfQcOWh73jb07b/nqBuWfB4CKfMWYssxMSrq1H77naaFSi9 XSZRT3je6RB6fFLk/PvR3ZrEhuAe3EBt4GMpE5tsnHUJ8VIZTKmzj5aTofQhp/8ixFvg ORaP88E6EPHtzN5IxVchNQZ9S0DJtC2x4tu7So1K/+hy8zT2c/2GBwYLUGPw/TKoJMyE uBCXuJgvC97CUkNqlo98Nfu1npIpJGA0hdbOnvZ/KIFFw6EPDwafiCaPV1WP6cI/7jF8 eFsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701904535; x=1702509335; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=DCz/SeHYdWk0bZHe/LdOCYrEAtCeMCJmvhCnY3R+iLw=; b=WFYIv6ub87rrJ/+FsFbRwB4XjuN/VhsxwfwT5ITjDRoDHXHSYWLGYzrobORoBT2CCQ 1VBsK47dFxvIlA0fpArQnob1Q3DlgJ3yeDrWge1xapgPuUafcW5sD869mSe3aVaSp7ty avzUl1laZEhLwJrplBTgJ4KzX5zFrD7JeCAd2DMD7V05d9zfdE1zkl6HGF/nTrBFGVrG xP5TesNx9pR3vmdYrdBLybxhI5vrGy43X+rS6iM3mj5Hp4MWVZWAnyXXC4VQqiYFP/b+ Ti7a2XKUFrQjgJEYYhwrQSDLnQ1k4TjoqQpli4WmO/g6oLRnx8O+m+DYCOVviQFLNaqJ LG9Q== X-Gm-Message-State: AOJu0YysKmgBeVBJUAdMo6CBtZLYHoFhq1UIt/qXI29rm1bsowi0aVU4 0wVwj6C6nUsrNxGMtM1CKVp8mVgs7M0= X-Google-Smtp-Source: AGHT+IHRBLsq5pfbFJgKg0GliC6GhN6SHAG0QRYTOIxCMegSAe1rukPnNj1DCoO9Bu+znQnnv4V24w== X-Received: by 2002:a05:620a:8c92:b0:77f:29e5:3906 with SMTP id ra18-20020a05620a8c9200b0077f29e53906mr305552qkn.52.1701904534969; Wed, 06 Dec 2023 15:15:34 -0800 (PST) Original-Received: from localhost.localdomain (dsl-10-130-68.b2b2c.ca. [72.10.130.68]) by smtp.gmail.com with ESMTPSA id re18-20020a05620a8e1200b0077d8ad77069sm3400qkn.26.2023.12.06.15.15.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 06 Dec 2023 15:15:34 -0800 (PST) X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231206231512.6505-1-maxim.cournoyer@gmail.com> Received-SPF: pass client-ip=2607:f8b0:4864:20::729; envelope-from=maxim.cournoyer@gmail.com; helo=mail-qk1-x729.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Original-Sender: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.lisp.guile.devel:22212 Archived-At: * module/scheme/sort.sld: New R7RS library shim for (rnrs sorting). * am/bootstrap.am (SOURCES): Register it. * NEWS: Update NEWS. --- (no changes since v5) Changes in v5: - Update NEWS NEWS | 1 + am/bootstrap.am | 1 + module/scheme/sort.sld | 21 +++++++++++++++++++++ 3 files changed, 23 insertions(+) create mode 100644 module/scheme/sort.sld diff --git a/NEWS b/NEWS index 45023d9fb..614a2bc7f 100644 --- a/NEWS +++ b/NEWS @@ -24,6 +24,7 @@ the compiler reports it as "possibly unused". ** Add (srfi 126), a hash tables library ** Add (srfi 128), a comparators library ** Add (scheme comparator) +** Add (scheme sort) * Bug fixes diff --git a/am/bootstrap.am b/am/bootstrap.am index ba5cd7291..17e70bff8 100644 --- a/am/bootstrap.am +++ b/am/bootstrap.am @@ -295,6 +295,7 @@ SOURCES = \ scheme/r5rs.scm \ scheme/read.scm \ scheme/repl.scm \ + scheme/sort.sld \ scheme/time.scm \ scheme/write.scm \ \ diff --git a/module/scheme/sort.sld b/module/scheme/sort.sld new file mode 100644 index 000000000..d8b560d1f --- /dev/null +++ b/module/scheme/sort.sld @@ -0,0 +1,21 @@ +;;; sorting.sld --- R7RS library exposing (rnrs sorting). + +;;; Copyright (C) 2023 Free Software Foundation, Inc. +;;; +;;; This library is free software: you can redistribute it and/or modify +;;; it under the terms of the GNU Lesser General Public License as +;;; published by the Free Software Foundation, either version 3 of the +;;; License, or (at your option) any later version. +;;; +;;; This library is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;;; Lesser General Public License for more details. +;;; +;;; You should have received a copy of the GNU Lesser General Public +;;; License along with this program. If not, see +;;; . + +(define-library (scheme sort) + (export list-sort vector-sort vector-sort!) + (import (rnrs sorting))) -- 2.41.0