LINUX.ORG.RU

История изменений

Исправление AndreyKl, (текущая версия) :

просто небольшое пояснение:

вот такой (условно)код не скомпиляется

xs = True ::: 'a' ::: "String" ::: HNil
length (hhead xs)
потому что я пытаюсь взять length от булевского значения True

а вот такой скомпиляется
xs = True ::: 'a' ::: "Hello" ::: HNil
length (hhead (htail (htail xs)))
потому что я вычисляю длину стоки "Hello" для чего собственно length и предназначен.

В вашем коде остаются подобные гарантии компилятора?

Исправление AndreyKl, :

просто небольшое пояснение:

вот такой код не скомпиляется

xs = True ::: 'a' ::: "String" ::: HNil
length (hhead xs)
потому что я пытаюсь взять length от булевского значения True

а вот такой скомпиляется
xs = True ::: 'a' ::: "Hello" ::: HNil
length (hhead (htail (htail xs)))
потому что я вычисляю длину стоки "Hello" для чего собственно length и предназначен.

В вашем коде остаются подобные гарантии компилятора?

Исходная версия AndreyKl, :

просто небольшое пояснение:

вот такой код не скомпиляется

xs = True ::: 'a' ::: "String" ::: HNil
length (hhead xs)

потому что я пытаюсь взять length от булевского значения True

а вот такой скомпиляется
xs = True ::: 'a' ::: "Hello" ::: HNil
length (hhead (htail (htail xs)))

потому что я вычисляю длину стоки «Hello» для чего собственно length и предназначен.

В вашем коде остаются подобные гарантии компилятора?