Olá, Laurie!
Primeiro, vamos entender o que é o textM. No exemplo, textM é um Maybe que contém um texto. O Maybe é uma estrutura que pode conter um valor ou estar vazia (representando null ou undefined).
Vamos analisar as funções:
const textToArray = textM => textM.map(text => Array.from(text));
const arrayToText = arrayM => arrayM.map(array => array.join(''));
textToArray
- Entrada:
textM é um Maybe que contém uma string. - Processo: Utilizamos o método
map do Maybe. O map aplica uma função ao valor contido no Maybe se ele não for null ou undefined. - Função passada ao
map: text => Array.from(text) transforma a string em um array de caracteres. - Saída: Um
Maybe que contém um array de caracteres.
arrayToText
- Entrada:
arrayM é um Maybe que contém um array de caracteres. - Processo: Utilizamos o método
map do Maybe. O map aplica uma função ao valor contido no Maybe se ele não for null ou undefined. - Função passada ao
map: array => array.join('') transforma o array de caracteres de volta em uma string. - Saída: Um
Maybe que contém uma string.
Espero que tenha ficado mais claro!
Abraço.