juan_gandhi: (Default)
Juan-Carlos Gandhi ([personal profile] juan_gandhi) wrote2011-10-30 09:21 am
Entry tags:

о языцех - Бейсик

Я его, конечно, никогда не уважал. Но когда Андрей Петрович (тм) попросил посмотреть на его программу, которая типа вычисляет предел в категории, я, конечно, завёлся, и мы месяц, наверное, протрахались с этим делом, дойдя до интерактивного построения категории и до расчёта топологий Гротендика; с топологиями Гротендика мы обломились на категории Δ3, где, по моим прикидкам, расчёт займёт три недели на бейсике. Пришлось перекатать на фортран, а операции над множествами - на ассемблер; 4 часа - и топологии расклассифицированы.

В следующий раз это был вижуал бейсик, Берлин, 95. Netz&So ввёз меня в качестве гастарбайтера; заплатили, по немецкому обычаю, половину (а я варежку разинул); но я насладился Западным Берлином, вообще атмосферной немецкой конторы.

Что я делал - локализационное решение для вижуал бейсика. Выдёргивал ресурсы из кода, строил файлы с переводами, и в рантайме считывал это дело, подставляя ресурсы. Конкатенация строк на Бейсике ещё хуже, чем на Фортране; я развлекался написанием смесил сишного и Бейсиковского кода, лишь бы работало. Работало, но я как-то не насладился. Напрягал повсеместный дебилизм в решениях и невозможность сделать элементарные вещи не через жопу.

Самый плохой язык из тех, что мне встречался.

[identity profile] udpn.livejournal.com 2011-10-30 07:42 pm (UTC)(link)
>> вычисляет предел в категории, я, конечно, завёлся, и мы месяц, наверное, протрахались с этим делом, дойдя до интерактивного построения категории и до расчёта топологий Гротендика

Ухты, интересно. Расскажите, пожалуйста, зачем это нужно, и что именно требуется для того, чтобы что-то такое написать. Этот предел имеет отношение к обычному пределу (для какой-нибудь конкретной категории функций или чего там)?

[identity profile] ivan-gandhi.livejournal.com 2011-10-30 08:18 pm (UTC)(link)
Да у меня в "категориях для джава-программистов" (http://patryshev.com/cat/doc/EasyCategoriesForProgrammers.pdf) всё это расписано.

Зачем нужны пределы? Ну как, select a.*,b.* from a,b where a.userid = b.userid; - это частный случай предела (pullback).

Зачем нужно узнать, какие бывают топологии Гротендика над такой-то категорией? Это ключ к логике категории. А так - ничего не требуется, знание определений.

[identity profile] udpn.livejournal.com 2011-10-30 09:39 pm (UTC)(link)
>> Да у меня в "категориях для джава-программистов" всё это расписано.
Почему эта ссылка не написана красным по белому где-нибудь в заголовке вашего блога? :)
>> select a.*,b.* from a,b where a.userid = b.userid; - это частный случай предела (pullback).
Я думал, что это отфильтрованное декартово произведение. Интуиция не сработала, увы. К обычному пределу функции он отношения всё-таки не имеет?
>> Это ключ к логике категории.
Это, наверное, результат общения с теорией категорий: очень общие ответы :) Какой-нибудь пример или класс задач, решаемых с их помощью, бы.

[identity profile] sorhed.livejournal.com 2011-10-30 11:30 pm (UTC)(link)
> Почему эта ссылка не написана красным по белому где-нибудь в заголовке вашего блога? :)

Мне казалось, она легендарна и не требует лишней рекламы. :)

[identity profile] ivan-gandhi.livejournal.com 2011-10-30 11:56 pm (UTC)(link)
И Декартово произведение предел, и отфильтрованное - предел.

Я ничего общего с классами задач не имею... но пример вот я уже привёл же.

[identity profile] nivanych.livejournal.com 2011-10-31 04:55 am (UTC)(link)
> Я думал, что это отфильтрованное декартово произведение
pullback выражается через эквалайзер от произведения. Так что, почти правда.
А все конечные пределы выражаются либо через эквалайзер с произведениями, либо pullback с терминальным объектом.

[identity profile] udpn.livejournal.com 2011-10-31 08:27 am (UTC)(link)
Ололо, я теперь даже понял это.

[identity profile] nivanych.livejournal.com 2011-10-31 08:52 am (UTC)(link)
Гм. К чему относилось "ололо"?

[identity profile] udpn.livejournal.com 2011-10-31 09:20 am (UTC)(link)
Ну типа радостное улюлюкание. Прочёл статью по ссылке выше и знаю не только что такое эквалайзер, но даже что такое КОэквалайзер. Правда, пока так и не понял, зачем там теоркат, и что это вообще даёт. Так что нужно перечитать.

Вот после "bananas, lenses etc" сразу понятно: это нужно для алгебраического мышления о программах. Типа таким образом классифицируется вся рекурсия.

[identity profile] nivanych.livejournal.com 2011-10-31 09:39 am (UTC)(link)
И корекурсия! ;-)
Ну, не вся. Но довольно много.

Да не то, чтобы алгебраического мышления...
Если привыкнуть, это более простой и унифицированный взгляд.
Заодно, помогает пониманию некоторых фундаментальных вещей.

[identity profile] sassa-nf.livejournal.com 2011-10-31 10:09 am (UTC)(link)
а здесь специальные очепятки, или стрелки так пишут "0.2: 2->0"?

[identity profile] ivan-gandhi.livejournal.com 2011-11-01 03:59 am (UTC)(link)
Ой. Спасибо.