rhythmic-sequences 0.4.0.0 → 0.4.1.0
raw patch · 4 files changed
+36/−5 lines, 4 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Rhythmicity.MarkerSeqs: showZerosFor2PeriodMusic :: [(String, Double)] -> (String, [Integer])
Files
- CHANGELOG.md +4/−0
- README.md +11/−4
- rhythmic-sequences.cabal +1/−1
- src/Rhythmicity/MarkerSeqs.hs +20/−0
CHANGELOG.md view
@@ -62,3 +62,7 @@ * Fourth version. Added a new function for working with points of incongruences showZerosFor2Period. +## 0.4.1.0 -- 2023-10-01++* Fourth version revised A. Added new function to be used in the "music" mode of PhLADiPreLiO.+
README.md view
@@ -34,14 +34,21 @@ P.S.: the author would like to devote this project to support the Foundation GASTROSTARS. At the day of publication of the first version of the package (12/03/2023) there is the foundation founder's (this is [Emma Kok](https://www.emmakok.nl)) Birthday. -If you would like to share some financial support, please, contact the foundation++On the 01/10/2023 there are International Music Day and [André's Rieu](https://www.andrerieu.com/en) Birthday. So the version 0.4.1.0 is+additionally devoted to him as well as to the Kok family — [Emma](https://emmakok.nl) and [Enzo](https://enzokok.nl) are amazing and fantastic musicians, Vico+works with PhilZuid, Sophie sings in the classical manner. Nathalie Kok with love to her family and +appreciation for André's Rieu support also celebrates the Day. In Ukraine this day has several +important celebrations — Intercession of the Holy Theotokos (Pokrova), Cossacks' Day, Day of Defenders of Ukraine (especially relevant during the Russian war against Ukraine).++All support is welcome, including donations for the needs of the Ukrainian army, IDPs and refugees. ++If you would like to share some financial support with the Foundation Gastrostars, please, contact the mentioned foundation using the URL: [Contact Foundation GASTROSTARS](https://gastrostars.nl/hou-mij-op-de-hoogte) -or:+or [Donation Page](https://gastrostars.nl/doneren)--The version 0.4.0.0 is devoted to [Enzo Kok](https://www.enzokok.nl) because on the 14th of August is his Birthday.
rhythmic-sequences.cabal view
@@ -2,7 +2,7 @@ name: rhythmic-sequences -- The package version.-version: 0.4.0.0+version: 0.4.1.0 -- A short (one-line) description of the package. synopsis:
src/Rhythmicity/MarkerSeqs.hs view
@@ -28,6 +28,7 @@ import Text.Read import GHC.Enum (fromEnum) import GHC.Arr (listArray,unsafeAt)+import Data.Tuple (fst,snd) -- | The similar function is since @base-4.16.0.0@ in the 'Numeric' module. Is not used -- further, is provided here mostly for testing purposes.@@ -303,3 +304,22 @@ neededsylls = map (map (unsafeAt resSylls)) neededinds breaks = intercalate " ... " . map unwords $ neededsylls +-- | Function for generating the information to be used for evaluation of the points of the uncongruencies' influences on the pauses in the case of the period of the line is equal to 2 (two-syllable meter). Anologue of the 'swohZerosFor2Period' but is intended to be used for the \"music\" mode of PhLADiPreLiO.+-- See for the theoretical idea the paper by the link:+-- https://www.academia.edu/105067761/Why_some_lines_are_easy_to_pronounce_and_others_are_not_or_prosodic_unpredictability_as_a_characteristic_of_text (English text)+-- https://www.academia.edu/105067723/%D0%A7%D0%BE%D0%BC%D1%83_%D0%B4%D0%B5%D1%8F%D0%BA%D1%96_%D1%80%D1%8F%D0%B4%D0%BA%D0%B8_%D0%BB%D0%B5%D0%B3%D0%BA%D0%BE_%D0%B2%D0%B8%D0%BC%D0%BE%D0%B2%D0%BB%D1%8F%D1%82%D0%B8_%D0%B0_%D1%96%D0%BD%D1%88%D1%96_%D0%BD%D1%96_%D0%B0%D0%B1%D0%BE_%D0%BF%D1%80%D0%BE%D1%81%D0%BE%D0%B4%D0%B8%D1%87%D0%BD%D0%B0_%D0%BD%D0%B5%D1%81%D0%BF%D1%80%D0%BE%D0%B3%D0%BD%D0%BE%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D1%96%D1%81%D1%82%D1%8C_%D1%8F%D0%BA_%D1%85%D0%B0%D1%80%D0%B0%D0%BA%D1%82%D0%B5%D1%80%D0%B8%D1%81%D1%82%D0%B8%D0%BA%D0%B0_%D1%82%D0%B5%D0%BA%D1%81%D1%82%D1%83 (Ukrainian text)+showZerosFor2PeriodMusic + :: [(String, Double)] -- The representation of the data to be analysed.+ -> (String, [Integer])+showZerosFor2PeriodMusic qqs = (breaks, rs)+ where rs = concat . countHashesPrioritized . getHashes2 2 [1] . map snd $ qqs+ syllN = length qqs+ indeces = findIndices (== 0) rs+ resSylls = listArray (0,syllN - 1) . map fst $ qqs+ addlist+ | syllN `rem` 2 == 0 = [0,1,2] : ((splitF 2 . take (syllN - 6) $ [3,4..]) `mappend` [[syllN - 3, syllN - 2, syllN - 1]])+ | otherwise = [0,1,2] : (splitF 2 . take (syllN - 3) $ [3,4..])+ arrinds = listArray (0,syllN `quot` 2) addlist+ neededinds = map (unsafeAt arrinds) indeces+ neededsylls = map (map (unsafeAt resSylls)) neededinds+ breaks = intercalate " ... " . map unwords $ neededsylls