Size: a a a

2021 May 15

c

codingteam@cjr in codingteam
Minoru
я же выше написал про структурки с полями-коллбеками, и Альбратрос (читавший ядро много больше, чем я) подтвердил, что всё так
источник

c

codingteam@cjr in codingteam
Minoru
@ttldtor: вот тебе для конкретики пример того, как /dev/zero реализует интерфейс «character device» https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/char/mem.c?h=v5.12&id=9f4ad9e425a1d3b6a34617b8ea226d56a119a717#n900
источник

t

ttldtor in codingteam
Спасибо, поблевал
источник

t

ttldtor in codingteam
Я знаю про это говно
источник

t

ttldtor in codingteam
Виртуальные таблицы, структуре с коллбэками, но я не про реализацию чего-то хорошего на низкоуровневое языке
источник

t

ttldtor in codingteam
Если разработчикам компилятора надо, пусть превращают это во включение. Я знаю, когда наследование -- не ок. Когда ты нарываешься на лапшу из реализаций и переопределение логики в наследниках
источник

t

ttldtor in codingteam
Когда эта логика вообще переопределяется где-то в анусе, при помощи спринга
источник

t

ttldtor in codingteam
Когда саму иерархию наследования меняют в рантайме, добавляя прокси
источник

t

ttldtor in codingteam
Это прикольно, весело, задорно, но нихрена не удобно
источник

t

ttldtor in codingteam
А включение уже неудобно, когда полей больше чем пальцев на руке или около того
источник

t

ttldtor in codingteam
Будешь наверчивать структурки, придумывая им дурацкие названия
источник

c

codingteam@cjr in codingteam
Minoru
слушайте, а как лицензируются протоколы? Вот, скажем, есть W3C, они опубликовали спеку на ActivityPub, она под вот этой лицензией: https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
источник

c

codingteam@cjr in codingteam
Minoru
лицензия ничего не говорит о том, что я могу делать с полученными из спеки знаниями; это отлично
источник

c

codingteam@cjr in codingteam
Minoru
это значит, я могу писать какие угодно реализации ActivityPub — хоть опенсорцные, хоть проприетарные
источник

c

codingteam@cjr in codingteam
Minoru
теперь я смотрю на доки к расширению ActivityPub. Эти доки под вот такой лицензией: https://github.com/bookwyrm-social/documentation/blob/b4e3901cac2e858d3558d90fbb11e6c656255e08/LICENSE
источник

c

codingteam@cjr in codingteam
Minoru
грубо говоря, пользоваться этими доками нельзя, если ты делаешь это ради получения прибыли или работаешь на полицию или военных
источник

c

codingteam@cjr in codingteam
Minoru
вопрос: а сами-то расширения под какой лицензией? Если я, соблюдая лицензию, читаю эти доки, а потом иду и пишу совместимую реализацию этих расширений и лицензирую под MIT — я что-то нарушил?
источник

c

codingteam@cjr in codingteam
Minoru
кто-нибудь знает случаи подобных диспутов? Мне вообще ничего в голову не приходит
источник

c

codingteam@cjr in codingteam
Orhideous
Bullshit.
источник

c

codingteam@cjr in codingteam
Orhideous
Без механизма law enforcement в LICENSE может быть написан какой угодно мусор.
источник