-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A library to work with the basic Ukrainian phonetics and syllable segmentation. -- -- A library to work with the basic Ukrainian phonetics and syllable -- segmentation. Rewritten from the mmsyn6ukr and mmsyn7s packages. -- Comparing to the ukrainian-phonetics-basic package, all the -- vector-related functionality removed, it also removed from the -- dependencies and the mmsyn2 is changed to mmsyn2-array. @package ukrainian-phonetics-basic-array @version 0.3.0.0 -- | Functions provide functionality of a musical instrument synthesizer or -- for Ukrainian speech synthesis especially for poets, translators and -- writers. Is rewritten from the module Melodics.Ukrainian from the -- mmsyn6ukr package : -- 'https://hackage.haskell.org/package/mmsyn6ukr' Phonetic -- material is taken from the : -- -- Solomija Buk, Ján Mačutek, Andrij Rovenchak. Some properties of the -- Ukrainian writing system. [Electronic resource] -- https://arxiv.org/ftp/arxiv/papers/0802/0802.4198.pdf module Melodics.ByteString.Ukrainian.Arr convertToProperUkrainianS :: String -> String -- | A variant of the convertToProperUkrainian with the -- ByteString result. convertToProperUkrainianB :: String -> ByteString isUkrainianL :: Char -> Bool linkFileName :: Char -> Char showInteresting :: String -> ByteString instance GHC.Show.Show Melodics.ByteString.Ukrainian.Arr.Triple instance GHC.Classes.Ord Melodics.ByteString.Ukrainian.Arr.Triple instance GHC.Classes.Eq Melodics.ByteString.Ukrainian.Arr.Triple -- | This module works with syllable segmentation in Ukrainian. It is -- rewritten module MMSyn7.Syllable from the mmsyn7s package : -- https://hackage.haskell.org/package/mmsyn7s module Languages.Phonetic.Ukrainian.Syllable.Arr data UZPP a b UZ :: a -> b -> UZPP a b data PhoneticType W :: PhoneticType S :: PhoneticType O :: PhoneticType D :: PhoneticType K :: PhoneticType L :: PhoneticType M :: PhoneticType N :: PhoneticType E :: PhoneticType type UZPP2 = UZPP Char PhoneticType phoneType :: UZPP2 -> PhoneticType charUkr :: UZPP2 -> Char str2UZPP2s :: String -> [UZPP2] -- | Function-predicate isVowel1 checks whether its argument is a -- vowel representation in the UZPP2 format. isVowel1 :: UZPP2 -> Bool -- | Function-predicate isVwl checks whether its argument is a vowel -- representation in the Char format. isVwl :: Char -> Bool -- | Function-predicate isSonorous1 checks whether its argument is a -- sonorous consonant representation in the UZPP2 format. isSonorous1 :: UZPP2 -> Bool -- | Function-predicate isVoicedC1 checks whether its argument is a -- voiced consonant representation in the UZPP2 format. isVoicedC1 :: UZPP2 -> Bool -- | Function-predicate isVoiceless1 checks whether its argument -- is a voiceless consonant representation in the UZPP2 format. isVoicelessC1 :: UZPP2 -> Bool -- | Binary function-predicate isNotVowel2 checks whether its -- arguments are both consonant representations in the UZPP2 -- format. isNotVowel2 :: UZPP2 -> UZPP2 -> Bool -- | Binary function-predicate notEqC checks whether its arguments -- are not the same consonant sound representations (not taking -- palatalization into account). notEqC :: UZPP2 -> UZPP2 -> Bool -- | Function sndGroups converts a Ukrainian word being a list of -- UZPP2 to the list of phonetically similar (consonants grouped -- with consonants and each vowel separately) sounds representations in -- UZPP2 format. sndGroups :: [UZPP2] -> [[UZPP2]] groupSnds :: [UZPP2] -> [[UZPP2]] -- | Function divCnsnts is used to divide groups of Ukrainian -- consonants into two-elements lists that later are made belonging to -- different neighbour syllables if the group is between two vowels in a -- word. The group must be not empty, but this is not checked. The -- phonetical information for the proper performance is taken from the: -- https://msn.khnu.km.ua/pluginfile.php/302375/mod_resource/content/1/%D0%9B.3.%D0%86%D0%86.%20%D0%A1%D0%BA%D0%BB%D0%B0%D0%B4.%D0%9D%D0%B0%D0%B3%D0%BE%D0%BB%D0%BE%D1%81.pdf divCnsnts :: [UZPP2] -> ([UZPP2] -> [UZPP2], [UZPP2] -> [UZPP2]) reSyllableCntnts :: [[UZPP2]] -> [[UZPP2]] divVwls :: [[UZPP2]] -> [[UZPP2]] createSyllablesUkrS :: String -> [[[UZPP2]]] -- | Function representProlonged converts duplicated consequent in -- the syllable consonants so that they are represented by just one -- UZPP2. After applying the function to the list of UZPP2 -- being a syllable all groups of duplicated consequent consonants in -- every syllable are represented with only one UZPP2 -- respectively. representProlonged :: [UZPP2] -> [UZPP2] -- | Is inspired by the DobutokO.Sound.DIS5G6G module from -- dobutokO2 package. See: -- 'https://hackage.haskell.org/package/dobutokO2-0.43.0.0/docs/DobutokO-Sound-DIS5G6G.html'. -- The Float data are gotten from there. -- | Deprecated: Please, if possible, use the corresponding functions -- from the Languages.Phonetic.Ukrainian.Syllable.Double.Arr module. str2Durat1 :: String -> Float -- | Just another possible duration approximation obtained by usage of the -- r-glpk-phonetic-languages-ukrainian-durations package -- https://hackage.haskell.org/package/r-glpk-phonetic-languages-ukrainian-durations. -- It is generated for the set of the words-durations pairs that the -- words contents (Char) converts to the elements of the -- "ABCEFXYabcdefghijklmnopqrstuvxyz" (for more information, pleas, refer -- to the -- https://hackage.haskell.org/package/r-glpk-phonetic-languages-ukrainian-durations). -- | Deprecated: Please, if possible, use the corresponding functions -- from the Languages.Phonetic.Ukrainian.Syllable.Double.Arr module. uzpp2Durat2 :: UZPP2 -> Float -- | Deprecated: Please, if possible, use the corresponding functions -- from the Languages.Phonetic.Ukrainian.Syllable.Double.Arr module. uzpp2Durat1 :: UZPP2 -> Float -- | Deprecated: Please, if possible, use the corresponding functions -- from the Languages.Phonetic.Ukrainian.Syllable.Double.Arr module. uzpp2Durat3 :: UZPP2 -> Float -- | Deprecated: Please, if possible, use the corresponding functions -- from the Languages.Phonetic.Ukrainian.Syllable.Double.Arr module. uzpp2Durat4 :: UZPP2 -> Float -- | General variant of the syllableDurations function with the -- arbitrary uzpp2Durat1-like function. -- | Deprecated: Please, if possible, use the corresponding functions -- from the Languages.Phonetic.Ukrainian.Syllable.Double.Arr module. syllableDurationsG :: (UZPP2 -> Float) -> [[[UZPP2]]] -> [[Float]] -- | Returns list of lists, every inner one of which contains approximate -- durations of the Ukrainian syllables. -- | Deprecated: Please, if possible, use the corresponding functions -- from the Languages.Phonetic.Ukrainian.Syllable.Double.Arr module. syllableDurations :: [[[UZPP2]]] -> [[Float]] -- | Likewise syllableDurations, but uses uzpp2Durat2 instead -- of uzpp2Durat1. -- | Deprecated: Please, if possible, use the corresponding functions -- from the Languages.Phonetic.Ukrainian.Syllable.Double.Arr module. syllableDurations2 :: [[[UZPP2]]] -> [[Float]] -- | Likewise syllableDurations, but uses uzpp2Durat3 instead -- of uzpp2Durat1. -- | Deprecated: Please, if possible, use the corresponding functions -- from the Languages.Phonetic.Ukrainian.Syllable.Double.Arr module. syllableDurations3 :: [[[UZPP2]]] -> [[Float]] -- | Likewise syllableDurations, but uses uzpp2Durat4 instead -- of uzpp2Durat1. -- | Deprecated: Please, if possible, use the corresponding functions -- from the Languages.Phonetic.Ukrainian.Syllable.Double.Arr module. syllableDurations4 :: [[[UZPP2]]] -> [[Float]] instance (GHC.Classes.Eq a, GHC.Classes.Eq b) => GHC.Classes.Eq (Languages.Phonetic.Ukrainian.Syllable.Arr.UZPP a b) instance GHC.Classes.Ord Languages.Phonetic.Ukrainian.Syllable.Arr.PhoneticType instance GHC.Classes.Eq Languages.Phonetic.Ukrainian.Syllable.Arr.PhoneticType instance GHC.Show.Show (Languages.Phonetic.Ukrainian.Syllable.Arr.UZPP GHC.Types.Char Languages.Phonetic.Ukrainian.Syllable.Arr.PhoneticType) instance (GHC.Classes.Ord a, GHC.Classes.Ord b) => GHC.Classes.Ord (Languages.Phonetic.Ukrainian.Syllable.Arr.UZPP a b) -- | This module works with syllable segmentation in Ukrainian. Uses -- Double whenever possible. module Languages.Phonetic.Ukrainian.Syllable.Double.Arr -- | Is inspired by the DobutokO.Sound.DIS5G6G module from -- dobutokO2 package. See: -- 'https://hackage.haskell.org/package/dobutokO2-0.43.0.0/docs/DobutokO-Sound-DIS5G6G.html'. -- The Double data are gotten from there. str2DuratD1 :: String -> Double -- | Just another possible duration approximation obtained by usage of the -- r-glpk-phonetic-languages-ukrainian-durations package -- https://hackage.haskell.org/package/r-glpk-phonetic-languages-ukrainian-durations. -- It is generated for the set of the words-durations pairs that the -- words contents (Char) converts to the elements of the -- "ABCEFXYabcdefghijklmnopqrstuvxyz" (for more information, pleas, refer -- to the -- https://hackage.haskell.org/package/r-glpk-phonetic-languages-ukrainian-durations). uzpp2DuratD2 :: UZPP2 -> Double uzpp2DuratD1 :: UZPP2 -> Double uzpp2DuratD3 :: UZPP2 -> Double uzpp2DuratD4 :: UZPP2 -> Double -- | General variant of the syllableDurationsD function with the -- arbitrary uzpp2DuratD1-like function. syllableDurationsGD :: (UZPP2 -> Double) -> [[[UZPP2]]] -> [[Double]] -- | Returns list of lists, every inner one of which contains approximate -- durations of the Ukrainian syllables. syllableDurationsD :: [[[UZPP2]]] -> [[Double]] -- | Likewise syllableDurations, but uses uzpp2DuratD2 -- instead of uzpp2DuratD1. syllableDurationsD2 :: [[[UZPP2]]] -> [[Double]] -- | Likewise syllableDurations, but uses uzpp2DuratD3 -- instead of uzpp2DuratD1. syllableDurationsD3 :: [[[UZPP2]]] -> [[Double]] -- | Likewise syllableDurations, but uses uzpp2DuratD4 -- instead of uzpp2DuratD1. syllableDurationsD4 :: [[[UZPP2]]] -> [[Double]]