Size: a a a

2021 December 10

AP

Aleksei (astynax) Pi... in Haskell Start
O(n) для обращения по индексу
источник

Д

Дмитрий in Haskell Start
Звучит как именно то, что нужно, спасибо!
источник

[

[BRM]White Rabbit in Haskell Start
Конечно, у массива константая адресация, последовательное расположение в памяти и при желании отсутствие мисскешей
источник

[

[BRM]White Rabbit in Haskell Start
лист в большинстве случаев стоит использовать не как контейнер (он в этом качестве очевидно плох, если не учитывать некоторые юз-кейсы), а как control-flow структуру (подобно итератору в некоторых других языках), с помощью которой можно декомпозировать обработчики потока данных
источник

EM

Evgeny Malafeev in Haskell Start
Приветствую. Я сам из динамических языков. Но вот решил изучить Haskell. Только начал погружаться в этот прекрасный язык и пытаюсь сразу решать какие то простые задачки. Есть задача где на вход передаётся строка. На выходе надо вернуть строку в которой каждое слово развёрнуто на 180 градусов. И самое главное сохранено количество пробелов. Естественно мне на ум сразу приходит разбить строку по пробелам через words, промапиться по каждому слову и сделать reverse. И соединить снова через unwords. Но вот незадача, как сохранить исходные пробелы между словами. Мое решение тут явно не подходит. Можете пожалуйста натолкнуть в какую сторону лучше копать ? 😇
источник

И

Иван in Haskell Start
посмотри модуль Data.List.Split
источник

A

Aragaer in Haskell Start
я б просто посимвольно сделал. Не пробел - в буфер. Пробел -- реверснутый буфер в выход, пробел туда же.
источник

EM

Evgeny Malafeev in Haskell Start
Это модуль стандартной библиотеки ? Я просто решать задачке на онлайн-платформе. Где внешние модули нельзя импортировать.
источник

EM

Evgeny Malafeev in Haskell Start
Да, только я пока не правые к функциональной парадигме и мозг скрипит и не понимает как это выразить только на функциях ))
источник

И

Иван in Haskell Start
кодварс?
источник

EM

Evgeny Malafeev in Haskell Start
Ага. Он самый.
источник

И

Иван in Haskell Start
там вроде можно его использовать
источник

EM

Evgeny Malafeev in Haskell Start
Ещё exercism параллельно )) там тоже задачки есть.
источник

И

Иван in Haskell Start
но вообще да, можно самому решить, без использования модулей. скорее всего даже полезней будет
источник

A

Aragaer in Haskell Start
я просто через паттернматчинг щас написал
источник

A

Aragaer in Haskell Start
$ ./revw 
olleh  dlrow
источник

A

Aragaer in Haskell Start
main = putStrLn $ revwords "hello  world"
источник

A

Aragaer in Haskell Start
а вот revwords я показывать не буду 8)
источник

EM

Evgeny Malafeev in Haskell Start
rewv - это функция которую ты сам написал ?
источник

A

Aragaer in Haskell Start
revw это бинарник, который получился в результате компиляции. revwords это функция, которую я написал
источник