Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
clean-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
15
Issues
15
List
Boards
Labels
Service Desk
Milestones
Merge Requests
2
Merge Requests
2
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
clean-and-itasks
clean-platform
Commits
8866fbcd
Verified
Commit
8866fbcd
authored
Jan 06, 2018
by
Camil Staps
🚀
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add Text.Language
parent
c28cd6c8
Pipeline
#8767
passed with stage
in 1 minute and 41 seconds
Changes
3
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
35 additions
and
0 deletions
+35
-0
src/libraries/OS-Independent/Text/Language.dcl
src/libraries/OS-Independent/Text/Language.dcl
+9
-0
src/libraries/OS-Independent/Text/Language.icl
src/libraries/OS-Independent/Text/Language.icl
+25
-0
tests/linux64/test.icl
tests/linux64/test.icl
+1
-0
No files found.
src/libraries/OS-Independent/Text/Language.dcl
0 → 100644
View file @
8866fbcd
definition
module
Text
.
Language
::
Language
=
English
isVowel
::
Language
Char
->
Bool
isConsonant
::
Language
Char
->
Bool
pluralise
::
Language
String
->
String
pluralisen
::
Language
Int
String
->
String
src/libraries/OS-Independent/Text/Language.icl
0 → 100644
View file @
8866fbcd
implementation
module
Text
.
Language
import
StdArray
import
StdBool
from
StdFunc
import
id
import
StdList
import
StdString
import
Text
isVowel
::
Language
Char
->
Bool
isVowel
English
c
=
isMember
c
[
'aeiou'
]
isConsonant
::
Language
Char
->
Bool
isConsonant
l
c
=
not
(
isVowel
l
c
)
pluralise
::
Language
String
->
String
pluralise
English
s
|
last
==
'y'
&&
(
isConsonant
English
forelast
||
forelast
==
'u'
)
=
s
%
(
0
,
size
s
-2
)
+++
"ies"
=
s
+++
"s"
where
(
last
,
forelast
)
=
(
s
.[
size
s
-1
],
s
.[
size
s
-2
])
pluralisen
::
Language
Int
String
->
String
pluralisen
English
n
s
=
n
<+
" "
<+
if
(
n
==
1
)
id
(
pluralise
English
)
s
tests/linux64/test.icl
View file @
8866fbcd
...
@@ -132,6 +132,7 @@ import qualified Text.Encodings.MIME
...
@@ -132,6 +132,7 @@ import qualified Text.Encodings.MIME
import
qualified
Text
.
Encodings
.
UrlEncoding
import
qualified
Text
.
Encodings
.
UrlEncoding
import
qualified
Text
.
HTML
import
qualified
Text
.
HTML
import
qualified
Text
.
JSON
import
qualified
Text
.
JSON
import
qualified
Text
.
Language
import
qualified
Text
.
LaTeX
import
qualified
Text
.
LaTeX
import
qualified
Text
.
PPrint
import
qualified
Text
.
PPrint
import
qualified
Text
.
Parsers
.
CParsers
.
ParserCombinators
import
qualified
Text
.
Parsers
.
CParsers
.
ParserCombinators
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment