kb 31.08.2012 09:43

Решил слегка помучать себя. Подскажите, насколько ужасно я всё сделал?

Задача — написать функцию splitWith, которая будет делать примерно что и words, только для произвольных списков. То есть по предикату разбивает список. Типа такого:

*Main> splitWith odd [1,2,3,4,5,6,6,6,8,9]
[[2],[4],[6,6,6,8]]
*Main> splitWith even [1,2,3,4,5,6,6,6,8,9]
[[1],[3],[5],[9]]

Вот мои костыли: http://paste.ubuntu.com/1177467/

1. 0xd34df00d 31.08.2012 12:29 Azoth_primary

Пиздец нахуй. Олсо, снаскоку не получилось, как работку доделаю — сяду и сделаю полущ.

2. kb0xd34df00d /1 31.08.2012 12:29

почему пиздец?

3. 0xd34df00dkb /2 31.08.2012 12:30 Azoth_primary

Потому что выглядит как кусок говна с костылями.

4. kb0xd34df00d /3 31.08.2012 14:10

ну вот так почти-почти, правда пустой массив иногда получается http://paste.ubuntu.com/1177890/

с использованием span и break

6. kb0xd34df00d /3 31.08.2012 14:40

поясни, а насколько вообще правильно иметь при типе [a] значение [] (пустой список)? это не считается дурным тоном?

7. kbkb /4 31.08.2012 14:45

поправил http://paste.ubuntu.com/1177961/

Do you really want to delete ?