gnu: Add cpupower.
[jackhill/guix/guix.git] / gnu / packages / language.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
3 ;;;
4 ;;; This file is part of GNU Guix.
5 ;;;
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
10 ;;;
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ;;; GNU General Public License for more details.
15 ;;;
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
18
19 (define-module (gnu packages language)
20 #:use-module (gnu packages)
21 #:use-module (gnu packages perl)
22 #:use-module (gnu packages web)
23 #:use-module (guix packages)
24 #:use-module (guix build-system perl)
25 #:use-module ((guix licenses) #:select (gpl2 gpl3))
26 #:use-module (guix download))
27
28 (define-public perl-lingua-en-findnumber
29 (package
30 (name "perl-lingua-en-findnumber")
31 (version "1.30")
32 (source
33 (origin
34 (method url-fetch)
35 (uri (string-append "mirror://cpan/authors/id/N/NE/NEILB/"
36 "Lingua-EN-FindNumber-" version ".tar.gz"))
37 (sha256
38 (base32
39 "0g5h6bwwggizwh3dd3xyx92537s4qy8nspshp1lrm9qlxh3prc28"))))
40 (build-system perl-build-system)
41 (propagated-inputs
42 `(("perl-lingua-en-words2nums" ,perl-lingua-en-words2nums)))
43 (home-page "http://search.cpan.org/dist/Lingua-EN-FindNumber")
44 (synopsis "Locate (written) numbers in English text ")
45 (description "This module provides a regular expression for finding
46 numbers in English text. It also provides functions for extracting and
47 manipulating such numbers.")
48 (license (package-license perl))))
49
50 (define-public perl-lingua-en-inflect
51 (package
52 (name "perl-lingua-en-inflect")
53 (version "1.895")
54 (source
55 (origin
56 (method url-fetch)
57 (uri (string-append "mirror://cpan/authors/id/D/DC/DCONWAY/"
58 "Lingua-EN-Inflect-" version ".tar.gz"))
59 (sha256
60 (base32
61 "0drzg9a2dkjxgf00n6jg0jzhd8972bh3j4wdnmdxpqi3zmfqhwcy"))))
62 (build-system perl-build-system)
63 (native-inputs `(("perl-module-build" ,perl-module-build)))
64 (home-page "http://search.cpan.org/dist/Lingua-EN-Inflect")
65 (synopsis "Convert singular to plural")
66 (description "Lingua::EN::Inflect provides plural inflections,
67 \"a\"/\"an\" selection for English words, and manipulation of numbers as
68 words. Plural forms of all nouns, most verbs, and some adjectives are
69 provided. Where appropriate, \"classical\" variants (for example: \"brother\"
70 -> \"brethren\", \"dogma\" -> \"dogmata\", etc.) are also provided.")
71 (license (package-license perl))))
72
73 (define-public perl-lingua-en-inflect-number
74 (package
75 (name "perl-lingua-en-inflect-number")
76 (version "1.11")
77 (source
78 (origin
79 (method url-fetch)
80 (uri (string-append "mirror://cpan/authors/id/N/NE/NEILB/"
81 "Lingua-EN-Inflect-Number-" version ".tar.gz"))
82 (sha256
83 (base32
84 "0rvgrff96ja7fqr79dszmiyv2wz4izw82znah0mx9szkir657gfz"))))
85 (build-system perl-build-system)
86 (propagated-inputs
87 `(("perl-lingua-en-inflect" ,perl-lingua-en-inflect)))
88 (home-page "http://search.cpan.org/dist/Lingua-EN-Inflect-Number")
89 (synopsis "Force number of words to singular or plural")
90 (description "This module extends the functionality of Lingua::EN::Inflect
91 with three new functions for determining plurality of a word and forcefully
92 converting a word to singular or plural.")
93 (license (package-license perl))))
94
95 (define-public perl-lingua-en-inflect-phrase
96 (package
97 (name "perl-lingua-en-inflect-phrase")
98 (version "0.18")
99 (source
100 (origin
101 (method url-fetch)
102 (uri (string-append "mirror://cpan/authors/id/R/RK/RKITOVER/"
103 "Lingua-EN-Inflect-Phrase-" version ".tar.gz"))
104 (sha256
105 (base32
106 "19prg6pkgnznrc82ymdkdi3l9schg815axjig7adca5yqa7mn2i9"))))
107 (build-system perl-build-system)
108 (native-inputs
109 `(("perl-test-nowarnings" ,perl-test-nowarnings)))
110 (propagated-inputs
111 `(("perl-lingua-en-findnumber" ,perl-lingua-en-findnumber)
112 ("perl-lingua-en-inflect" ,perl-lingua-en-inflect)
113 ("perl-lingua-en-inflect-number" ,perl-lingua-en-inflect-number)
114 ("perl-lingua-en-number-isordinal" ,perl-lingua-en-number-isordinal)
115 ("perl-lingua-en-tagger" ,perl-lingua-en-tagger)))
116 (home-page "http://search.cpan.org/dist/Lingua-EN-Inflect-Phrase")
117 (synopsis "Inflect short English phrases")
118 (description "This module attempts to pluralize or singularize short
119 English phrases.")
120 (license (package-license perl))))
121
122 (define-public perl-lingua-en-number-isordinal
123 (package
124 (name "perl-lingua-en-number-isordinal")
125 (version "0.04")
126 (source
127 (origin
128 (method url-fetch)
129 (uri (string-append "mirror://cpan/authors/id/R/RK/RKITOVER/"
130 "Lingua-EN-Number-IsOrdinal-" version ".tar.gz"))
131 (sha256
132 (base32
133 "1321fm4pyqcamffd0qsjm1gb07ijqndlb29qkcqf22kaibngfm4i"))))
134 (build-system perl-build-system)
135 (native-inputs
136 `(("perl-try-tiny" ,perl-try-tiny)
137 ("perl-test-fatal" ,perl-test-fatal)))
138 (propagated-inputs
139 `(("perl-lingua-en-findnumber" ,perl-lingua-en-findnumber)))
140 (home-page "http://search.cpan.org/dist/Lingua-EN-Number-IsOrdinal")
141 (synopsis "Detect if English number is ordinal or cardinal")
142 (description "This module will tell you if a number, either in words or as
143 digits, is a cardinal or ordinal number.")
144 (license (package-license perl))))
145
146 (define-public perl-lingua-en-tagger
147 (package
148 (name "perl-lingua-en-tagger")
149 (version "0.24")
150 (source
151 (origin
152 (method url-fetch)
153 (uri (string-append "mirror://cpan/authors/id/A/AC/ACOBURN/"
154 "Lingua-EN-Tagger-" version ".tar.gz"))
155 (sha256
156 (base32
157 "0qksqh1zi8fz76a29s2ll4g6yr8y6agmzgq7ngccvgj3gza5q241"))))
158 (build-system perl-build-system)
159 (propagated-inputs
160 `(("perl-memoize-expirelru" ,perl-memoize-expirelru)
161 ("perl-lingua-stem" ,perl-lingua-stem)
162 ("perl-html-parser" ,perl-html-parser)
163 ("perl-html-tagset" ,perl-html-tagset)))
164 (home-page "http://search.cpan.org/dist/Lingua-EN-Tagger")
165 (synopsis "Part-of-speech tagger for English natural language processing")
166 (description "This module is a probability based, corpus-trained tagger
167 that assigns part-of-speech tags to English text based on a lookup dictionary
168 and a set of probability values. The tagger assigns appropriate tags based on
169 conditional probabilities - it examines the preceding tag to determine the
170 appropriate tag for the current word. Unknown words are classified according
171 to word morphology or can be set to be treated as nouns or other parts of
172 speech. The tagger also extracts as many nouns and noun phrases as it can,
173 using a set of regular expressions.")
174 (license gpl3)))
175
176 (define-public perl-lingua-en-words2nums
177 (package
178 (name "perl-lingua-en-words2nums")
179 (version "0.18")
180 (source
181 (origin
182 (method url-fetch)
183 (uri (string-append "mirror://cpan/authors/id/J/JO/JOEY/"
184 "Lingua-EN-Words2Nums-" version ".tar.gz"))
185 (sha256
186 (base32
187 "118xx8qr1zbx30psv7ic55w65h15mc1vz6zicshfm96jgiwmcrb8"))))
188 (build-system perl-build-system)
189 (home-page "http://search.cpan.org/dist/Lingua-EN-Words2Nums")
190 (synopsis "Convert English text to numbers")
191 (description "This module converts English text into numbers. It supports
192 both ordinal and cardinal numbers, negative numbers, and very large numbers.")
193 (license (package-license perl))))
194
195 (define-public perl-lingua-pt-stemmer
196 (package
197 (name "perl-lingua-pt-stemmer")
198 (version "0.01")
199 (source
200 (origin
201 (method url-fetch)
202 (uri (string-append "mirror://cpan/authors/id/X/XE/XERN/"
203 "Lingua-PT-Stemmer-" version ".tar.gz"))
204 (sha256
205 (base32
206 "11rqc5pqnkl9c13vy7sihiyas14ci0pj3k6chrgrgjv5sjv2m4a5"))))
207 (build-system perl-build-system)
208 (home-page "http://search.cpan.org/dist/Lingua-PT-Stemmer")
209 (synopsis "Portuguese language stemming")
210 (description "This module implements a Portuguese stemming algorithm
211 proposed in the paper A Stemming Algorithm for the Portuguese Language by
212 Moreira, V. and Huyck, C.")
213 (license (package-license perl))))
214
215 (define-public perl-lingua-stem
216 (package
217 (name "perl-lingua-stem")
218 (version "0.84")
219 (source
220 (origin
221 (method url-fetch)
222 (uri (string-append "mirror://cpan/authors/id/S/SN/SNOWHARE/"
223 "Lingua-Stem-" version ".tar.gz"))
224 (sha256
225 (base32
226 "12avh2mnnc7llmmshrr5bgb473fvydxnlqrqbl2815mf2dp4pxcg"))))
227 (build-system perl-build-system)
228 (native-inputs
229 `(("perl-module-build" ,perl-module-build)))
230 (propagated-inputs
231 `(("perl-lingua-pt-stemmer" ,perl-lingua-pt-stemmer)
232 ("perl-lingua-stem-fr" ,perl-lingua-stem-fr)
233 ("perl-lingua-stem-it" ,perl-lingua-stem-it)
234 ("perl-lingua-stem-ru" ,perl-lingua-stem-ru)
235 ("perl-lingua-stem-snowball-da" ,perl-lingua-stem-snowball-da)
236 ("perl-snowball-norwegian" ,perl-snowball-norwegian)
237 ("perl-snowball-swedish" ,perl-snowball-swedish)
238 ("perl-text-german" ,perl-text-german)))
239 (home-page "http://search.cpan.org/dist/Lingua-Stem")
240 (synopsis "Stemming of words in various languages")
241 (description "This routine applies stemming algorithms to its parameters,
242 returning the stemmed words as appropriate to the selected locale.")
243 (license (package-license perl))))
244
245 (define-public perl-lingua-stem-fr
246 (package
247 (name "perl-lingua-stem-fr")
248 (version "0.02")
249 (source
250 (origin
251 (method url-fetch)
252 (uri (string-append "mirror://cpan/authors/id/S/SD/SDP/"
253 "Lingua-Stem-Fr-" version ".tar.gz"))
254 (sha256
255 (base32
256 "0vyrspwzaqjxm5mqshf4wvwa3938mkajd1918d9ii2l9m2rn8kwx"))))
257 (build-system perl-build-system)
258 (home-page "http://search.cpan.org/dist/Lingua-Stem-Fr")
259 (synopsis "Porter's stemming algorithm for French")
260 (description "This module uses a modified version of the Porter Stemming
261 Algorithm to return a stemmed French word.")
262 (license (package-license perl))))
263
264 (define-public perl-lingua-stem-it
265 (package
266 (name "perl-lingua-stem-it")
267 (version "0.02")
268 (source
269 (origin
270 (method url-fetch)
271 (uri (string-append "mirror://cpan/authors/id/A/AC/ACALPINI/"
272 "Lingua-Stem-It-" version ".tar.gz"))
273 (sha256
274 (base32
275 "1207r183s5hlh4mfwa6p46vzm0dhvrs2dnss5s41a0gyfkxp7riq"))))
276 (build-system perl-build-system)
277 (home-page "http://search.cpan.org/dist/Lingua-Stem-It")
278 (synopsis "Porter's stemming algorithm for Italian")
279 (description "This module applies the Porter Stemming Algorithm to its
280 parameters, returning the stemmed Italian word.")
281 (license (package-license perl))))
282
283 (define-public perl-lingua-stem-ru
284 (package
285 (name "perl-lingua-stem-ru")
286 (version "0.01")
287 (source
288 (origin
289 (method url-fetch)
290 (uri (string-append "mirror://cpan/authors/id/A/AL/ALGDR/"
291 "Lingua-Stem-Ru-" version ".tar.gz"))
292 (sha256
293 (base32
294 "0pqgg442fkf12ayh9fgmpa8q9x0iqx6s96181r52yn7s7pcs61h6"))))
295 (build-system perl-build-system)
296 (home-page "http://search.cpan.org/dist/Lingua-Stem-Ru")
297 (synopsis "Porter's stemming algorithm for Russian")
298 (description "This module applies the Porter Stemming Algorithm to its
299 parameters, returning the stemmed Russian (KOI8-R only) word.")
300 (license (package-license perl))))
301
302 (define-public perl-lingua-stem-snowball-da
303 (package
304 (name "perl-lingua-stem-snowball-da")
305 (version "1.01")
306 (source
307 (origin
308 (method url-fetch)
309 (uri (string-append "mirror://cpan/authors/id/C/CI/CINE/"
310 "Lingua-Stem-Snowball-Da-" version ".tar.gz"))
311 (sha256
312 (base32
313 "0mm0m7glm1s6i9f6a78jslw6wh573208arxhq93yriqmw17bwf9f"))))
314 (build-system perl-build-system)
315 (home-page "http://search.cpan.org/dist/Lingua-Stem-Snowball-Da")
316 (synopsis "Porters stemming algorithm for Danish")
317 (description "Lingua::Stem::Snowball::Da is a perl port of the danish
318 stemmer at http://snowball.sourceforge.net, it was originally altered from the
319 Lingua::Stem::Snowball::Se.")
320 (license gpl2)))
321
322 (define-public perl-snowball-norwegian
323 (package
324 (name "perl-snowball-norwegian")
325 (version "1.2")
326 (source
327 (origin
328 (method url-fetch)
329 (uri (string-append "mirror://cpan/authors/id/A/AS/ASKSH/"
330 "Snowball-Norwegian-" version ".tar.gz"))
331 (sha256
332 (base32
333 "0675v45bbsh7vr7kpf36xs2q79g02iq1kmfw22h20xdk4rzqvkqx"))))
334 (build-system perl-build-system)
335 (native-inputs `(("perl-module-build" ,perl-module-build)))
336 (home-page "http://search.cpan.org/dist/Snowball-Norwegian")
337 (synopsis "Porters stemming algorithm for Norwegian")
338 (description "Lingua::Stem::Snowball::No is a perl port of the norwegian
339 stemmer at http://snowball.tartarus.org.")
340 (license (package-license perl))))
341
342 (define-public perl-snowball-swedish
343 (package
344 (name "perl-snowball-swedish")
345 (version "1.2")
346 (source
347 (origin
348 (method url-fetch)
349 (uri (string-append "mirror://cpan/authors/id/A/AS/ASKSH/"
350 "Snowball-Swedish-" version ".tar.gz"))
351 (sha256
352 (base32
353 "0agwc12jk5kmabnpsplw3wf4ii5w1zb159cpin44x3srb0sr5apg"))))
354 (build-system perl-build-system)
355 (native-inputs `(("perl-module-build" ,perl-module-build)))
356 (home-page "http://search.cpan.org/dist/Snowball-Swedish")
357 (synopsis "Porters stemming algorithm for Swedish")
358 (description "Lingua::Stem::Snowball::Se is a perl port of the swedish
359 stemmer at http://snowball.sourceforge.net.")
360 (license (package-license perl))))
361
362 (define-public perl-string-toidentifier-en
363 (package
364 (name "perl-string-toidentifier-en")
365 (version "0.11")
366 (source
367 (origin
368 (method url-fetch)
369 (uri (string-append "mirror://cpan/authors/id/R/RK/RKITOVER/"
370 "String-ToIdentifier-EN-" version ".tar.gz"))
371 (sha256
372 (base32
373 "1bawghkgkkx7j3avnrj5sg3vix1z5564ks6wf9az3jc2knh8s5nh"))))
374 (build-system perl-build-system)
375 (propagated-inputs
376 `(("perl-lingua-en-inflect-phrase" ,perl-lingua-en-inflect-phrase)
377 ("perl-text-unidecode" ,perl-text-unidecode)
378 ("perl-namespace-clean" ,perl-namespace-clean)))
379 (home-page "http://search.cpan.org/dist/String-ToIdentifier-EN")
380 (synopsis "Convert strings to English program identifiers")
381 (description "This module provides a utility method, \"to_identifier\" for
382 converting an arbitrary string into a readable representation using the ASCII
383 subset of \"\\w\" for use as an identifier in a computer program. The intent
384 is to make unique identifier names from which the content of the original
385 string can be easily inferred by a human just by reading the identifier.")
386 (license (package-license perl))))
387
388 (define-public perl-text-german
389 (package
390 (name "perl-text-german")
391 (version "0.06")
392 (source
393 (origin
394 (method url-fetch)
395 (uri (string-append "mirror://cpan/authors/id/U/UL/ULPFR/"
396 "Text-German-" version ".tar.gz"))
397 (sha256
398 (base32
399 "1p87pgap99lw0nv62i3ghvsi7yg90lhn8vsa3yqp75rd04clybcj"))))
400 (build-system perl-build-system)
401 (home-page "http://search.cpan.org/dist/Text-German")
402 (synopsis "German grundform reduction")
403 (description "This module is a rather incomplete implementation of work
404 done by Gudrun Putze-Meier.")
405 (license (package-license perl))))