Форум программистов, компьютерный форум, киберфорум
Haskell
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 14
1

line 13: unlit: Program line next to comment phase `Literate pre-processor' failed (exitcode = 1)

19.02.2014, 16:41. Показов 2111. Ответов 9
Метки нет (Все метки)

Пишу в WinGHCi
Отвечает:
line 13: unlit: Program line next to comment
phase `Literate pre-processor' failed (exitcode = 1)

Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
split3' :: [a] -> [a] -> [a] -> [a] -> [[a]]
split3' [] x y z = [x,y,z]
split3' p x y z | (length p) >= 3 = split3' (drop 3 p) (x ++ [p1]) (y ++ [p2]) (z ++ [p3]) 
                | (length p) == 2 = [(x ++ [p1]) , (y ++ [p2]),z]
                | (length p) == 1 = [(x ++ [p1]),y,z]
                   where p1 = p !! 0
                         p2 = p !! 1
                         p3 = p !! 2
 
split3 :: [a] -> [[a]]
split3 x = split3' x [] [] []
 
Main> split3 [1,2,3,4,5,6,7]
 
[[1,4,7],[2,5],[3,6]]
 
Main> split3 "Abrakadabra"
 ["Aadr","bkaa","rab"]
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.02.2014, 16:41
Ответы с готовыми решениями:

White-space: какая разница между pre-line и normal?
Доброго дня! Читаю про white-space, пробую в коде pre-line и normal. Перенос строк...

Ошибка Undefined subroutine &main::timelocal called at /1.pl line 16, <> line 1.
хелло алл! в проге подключил: use gmtime; use localtime; спотыкается на строке: my...

Select Line. Change one of textBoxes. button return items to his Line
А как можно в` txtBox2 менять на пример` 1.09 на 2.7 и` press button так, что бы в` 2 Line в` 2...

Aa, bb, cc = [map(int, line) for line in lines] - генератор не работает
Ребят всем здрасте! Хочу присвоить переменным ,через генератор, int значения, но с генераторами...

9
Эксперт Java
3294 / 2356 / 425
Регистрация: 28.04.2012
Сообщений: 7,863
19.02.2014, 17:41 2
Что именно ты пишешь в WinGHCi? Скриншот сделай.
0
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 14
19.02.2014, 18:17  [ТС] 3
Эта программа у меня в блокноте. Открываю её в WinGHCi. А оно не открывается и пишет об ошибке.
0
Модератор
Эксперт Python
28588 / 15453 / 3052
Регистрация: 12.02.2012
Сообщений: 25,328
Записей в блоге: 4
19.02.2014, 18:43 4
Цитата Сообщение от Tanya Ocheret Посмотреть сообщение
А оно не открывается и пишет об ошибке.
- оно открывается. Но в файл с расширением *.hs нужно помещать только это

Haskell
1
2
3
4
5
6
7
8
9
10
11
split3' :: [a] -> [a] -> [a] -> [a] -> [[a]]
split3' [] x y z = [x,y,z]
split3' p x y z | (length p) >= 3 = split3' (drop 3 p) (x ++ [p1]) (y ++ [p2]) (z ++ [p3]) 
                | (length p) == 2 = [(x ++ [p1]) , (y ++ [p2]),z]
                | (length p) == 1 = [(x ++ [p1]),y,z]
                   where p1 = p !! 0
                         p2 = p !! 1
                         p3 = p !! 2
 
split3 :: [a] -> [[a]]
split3 x = split3' x [] [] []
а вот это

Haskell
1
split3 [1,2,3,4,5,6,7]
вводить ручками:
1
Миниатюры
line 13: unlit: Program line next to comment phase `Literate pre-processor' failed (exitcode = 1)  
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 14
19.02.2014, 20:44  [ТС] 5
спасибо за такой подробный ответ)) это я знала))) просто текстовый документ сохранила так *.lhs

Добавлено через 9 минут
Catstail, не могли бы Вы пояснить мне эту програмку? Если Вам не сложно, добавте комментарии)
0
Модератор
Эксперт Python
28588 / 15453 / 3052
Регистрация: 12.02.2012
Сообщений: 25,328
Записей в блоге: 4
19.02.2014, 21:06 6
Лучший ответ Сообщение было отмечено Tanya Ocheret как решение

Решение

Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
-- split3' - функция с тремя накопительными параметрами.
 
split3' :: [a] -> [a] -> [a] -> [a] -> [[a]]  -- тип функции
 
split3' [] x y z = [x,y,z] -- если входной список исчерпан - объединяем накопленное и возвращаем
-- если в списке более трех элементов - рекурсивно применяем функцию к остатку списка
-- без первых трех. При этом первый присоединяем к нак. параметру x; второй - к y; третий - к z.
split3' p x y z | (length p) >= 3 = split3' (drop 3 p) (x ++ [p1]) (y ++ [p2]) (z ++ [p3]) 
-- если осталось два элемента - присоединем первый к x; второй к y и возвращаем объединение;
                | (length p) == 2 = [(x ++ [p1]) , (y ++ [p2]),z]
-- если остался один элемент - присоединем его к x;  и возвращаем объединение;
                | (length p) == 1 = [(x ++ [p1]),y,z]
                   where p1 = p !! 0 -- первый элемент
                         p2 = p !! 1 -- второй
                         p3 = p !! 2 -- третий
-- функция-оболочка (чтобы при вызове не задавать три пустых списка).
split3 :: [a] -> [[a]]
split3 x = split3' x [] [] []
1
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 14
19.02.2014, 21:08  [ТС] 7
большое спасибо) просто я Вашу програмку хочу переделать)
0
Модератор
Эксперт Python
28588 / 15453 / 3052
Регистрация: 12.02.2012
Сообщений: 25,328
Записей в блоге: 4
19.02.2014, 21:19 8
Цитата Сообщение от Tanya Ocheret Посмотреть сообщение
хочу переделать
- мне самому она не очень нравится...

Добавлено через 8 минут
Можно так:

Haskell
1
2
3
4
5
6
split3 :: [a] -> [[a]]
split3 x = [p1,p2,p3]
           where p1 = map fst (filter (\ w -> ((snd w) `mod` 3) == 1) p)
                 p2 = map fst (filter (\ w -> ((snd w) `mod` 3) == 2) p)
                 p3 = map fst (filter (\ w -> ((snd w) `mod` 3) == 0) p)
                 p = zip x [1..]
0
Эксперт по математике/физике
4145 / 2049 / 422
Регистрация: 19.07.2009
Сообщений: 3,104
Записей в блоге: 23
19.02.2014, 22:02 9
Цитата Сообщение от Catstail Посмотреть сообщение
Haskell
1
2
3
p1 = map fst (filter (\ w -> ((snd w) `mod` 3) == 1) p)
 p2 = map fst (filter (\ w -> ((snd w) `mod` 3) == 2) p)
 p3 = map fst (filter (\ w -> ((snd w) `mod` 3) == 0) p)
какое многословие... как же DRY?
Haskell
1
[p1,p2,p3] = [ map fst $ filter (\ w -> mod (snd w) 3 - k == 0) $ p | k <- [1..3] ]
1
Модератор
Эксперт Python
28588 / 15453 / 3052
Регистрация: 12.02.2012
Сообщений: 25,328
Записей в блоге: 4
20.02.2014, 09:18 10
Цитата Сообщение от Mysterious Light Посмотреть сообщение
какое многословие...
- ну, да... Печенкой чувствовал, что улучшить можно. Просмотрел вполне очевидное. Спасибо!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.02.2014, 09:18

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Ошибка debug assertion failed . line 1772
Всем привет, недавно занялась параллельным программированием, столкнулась с рядом проблем, которые...

Debug Assertion failed. Line 77. Expression (stream!=0)
Подскажите, пожалуйста, в чем заключается ошибка. Запускается, начинает работать, а потом пишет...

пoчтa не пoсылaется: Microsoft VBScript runtime error '800a01a8' Object required: '' /veronicatest/netronDB/testemail.asp, line 54 line
ест кoд вoт тaкoй: &lt;html&gt; &lt;body&gt; &lt;table align='center' dir='rtl' lang='he' border='0'...

Notice: Array to string conversion in C:Program FilesPHP Expert EditorphpB8.tmp on line 7
пример взял из руководства тока подставил сой адрес в ответ &lt;?php ...

Не отправляется мыло! Warning: Failed to Connect in d:apachehtdocsmail.php on line 2
при использовании стандартной процедуры mail выдается ошибочное сообщение Warning: Failed to...

Ошибке при заходе на базу Access: Driver's SQLSetConnectAttr failed /test.asp, line 9
Я пытaюсь зaйти в aксесoвскую бaзу дaнных &lt;% set C=server.CreateObject('adodb.connection')...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.