LINUX.ORG.RU

Рекомендуемый Haskell codestyle


0

0

Всем привет.

В книге RealWorldHaskell встретил такой вот стиль кода:

data Customer = Customer {
      customerID      :: Int
    , customerName    :: String
    , customerAddress :: Address
    } deriving (Show)

Как по мне, расположение запятых несколько удручает.
И выравнивание '::' руками слишком трудоёмко.
Может есть какие-то оффициальные рекомендации по стилю Haskell кода?
К примеру, если написать вот так:

data Customer = Customer {
      customerID :: Int,
      customerName :: String,
      customerAddress :: Address
    } deriving (Show)

не закидают какашками?
★★★★

про расположение запятых - в принципе обычно и нормально
про :: - освой нормально хоть один нормальный редактор (emacs например).

max_posedon
()

Полностью согласен с вами: расположение запятых ужасное, выравнивание ни к чему. Сам схожий с вашим вторым вариантом стиль использую.

anonymous
()

я, например, предпочитаю вот так:
Customer { customerID :: Int
         , customerName :: String
         , customerAddress :: Address
         } deriving (Show)

Rastafarra ★★★★
()
Ответ на: комментарий от max_posedon

> освой нормально хоть один нормальный редактор (emacs например).

Освоен в большей степени. В haskell-mode автоматического реформатирования кода я не нашёл. Или ты про что?

Bohtvaroh ★★★★
() автор топика

А разгадка одна — безблагодатность

С прискорбием приходится констатировать, что синтаксис хаскеля ещё более нелеп, чем синтаксис С++, и проблемы все те же самые.

А если бы хаскелестроители учились бы мудрости у Гвидо, таких глупых вопросов на форумах бы не задавали.

anonymous
()

Запятые удобны в том плане, что проще копипастом добавлять строки.

Вертикальное выравнивание, имхо, удобно, я его во всех языках применяю, но это, конечно, дело вкуса.

Legioner ★★★★★
()

не закидают, по всякому пишут - и с выравниванием и без. я, например, сходу пишу без оного, а рабочий код - выравниваю, дабы читаемость волшебным образом повысить

jtootf ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.