169 похожих чатов

А какой из подходов и в каких случаях лучше? // подход

#1 ("цепочкой SCDU")
type A = |A of B * C * D
and B = |B of int
and C = |C of bool
and D = |D of string

// подход #2 ("рекордом")
type R = { B: int; C: bool; D: string }

let f1 (B b, C c, D d) = ()
let f2 {B=b; C=c; D=d} = ()


UPD: на всякий случай уточню: то, что можно передавать один рекорд и не париться с прописыванием передачи всех его полей - это понятно...

2 ответов

9 просмотров

С рекопдом. Он понятный. 1й много вопросов вызывает

Лучше так как тебе удобнее писать и (если ты работаешь не один) как другим читать удобнее.

Похожие вопросы

Обсуждают сегодня

кому не сложно распишите пожалуйста для какой цели тут вот эти скобки и в них пихается указатель?
Михаил Helper
15
Комрады, посоветуйте, куда копать? Стал прикручивать кастомизацию тем. В OnShow главной главной формы пытаюсь загрузить из файла настроек и применить тему (на скрине, как долж...
Ed Doc
13
Такс, блин, таки кто-то знает, каким образом работают макросы stdin/stdout/stderr? Я влез в stdio.h, там определения нет, отладил через асмокод - вызывается функция со странны...
The Bird of Hermes
18
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
OnShow один раз вызывается? или возможен Hide?
Iluha Companets
14
Если у меня есть такой класс: Object = {} function Object:new(a_name, a_transform, a_color, a_mesh, a_material, a_shader, a_textures) local private = {} private.n...
Cuarno Vile
4
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Всем привет, на линуксе лучше на fasm или nasm учиться писать для начала ?
meszjol
14
@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
зачем же переименовывать ? чтобы кол-во участников возросло или вдруг IBM от этого снова на свифте начнет кодить ? Я не понимаю что страшного в том что свифт гавно, если это т...
Oleh Nerzh
10
Карта сайта