phonetic-languages-simplified-examples-array: Helps to create Ukrainian texts with the given phonetic properties.

[ Ukrainian, game, language, library, math, mit, phonetic-languages, program ] [ Propose Tags ]

Uses more functionality of the arrays and lists. The vector-related functionality is removed and this made the executables and libraries much more lightweight. Deal the Ukrainian as one of the phonetic languages. For the brief introduction in English, please, refer to: https://functional-art.org/2020/papers/Poetry-OleksandrZhabenko.pdf. Since the version 0.3.0.0 the package has the multiple variations mode for lineVariantsG3 executable that allows to use modifications in the text, e. g. synonyms, paraphrases etc.


[Skip to Readme]
Versions [RSS] [faq] 0.1.0.0, 0.1.1.0, 0.1.2.0, 0.2.0.0, 0.2.1.0, 0.2.2.0, 0.3.0.0, 0.4.0.0, 0.4.0.1, 0.4.1.0, 0.4.2.0, 0.5.0.0, 0.5.0.1, 0.6.0.0, 0.6.1.0, 0.6.2.0, 0.7.0.0, 0.8.0.0, 0.8.1.0, 0.9.0.0, 0.10.0.0, 0.10.1.0, 0.11.0.0, 0.11.0.1, 0.11.1.0, 0.11.2.0, 0.11.3.0, 0.12.0.0, 0.12.1.0, 0.13.0.0, 0.13.1.0, 0.14.0.0, 0.14.1.0, 0.15.0.0, 0.15.1.0 (info)
Change log CHANGELOG.md
Dependencies base (>=4.8 && <4.15), heaps (>=0.3.6.1 && <1), mmsyn2-array (>=0.1.3 && <1), parallel (>=3.2.0.6 && <4), phonetic-languages-constraints-array (>=0.1 && <1), phonetic-languages-filters-array (>=0.1 && <1), phonetic-languages-permutations-array (>=0.1 && <1), phonetic-languages-plus (>=0.2 && <1), phonetic-languages-rhythmicity (>=0.6.0.1 && <1), phonetic-languages-simplified-base (>=0.1 && <1), phonetic-languages-simplified-examples-common (>=0.1.1 && <1), phonetic-languages-simplified-properties-array (>=0.5 && <1), phonetic-languages-ukrainian-array (>=0.2.1 && <1), subG (>=0.4 && <1), ukrainian-phonetics-basic-array (>=0.1.2 && <1), uniqueness-periods-vector-stats (>=0.2.1 && <1) [details]
License MIT
Copyright (c) 2020-2021 Oleksandr Zhabenko
Author OleksandrZhabenko
Maintainer olexandr543@yahoo.com
Category Language, Math, Game
Home page https://hackage.haskell.org/package/phonetic-languages-simplified-examples-array
Uploaded by OleksandrZhabenko at 2021-08-09T16:30:03Z
Distributions NixOS:0.12.1.0
Executables propertiesTextG3, rewritePoemG3, lineVariantsG3
Downloads 7317 total (452 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2021-08-09 [all 1 reports]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Candidates


Readme for phonetic-languages-simplified-examples-array-0.7.0.0

[back to package description]
The short (possibly) instruction how to use the programs
of the package phonetic-languages-simplified-examples-array
in Ukrainian is here:

https://web.archive.org/web/20210809161957/https://oleksandrzhabenko.github.io/uk/Instruction_phonetic-languages-simplified-examples-array-0.7.0.0.pdf

The instruction in English is here:

https://web.archive.org/web/20210809162431/https://oleksandrzhabenko.github.io/uk/Eng-Ukrainian_as_a_Phonetic_Language_Instructions-0.7.0.0.pdf

Since the version 0.2.0.0 there exists also comparative
mode for the rewritePoemG3 executable. It allows to
create from two files with the text variants the new one.
For more information in Ukrainian, please, refer to the
instruction above to the part of the rewritePoemG3
executable.

Since the version 0.4.0.0 added new line of rhythmicity
evaluation functions ("z"-line). The behaviour of the
previous functions also changed, so it may be needed
(in case where the results have some principal meaning,
e. g. in scientific research, not the text itself)
to recalculate the results using these functions.
Added the possibility to get the Ukrainian informational
messages during the work of the lineVariantsG3
executable (using the "+u" command line option not inside
the groups of options).

Since the version 0.5.0.0 added two new lines with more
complex behaviours ("w" and "x" lines). For more
information, please, refer to the section 'WX argument'
in the instructions above.

Since the version 0.6.0.0 changed the command line
arguments modifiers notation to the small letters,
removed the double ++ sign (changed to just single
+) to simplify the command line arguments usage.
Also changed the way to sign the writing to file for
the lineVariantsG3 executable. Added new lines of
properties for the (hypothetic) polyrhythmicity
handling. Among them "c", "s", "t", "u", "v" lines
are. Added the possibility to 'grow lines' for the
rewritePoemG3 and propertiesTextG3 executables.

* Examples of usage

1) lineVariantsG3:

lineVariantsG3 <first argument> [<WX argument> <whether to print the values of the property(ies)> <whether the last word must remain on its place>] <numeric arguments> <property type> <Ukrainian text>

or:

lineVariantsG3 <first argument> [<WX argument> <whether print the values of the property(ies)> <whether the last word must remain on its place>] <numeric arguments> <property type> <Ukrainian text> <somewhere among the arguments as a single group: constraints>

More partucular example of the abovementioned one:

lineVariantsG3 10.0_1.2 zz2 садок вишневий коло хати хрущі над вишнями гудуть (the Ukrainian text here and further is
from the Taras Shevchenko poem)

lineVariantsG3 10.0_1.2 5 5 1 2 04z садок вишневий коло хати хрущі над вишнями гудуть 

lineVariantsG3 +m 02y 3 03z 3 y0 10 -m +bl <Ukrainian text>

lineVariantsG3 +i +bl 4.3_ +m 02y 3 0y 3 y0 20 y2 40 04z 3 -m садок вишневий коло хати хрущі над вишнями гудуть

lineVariantsG3 +f hello.txt +bl +m 02y 3 0y 3 04y 5 y0 40 z4 50 -m садок вишневий коло хати хрущі над вишнями гудуть

To get the Ukrainian informational messages during the
work of the executable (instead of the default English
ones), please, use the "+U" command line option anywhere
not inside the groups of the options.

You can also use multiple variations mode to look at the
synonyms, paraphrases etc.

For this, use instead of just the text as the last
arguments the following special construction:

{ <variant1 of the Ukrainian text> / <variant2 of the Ukrainian text> / ... / <variantN of the Ukrainian text> }

with at least two variants inside the curly brackets.
They will be processed in chain with the one variant of
each and the possibility to choose at the end between
these different ones, which finally results in a single
line.

Please, remember that the program provides processing for
every combination of the variations so if you specify too
many of them (e. g. 3 variants of one word and 4 variants
of the another one will lead to 3*4 = 12 variations
possible), the processing while getting the final result
can become longer than expected.

2) propertiesTextG3:

propertiesTextG3 <first argument> [<WX argument> <whether to grow lines>] <file with Ukrainian text> <control of the quantity of the intervals> <control of printing the line of the text, too> <control of the sectioning into the lines> <property type>

propertiesTextG3 <first argument> [<WX argument> <whether to grow lines>] <file with Ukrainian text> <control of the quantity of the intervals> <control of printing the line of the text, too> <control of the sectioning into the lines> <property type> | distributionTextG <the same argument of the quantity of the lines> <whether to output also by-line statistics>

PowerShell -Command "propertiesTextG3 <first argument> [<WX argument> <whether to grow lines>] <file with Ukrainian text> <control of the quantity of the intervals> <control of printing the line of the text, too> <control of the sectioning into the lines> <property type> | distributionTextG  <the same argument of the quantity of the lines> <whether to output also by-line statistics>”

Note: Below the +RTS -N --RTS corresponds to the
architectures where the parallelism is possible so that
-N is one of the possible options for RTS. If the
following with RTS arguments does not work, then remove
the +RTS -N --RTS block from the command line. One of the
examples where RTS does not support parallelism of this
kind is armhf (e. g. Linux on Raspberry PI in 32-bit mode).

propertiesTextG3 sadok0.txt +RTS -N --RTS s 1 0 +m y0 0y 02z 03y z2 y3 yyy -m

propertiesTextG3 sadok0.txt +RTS -N --RTS s 1 0 03z +b | distributionTextG s 1 +W

propertiesTextG3 sadok0.txt +RTS -N --RTS s 1 0 03z +g73 +b | distributionTextG s 1 +W

propertiesTextG3 <filepath to the file with the Ukrainian text for analysis> @n

3) rewritePoemG3:

rewritePoemG3 <first argument> [<whether to grow lines>] <file with the Ukrainian text> <property type> <numeric arguments>

rewritePoemG3 +c <file1> <file2> <file3> (all the files must be different and simultaneously the first two ones must
exist already with some text, otherwise, the program gives no meaningful result).