-- 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.
@package ukrainian-phonetics-basic
@version 0.2.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
convertToProperUkrainianS :: String -> String
convertToProperUkrainianV2S :: Vector Char -> String
-- | The function that converts a written Ukrainian text into the sounding
-- in the program phonetical respesentation. It is not exact phonetically
-- but you can make for yourself a general impression of the Ukrainian
-- sounding.
convertToProperUkrainian :: String -> Vector Char
-- | The function that converts a written Ukrainian text into the sounding
-- in the program phonetical respesentation. It is not exact phonetically
-- but you can make for yourself a general impression of the Ukrainian
-- sounding.
convertToProperUkrainianV :: Vector Char -> Vector Char
-- | Unlike the convertToProperUkrainian, it returns a boxed
-- Vector instead of unboxed one Vector, @ since 0.1.2.0
convertToProperUkrainianX :: String -> Vector Char
-- | Unlike the convertToProperUkrainianV, it returns a boxed
-- Vector instead of unboxed one Vector, @ since 0.1.2.0
convertToProperUkrainianV2X :: Vector Char -> Vector Char
-- | A variant of the convertToProperUkrainian with the
-- ByteString result.
convertToProperUkrainianB :: String -> ByteString
-- | A variant of the convertToProperUkrainianV with the
-- ByteString result.
convertToProperUkrainianV2B :: Vector Char -> ByteString
isUkrainianL :: Char -> Bool
linkFileName :: Char -> Char
showInteresting :: String -> ByteString
instance GHC.Show.Show Melodics.ByteString.Ukrainian.Triple
instance GHC.Classes.Ord Melodics.ByteString.Ukrainian.Triple
instance GHC.Classes.Eq Melodics.ByteString.Ukrainian.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
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
vec2UZPP2s :: Vector Char -> [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]]
-- | Function vecWords similarly to words divides a
-- Vector of Char into list of them, each element of which
-- is a Ukrainian word (or its part for dashed and hyphenated words or
-- that ones with an apostrophe).
vecWords :: Vector Char -> [Vector Char]
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]]
createSyllablesUkr :: String -> [[[UZPP2]]]
createSyllablesUkrP :: String -> [[[UZPP2]]]
createSyllablesUkrV :: Vector Char -> [[[UZPP2]]]
createSyllablesUkrVP :: Vector Char -> [[[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.
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
uzpp2Durat2 :: UZPP2 -> Float
uzpp2Durat1 :: UZPP2 -> Float
-- | General variant of the syllableDurations function with the
-- arbitrary uzpp2Durat1-like function.
syllableDurationsG :: (UZPP2 -> Float) -> [[[UZPP2]]] -> [[Float]]
-- | Returns list of lists, every inner one of which contains approximate
-- durations of the Ukrainian syllables.
syllableDurations :: [[[UZPP2]]] -> [[Float]]
-- | Likewise syllableDurations, but uses uzpp2Durat2 instead
-- of uzpp2Durat1.
syllableDurations2 :: [[[UZPP2]]] -> [[Float]]
instance (GHC.Classes.Eq a, GHC.Classes.Eq b) => GHC.Classes.Eq (Languages.Phonetic.Ukrainian.Syllable.UZPP a b)
instance GHC.Classes.Ord Languages.Phonetic.Ukrainian.Syllable.PhoneticType
instance GHC.Classes.Eq Languages.Phonetic.Ukrainian.Syllable.PhoneticType
instance GHC.Show.Show (Languages.Phonetic.Ukrainian.Syllable.UZPP GHC.Types.Char Languages.Phonetic.Ukrainian.Syllable.PhoneticType)
instance (GHC.Classes.Ord a, GHC.Classes.Ord b) => GHC.Classes.Ord (Languages.Phonetic.Ukrainian.Syllable.UZPP a b)