srfi-42.scm 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. ;;; srfi-42.scm --- Eager comprehensions
  2. ;; Copyright (C) 2010 Free Software Foundation, Inc.
  3. ;; This library is free software; you can redistribute it and/or
  4. ;; modify it under the terms of the GNU Lesser General Public
  5. ;; License as published by the Free Software Foundation; either
  6. ;; version 3 of the License, or (at your option) any later version.
  7. ;; This library is distributed in the hope that it will be useful,
  8. ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  10. ;; Lesser General Public License for more details.
  11. ;; You should have received a copy of the GNU Lesser General Public
  12. ;; License along with this library. If not, see
  13. ;; <http://www.gnu.org/licenses/>.
  14. ;;; Commentary:
  15. ;; This module is not yet documented in the Guile Reference Manual.
  16. ;;; Code:
  17. (define-module (srfi srfi-42)
  18. #:export (:
  19. :-dispatch-ref
  20. :-dispatch-set!
  21. :char-range
  22. :dispatched
  23. :do
  24. :generator-proc
  25. :integers
  26. :let
  27. :list
  28. :parallel
  29. :port
  30. :range
  31. :real-range
  32. :string
  33. :until
  34. :vector
  35. :while
  36. any?-ec
  37. append-ec
  38. dispatch-union
  39. do-ec
  40. every?-ec
  41. first-ec
  42. fold-ec
  43. fold3-ec
  44. last-ec
  45. list-ec
  46. make-initial-:-dispatch
  47. max-ec
  48. min-ec
  49. product-ec
  50. string-append-ec
  51. string-ec
  52. sum-ec
  53. vector-ec
  54. vector-of-length-ec))
  55. (cond-expand-provide (current-module) '(srfi-42))
  56. (include-from-path "srfi/srfi-42/ec.scm")