metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-02-06 02:33 pm
Entry tags:

Функциональщина в бухгалтерии

Самоочевидно ли то, что с помощью filter/map/fold можно реализовать бухгалтерскую отчетность более простым и очевидным образом, чем с помощью select .. where .. group by?

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

[identity profile] metaclass.livejournal.com 2013-02-06 12:38 pm (UTC)(link)
+Алгебраические типы данных, если это не кложурь и прочие лиспы.
+Вектора(массивы)
И возможность комбинировать это все произвольным образом.

[identity profile] plumqqz.livejournal.com 2013-02-06 12:44 pm (UTC)(link)
Алгебраические типы данных
Ну то есть записи, если по-простому.

+Вектора(массивы)
Ага, массивы - это, оказывается, теперь что-то новое и неизведанное.

[identity profile] metaclass.livejournal.com 2013-02-06 12:47 pm (UTC)(link)
>Ну то есть записи, если по-простому.
Это не записи. Записи - декартово произведение, вариантные(АТД) - сумма.

Про массивы - не во всех СУБД они есть в виде пригодных для использования типов.

[identity profile] plumqqz.livejournal.com 2013-02-06 12:50 pm (UTC)(link)
Это не записи. Записи - декартово произведение
Стало быть, когда я пишу struct thestruct{ int i; char *ptr} - это у меня получается декартово произведение?

Про массивы - не во всех СУБД они есть в виде пригодных для использования типов.
И, что характерно - даже там, где они есть, лучше от их использования воздерживаться.

[identity profile] metaclass.livejournal.com 2013-02-06 01:00 pm (UTC)(link)
Да, декартово произведение - значением этой структуры является декартово произведение множеств допустимых значений отдельных полей.

[identity profile] plumqqz.livejournal.com 2013-02-06 01:04 pm (UTC)(link)
Поистине удивительно, до чего серьезные проблемы удается так ловко решать.

[identity profile] volodymir-k.livejournal.com 2013-02-06 01:13 pm (UTC)(link)
адт -- это варианты (union in C), причём можно комбинировать а структуры данных

такие задачи плохо ложатся в реляционную модель (типа "субъектами договоров могут быть частные лица с паспортом, контакты в скайпе, местные организации с ИНН, госорганы и НКО, а также иностранные предприятия разных стран, в том числе разные офисы ТНК")

да тот же ldap например

в СУБД тогда изобретают разные костыли типа классической object name + { attributes values } с последующей её настройкой по кластерам таблиц

[identity profile] plumqqz.livejournal.com 2013-02-06 01:16 pm (UTC)(link)
такие задачи плохо ложатся в реляционную модель

Это почему это они плохо ложатся?

[identity profile] thedeemon.livejournal.com 2013-02-06 06:59 pm (UTC)(link)
потому что произведение в ней есть, а копроизведения нет

[identity profile] plumqqz.livejournal.com 2013-02-07 08:27 am (UTC)(link)
Как вы только еще прямохождению не разучились.

[identity profile] geniepro.livejournal.com 2013-02-07 06:39 am (UTC)(link)
>> Алгебраические типы данных
> Ну то есть записи, если по-простому.

АлгТД можно имитировать иерархией расширяемых записей. Одной не обойтись...

[identity profile] plumqqz.livejournal.com 2013-02-07 07:34 am (UTC)(link)
Ну да, все лучше, чем водку жрать.

[identity profile] vinslivins.livejournal.com 2013-02-07 09:05 am (UTC)(link)
не, ну правда же, что скл это язык для бабушек или там менеджеров в экселе и аксессе. как язык для написания хоть какой-нибудь логики он такая же популярная беда, как vbscript. он просто увы есть, а остановится и сделать что-нибудь нормальное руки не дошли :(

[identity profile] plumqqz.livejournal.com 2013-02-07 09:09 am (UTC)(link)
Меня вот прям трогает эта популярнейшая уверенность в том, что все вокруг убогие идиоты и лишь Васе Пупкину с неба недавно была провозглашена истина, причем про тот же "скл" знают обычно не более чем полкнижки "освой самостоятельно sql за 24 часа".

[identity profile] vinslivins.livejournal.com 2013-02-07 09:18 am (UTC)(link)
не, ну давайте, давайте переведём его на русский язык. чем плохо: ОБЪЯСНИ ВЫБРАТЬ .. ИЗ .. ГДЕ
отличное программистское 1С решение.
давайте запросы исполнять НАПИШИ ОТВЕТ ПОЖАЙЛУЙСТА

ещё надо DO WHAT I MEAN и WHAT IF

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

[identity profile] plumqqz.livejournal.com 2013-02-07 09:24 am (UTC)(link)
В общем, изучайте матчасть.
А еще лучше - не изучайне, не надо оно вам. Не дано, так сказать.

[identity profile] vinslivins.livejournal.com 2013-02-07 09:27 am (UTC)(link)
я знаю

[identity profile] vinslivins.livejournal.com 2013-02-07 09:26 am (UTC)(link)
не, ну реально, почему только в sql надо убивать кучу места и времени, печатая эти длинные слова? чем я это заслужил? почему во всех остальных языках по-человечески, и кто, выходит, убогие идиоты?

[identity profile] plumqqz.livejournal.com 2013-02-07 09:28 am (UTC)(link)
Какие "длинные слова"? SQL про краткости вообще какой-то APL напоминает. Хотя, конечно, смотря что писать.
В общем, мой вам совет - бросьте к чертям это дело, посвятите себя семечкам.

[identity profile] vinslivins.livejournal.com 2013-02-07 09:32 am (UTC)(link)
:( мну груфняво

[identity profile] plumqqz.livejournal.com 2013-02-07 09:38 am (UTC)(link)
Чего грустить - сколько впереди еще девок нелапанных, пива невыпитого, морд неразбитых!