summaryrefslogtreecommitdiff
path: root/gnu/packages/haskell.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/haskell.scm')
-rw-r--r--gnu/packages/haskell.scm62
1 files changed, 61 insertions, 1 deletions
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 4aa17d1718d..7639731edfc 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -4,7 +4,7 @@
4;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> 4;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
5;;; Copyright © 2015, 2019 Eric Bavier <bavier@member.fsf.org> 5;;; Copyright © 2015, 2019 Eric Bavier <bavier@member.fsf.org>
6;;; Copyright © 2016, 2018, 2019, 2021, 2026 Ludovic Courtès <ludo@gnu.org> 6;;; Copyright © 2016, 2018, 2019, 2021, 2026 Ludovic Courtès <ludo@gnu.org>
7;;; Copyright © 2016, 2017 Nikita <nikita@n0.is> 7;;; Copyright © 2013, 2016, 2017 Nikita <nikita@n0.is>
8;;; Copyright © 2016, 2022, 2024 Efraim Flashner <efraim@flashner.co.il> 8;;; Copyright © 2016, 2022, 2024 Efraim Flashner <efraim@flashner.co.il>
9;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2022 Ricardo Wurmus <rekado@elephly.net> 9;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2022 Ricardo Wurmus <rekado@elephly.net>
10;;; Copyright © 2016, 2017 David Craven <david@craven.ch> 10;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
@@ -116,6 +116,66 @@
116top of CLISP.") 116top of CLISP.")
117 (license license:bsd-4)))) 117 (license license:bsd-4))))
118 118
119(define-public hugs
120 (package
121 (name "hugs")
122 (version "Sep2006")
123 (source
124 (origin
125 (method url-fetch)
126 (uri (string-append "https://www.haskell.org/hugs/downloads/2006-09/"
127 name "98-plus-" version ".tar.gz"))
128 (sha256
129 (base32
130 "1mdy4aq4campgmnpc2qwq7bsbfhaxfsqdghbyyz2wms4lnfcmyma"))
131 (patches (search-patches "hugs-fix-build.patch"))))
132 (build-system gnu-build-system)
133 (arguments
134 `(#:phases
135 (modify-phases %standard-phases
136 (add-before 'configure 'fix-sh-n-cp
137 (lambda _
138 (substitute*
139 '("configure"
140 "libraries/configure"
141 "packages/time/configure"
142 "packages/base/configure"
143 "packages/X11/configure"
144 "packages/HGL/configure"
145 "packages/OpenAL/configure"
146 "packages/OpenGL/configure"
147 "packages/network/configure"
148 "packages/unix/configure"
149 "packages/Cabal/tests/HSQL/configure"
150 "packages/ALUT/configure"
151 "packages/GLUT/configure"
152 "packages/base/cbits/execvpe.c"
153 "packages/base/System/Process/Internals.hs"
154 "packages/Cabal/Distribution/attic"
155 "packages/Cabal/Distribution/Simple/Register.hs"
156 "packages/Cabal/Distribution/Simple/Hugs.hs"
157 "tools/hugs-hc"
158 "src/machdep.c"
159 "libraries/Makefile.in")
160 (("/bin/sh") (which "sh")))
161 (substitute* '("demos/Makefile.in"
162 "libraries/Makefile.in")
163 (("/bin/cp") (which "cp")))
164 #t)))
165 #:tests? #f)) ; no test target
166 (native-inputs (list gcc-13))
167 (home-page "https://www.haskell.org/hugs/")
168 (synopsis "Functional programming system based on Haskell 98")
169 (description
170 "Hugs 98 is an interpreter and programming environment for developing
171Haskell programs. It provides an almost complete implementation of Haskell
17298, which includes expression and pattern syntax, primitives for monadic I/O,
173with support for simple interactive programs, handle-based I/O, and exception
174handling. Hugs has a nearly complete implementation of the Haskell module
175system and supports a number of advanced extensions.")
176 (license (license:non-copyleft "file://License"
177 "See License in the distribution."))))
178
119;; This package contains lots of generated .hc files containing C code to 179;; This package contains lots of generated .hc files containing C code to
120;; bootstrap the compiler without a Haskell compiler. The included .hc files 180;; bootstrap the compiler without a Haskell compiler. The included .hc files
121;; cover not just the compiler sources but also all Haskell libraries. 181;; cover not just the compiler sources but also all Haskell libraries.