
illiatshurotshka❄️
05.10.2017
16:02:25
а конкретнее
короч нужно разорвать таблицу на определенном месте и вставить другой контент, такое можно сделать создав две таблицы, но тогда чтобы у них были одинаковые размеры колонок их нужно самому задавать
интересно есть ли красивое решение

Ilya
05.10.2017
16:04:43
ну поиграйся с hline

Google

Ilya
05.10.2017
16:05:06
проблемы не вижу

adam
05.10.2017
16:05:56
или с правилами
\top/mid/bottomrule

illiatshurotshka❄️
05.10.2017
16:08:37
он думает что этот текст - часть самой левой колонки

adam
05.10.2017
16:09:58

illiatshurotshka❄️
05.10.2017
16:14:47
https://ghostbin.com/paste/omedm

Alexandr
05.10.2017
17:03:14
Не видел, чтобы упоминали особо эту книгу, а книжка то очень не плохая:)
http://anton-k.github.io/ru-haskell-book

? animufag ?
05.10.2017
17:13:59

Denis
05.10.2017
18:18:28
ну все) можно писать
https://habrahabr.ru/company/mailru/blog/339426/

? animufag ?
05.10.2017
18:24:56
чё там дженерики есть?
это го который парсится а потом генерит конкретные реализации функции?

Arseniy
05.10.2017
19:32:35
Приветики. Я ищу в Serokell двух хороших haskell программистов на full time.
Пишите мне в pm.
Можно без опыта именно production haskell, но просто с хорошим опытом языка и другим продакшн прошлым.

Google

Dmitry
05.10.2017
19:37:10
Лайк

kana
05.10.2017
19:45:01
я правильно понимаю, что тестировать executable в stack нельзя? Потому что он как либа не поставляется, а значит и задепендиться от него нельзя

Pig
05.10.2017
19:45:43
А зачем?

kana
05.10.2017
19:46:17
например чтобы тестировать в шаблоне simple

Alexander
05.10.2017
19:48:12
нельзя но если очень хочется то можно
у тебя к сборке тестов уже все в dist/build есть
@kana_sama ^

kana
05.10.2017
19:53:47
не, это что-то странное. Окей, дефолтный шаблон так дефолтный шаблон

Alexander
05.10.2017
19:55:43
почему?
или я не понял вопроса
добавить в зависимость executable only пакет?
тогда что значит тестировать

kana
05.10.2017
19:57:18
Ну, у меня есть секция executable somename-exe и test-suite somename-test. Первый ссылается на некую папку src, в котором есть несколько модулей, которые бы я хотел протестировать, но не могу поставить его в зависимость

Vasiliy
05.10.2017
19:57:32
а причём здесь stack?
это cabal

kana
05.10.2017
19:58:02
окей, да, это кабал, запускаю я его просто не напрямую, а через стак

Vasiliy
05.10.2017
19:58:32
вариантов, в общем-то, два
вытащить из экзекутабля библиотеку и тестировать её

kana
05.10.2017
19:59:38
ну собственно вопрос именно в том, возможно ли тестировать без вытаскивания в библиотеку. То есть реально ли писать на simple-шаблоне с тестами

Vasiliy
05.10.2017
19:59:41
либо в hs-source-dirs у теста добавить каталог с сырцами экзешника, тогда он будет их видеть

Google

Alexander
05.10.2017
19:59:43
пакет внутри себя?
можно сделать внутренний пакет

Andrei
05.10.2017
20:01:46


Alexander
05.10.2017
20:01:52
Cabal 2.0 and later support “internal libraries”, which are extra named libraries (as opposed to the usual unnamed library section). For example, suppose that your test suite needs access to some internal modules in your library, which you do not otherwise want to export. You could put these modules in an internal library, which the main library and the test suite build-depends upon. Then your Cabal file might look something like this:
name: foo
version: 1.0
license: BSD3
cabal-version: >= 1.23
build-type: Simple
library foo-internal
exposed-modules: Foo.Internal
build-depends: base
library
exposed-modules: Foo.Public
build-depends: foo-internal, base
test-suite test-foo
type: exitcode-stdio-1.0
main-is: test-foo.hs
build-depends: foo-internal, base
@kana_sama твой случай или я опять не понял?

Vasiliy
05.10.2017
20:02:58
оо, годнота

kana
05.10.2017
20:05:11
Ну, мой вопрос был именно про тестирование без library. Vasiliy в общем-то ответил на него, спасибо. Вопрос бы скорее теоретический, наткнулся на препятствие, а выгуглить не смог

Alexander
05.10.2017
20:07:16
вообще использовать одни и те же сорцы в 2ух местах не самая годная идея, если ты не сами исходники парсишь
ну да ок
internal-library как то разумнее,она все равно пользователю не показывается и пакет остается executable-only, а компиляется 1 раз

kana
05.10.2017
21:44:19

Kirill
05.10.2017
21:52:34
а ты посмотри :t y
дело в Num
let x = 1 :: Int
даст другой результат
или :set -XMonomorphismRestriction

kana
05.10.2017
21:55:28
о, спасибо

? animufag ?
05.10.2017
22:04:49
ghci на телефоне?)

kana
05.10.2017
22:05:19
да не, текст узкий, захватил то, что нужно

Alexander
05.10.2017
22:18:17
кажется я недавно делал похожий вопрос

Даниил
05.10.2017
23:15:30

Google

? animufag ?
05.10.2017
23:16:02
да скорей всего можно сделать, но набирать сложно

Даниил
05.10.2017
23:16:16
у меня даже компилятор rust на ондроиде стоит
а хаскеля нет(

? animufag ?
05.10.2017
23:16:31
по крайней мере online
repl.it какой-нибудь

Даниил
05.10.2017
23:16:43
единственное шо

? animufag ?
05.10.2017
23:17:14
пакеджи, расширения свои любимые навалить не выйдет

Даниил
05.10.2017
23:17:17
neovim в termux не умеет работать с буфером обмена ондроида(

? animufag ?
05.10.2017
23:18:32
ладно, видимо ты занимлся этим вопросом.
на самом деле неудобно всегда было со всем
даже джс попроверять в транспорте ооочень неудобно, хотя его то казалось бы легко запилить

Даниил
05.10.2017
23:20:29
ну я одно время постоянно в электричке и метро от нечего делать писал на питоне на планшете
на телефоне конечно менее удобно, экран маленький

Ilya
06.10.2017
04:01:07
А вот часто говорят о типе, как о множестве значений. Но что такое значения типа в Хаскеле?
Могу предположить, что под значениями подразумевают граф (конструкторов) в нормальной форме. Тогда получается, что тот же тип Stream вообще не имеет ни одного значения? Т.е., как это говорят, "тип не заселён"?

Yuriy
06.10.2017
05:51:51
да, Stream становится населён, если убрать требование нормальной формы
правда, тогда все типы становятся заселены днищами
но кроме днищ появляются такие "бесконечные" значения, как Stream

Ilya
06.10.2017
05:58:28
но если мы уберём требование нормальной формы, то получаются всякие странности, нет?
вроде как в типе Identity тогда будет и Identity 2 и Identity (1+1)
это хорошо?

Yuriy
06.10.2017
05:59:14
но если называть значением не граф, а ровно один конструктор в WHNF, тогда это более-менее работает

Google

Ilya
06.10.2017
06:01:01
я к тому, что тогда понятие "мощность множества значений в типе" становится непонятно, как определять

Yuriy
06.10.2017
06:02:33
можно разрешить бесконечный граф для Stream

Ilya
06.10.2017
06:02:36
можно наверное придумать два элемента в типе, оба в WHNF, доказательство равенства которых будет сложной теоремой или вообще недоказумым:)
по-крайней мере кажется, что так
возникает вопрос, а сколько реально элементов в типе
и корректен ли вообще такой вопрос?

Yuriy
06.10.2017
06:06:23
#(Stream a) = #a ^ א0

Ilya
06.10.2017
06:07:12
это понятно

Yuriy
06.10.2017
06:13:41
предлагаю подождать, когда проснутся те, кто читал теорию типов

Ilya
06.10.2017
06:17:58

Yuriy
06.10.2017
06:18:58
конструкторы либо совпадают, либо нет

Ilya
06.10.2017
06:19:30
у меня не получается строго записать определение для множества значений типа t, если мы разрешаем WHNF
#t = {все "различные" WHNF этого t, где "различные" — ???}

Yuriy
06.10.2017
06:21:09
то есть проверка равенства двух Stream алгоритмически никогда не закончится, но конечное доказательство такого равенства написать можно

Ilya
06.10.2017
06:21:17
кстати, значок решетки - это мощность множества значений ты так обозначил или само множество?

Yuriy
06.10.2017
06:22:06