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

Здравствуйте. как вы справляетесь со структурами данных? я не понимаю,

как сделать лучше, когда есть поле с именем id или другим зарезервированным именем. добавить какой-то префикс (нижнее подчеркивание, например)? а ещё вопрос в том, как быть с одинаковыми именами? например, есть data User = User { name :: String ... } и data Organization = Organization { name :: String ... }

я поискал на эту тему, нашел доклад одного человека. он сказал, что можно использовать линзы, но это не избавляет нас от первой проблемы. в общем, как вы предпочитаете работать с такого рода типами?

8 ответов

7 просмотров

Нижнее подчеркивание или префикс для всех полей, потом при выводе инстансов или линз модификаторы, которые отбрасывают лишнее

import Prelude hiding (id)

Kirill Valyavin
Нижнее подчеркивание или префикс для всех полей, п...

получается, в случае линз будет что-то по типу data User = User { __id :: Int, _age :: Int }?

Cheese Syrowiecki
import Prelude hiding (id)

к сожеланию, такое не получится провернуть, например, с ключевыми словами или с функциями, которые надо использовать

Предлагаю c-way с учётом того, что рекорды функции в глобал скоп херачат - название структуры префиксом к полю

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

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

type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
48
А чем вам питонисты не угодили?😂
.
79
Можно ли загрузить скрипт py в бота чтобы он работал по нему? как это сделать?
huskadam #RCC Фанат? @hitlerpvp
13
Всем здравствуйте! Я хотел узнать сколько стоит средняя месячная зарплата у Electron js разработчиков? Мне очень это важно и нужно, плиз помогите узнать эту инфу! Для Джунио...
U.K.
10
А дин типизация это хорошо или плохо?
Alexey
12
Исходники плюс документация? Вы гоните)) демок хватит всем
zamtmn
11
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
77
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Hello. Could you please help me with finding all coordinates within a radius using a spatial index, given that I have a table with coordinates? SET @lng = 37.57925; SET @lat ...
Rinchin G
7
Карта сайта