Category: история

Category was added automatically. Read all entries about "история".

2016-01

к вопросу об администрировании линуха и винды.

почему на машине с Win10 где исторически стояли только игрушки и Hyper-V -- Theano/Keras/Lasagne/cuda/cuDNN и весь зоопарк депенденсей к ним (git, gcc, numpy, python, msvc08, msvc15, ...) ставится по инструкции с сайта Theano за 2 часа и работает с первого раза,

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



This entry was originally posted at http://wizzard.dreamwidth.org/483302.html. It has comment count unavailable comments. Please comment there using OpenID.
2016-01

(no subject)

мда, анимация удаления нод из графа приоткрыла страшную тайну - у d3.js в отличие от, например, реакта -- коллекции unstable, и удаление элемента может перемешать все остальные.

На них налепят новые координаты, и все будет выглядеть нормально, но если это анимировать - то весь граф внезапно вскипает, перемешивается, а потом становится примерно как было %)

А вообще, это в очередной раз показывает нам что списки, индексы и поинтеры это боль, а словари и GUIDы рулят :)

This entry was originally posted at http://wizzard.dreamwidth.org/481580.html. It has comment count unavailable comments. Please comment there using OpenID.
photo25

distributed universe of code



Я вот смотрел на tagged DSLs от sorhed и akuklev, и мне пришло в голову, что оно то же самое, про что я сейчас думаю в контексте распределенных БД.
То есть, в графе обьектов (где транзакционность обеспечивается примерно как у Datomic) появляются typed references чтобы пройти по которым - надо ресолвить typedef и дальше исходя из него как-то интерпретировать дереференснутый блоб.

Typedef может быть задан явно или в свою очередь задан в схеме обьекта с котормы сейчас идет работа.
На этом также держится весь версионинг итд итп, ведь распределенная асинхронная бд еще означает что надо жить с нодами которые catching up и всё такое.

Да, если начать хранить в этой херне AST - то естественным образом получается universe of code (был недавно какой-то доклад на эту тему, в контексте Хаскеля, правда)

UPD: http://begriffs.com/posts/2015-10-16-internet-of-code.html кажется этот

This entry was originally posted at http://wizzard.dreamwidth.org/459460.html. It has comment count unavailable comments. Please comment there using OpenID.
photo25

Проблема тысячелетия, или теория оперденей (репост)

Мой коммент: п.8 невозможен, т.к. данные и наборы инвариантов регулярно расходятся с реальным миром по вине реального мира; зато должна быть возможность быстро и удобно (полуавтоматически, с наглядной визуализацией результатов своих действий) это корректировать.

В общем случае, поскольку мир меняется быстро, это означает, что у пользователей должна быть возможность учить программы; а у программ - учить пользователей. И нет, это не означает "ограничиться интерфейсами для тупых". А вот как непосвящённых пользователей быстро догонять до уровня, когда они могут эффективно с программой взаимодействовать - это большой вопрос.

Оригинал взят у jakobz в Проблема тысячелетия
Если обобщить две трети юзкейсов, которые бывают, то получатся какие-то такие требования:
1. Программы не должны ебать мозг
2. Когда я использую программу, у меня не должно ухудшаться настроение
3. В программы, как правило, надо печатать буквы и цифры
4. Нужно приложить все усилия, чтобы исключить п. 3.
5. Несовместимость пунктов 1, 2 и 3 - решается человеками вне программы. Как правило за п. 3 платят деньги чтобы компенсировать пп. 1 и 2.
6. Программы должны решать чьи буквы и цифры главнее
7. Программы не должны проебать напечатанное (следствие пп. 1 и 2)
8. Программы должны не давать нарушать инварианты внутри напечатанных данных
9. Программы должны уметь дружить между собой - должно быть просто использовать буквы и цифры, напечатанные в одной программе, в другой программе
10. Напечатанные буквы и цифры программы должны складывать, находить среднее, или строить по ним нейросети и предсказывать будущее

Под это дело подпадает половина всего ПО в мире: от todo-списков, через багтрекеры, до всех корпоративных приложений. Вы не видите этого из своих айфонов, но оно есть - в каждой большой компании есть десять своих 1С-ок.

Индустрии - лет уже сто наверное. Но она ни на йоту не приблизилась к тому, чтобы этот вопрос закрыть раз и навсегда. И даже не идет в этом направлении.

Вся тысяча виданных мною заходов решить эту проблему раз и навсегда - от ms access до всех CRM и всех вариантов 1C - либо не про это, либо говно и хуйня.

Короче, зачем я это все пишу: если кто что видал в тему - киньте ссылку. Либо троллить пойду, либо работать устраиваться. Это вопрос, которому я собираюсь посвятить остаток своей карьеры.

2016-01

про ООП, модули и типизацию

Наконец-то я могу сказать словами то, что меня мучило все эти годы, бгггг :)

Собственно, правильно ли я понимаю, что поскольку для structurally-typed OO языков inheritance is not subtyping (Cook et al, 1990), то semantics-preserving gradual typing в structurally-typed ОО языках невозможен?

Точнее, добавление и убавление деклараций типов будет влиять на семантику программы, при наличии там проверок типов (pattern matching, method overloading, RTTI).

Ииии, в принципе, мне кажется что это справедливо не только для ОО-языков, а и любых языков с поддержкой functions as first-class values (какие-то функции высшего порядка при этом всё равно можно закодировать, но не произвольные), т.к. тайпчекинг становится data-dependent и вынужден ошибаться либо в одну, либо в другую сторону.

Собственно именно из-за этого я не люблю ООП в Java-смысле, а предпочитаю ООП в Smalltalk-смысле, только раньше формализовать не мог.

То есть, с номинальной системой типов мы не можем выразить (статически типизировать) open-world систему, т.к. номинальная система типов кодирует перечислимое множество типов данных, равномощное ω-порядку без higher-kinded types, и ωω (или ε0?) с ними, чего, очевидно, недостаточно.

Closed-world система при этом очевидным образом ограничивает модульность (типы создают частичный порядок на модулях, который, вообще говоря, не обязателен)

Возможно, это противоречие как-то решается, если делать не gradual typing, а gradual contracts (B. Pierce этого вскользь касается, 2008), т.к. контракты более, гммм, симметричны; но я пока не нашел каких-то адекватных пейперов по теме.

Success typing для Эрланга проблему, конечно, решает, но местами это упрощение до потери смысла :) т.к. оно unsound, хотя позволяет статически детектировать *некоторые* ошибки.

В SaferTypeScript (2014) соорудили франкенштейна, который с одной стороны type-safe, но с другой стороны таки не является semantics-preserving - т.к. сдвигания границы между tagged и untagged world меняют семантику программы. Хотя, может, это и выход. Но сцуко некрасиво.

Скальные path-dependent types выглядят способом обойти проблему с другой стороны; но я их что-то как-то не до конца понимаю и не уверен, поможет ли это вообще (в их случае проблема представляется как "построение type inference для ОО-языка с path-dependent типами какая-то сцуко сложная")

This entry was originally posted at http://wizzard.dreamwidth.org/408429.html. It has comment count unavailable comments. Please comment there using OpenID.
2016-01

Частные государства

В июне американец Иеремия Хитон отыскал на карте кусочек африканской пустыни, который официально не принадлежит ни одному государству. Апеллируя к законам колониальной эпохи, он назвал его своим и требует признания у соседей. В будущем он планирует построить там процветающую монархию, а деньги собирается искать через краудфандинг. Apparat взял у Хитона интервью.


http://apparat.cc/world/king-of-the-north/

См. также:

https://ru.wikipedia.org/wiki/Провинция_Хатт-Ривер
https://ru.wikipedia.org/wiki/Силенд

This entry was originally posted at http://wizzard.dreamwidth.org/386574.html. It has comment count unavailable comments. Please comment there using OpenID.
photo24

с Днем Рождения, The Big Iron!

Оригинал взят у oldmann в с Днем Рождения, The Big Iron!
сегодня исполняется 50 лет с начала продаж первого мэйнфрейма, IBM System/360.

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

само понятие компьютерной архитектуры, т.е. набора универсальных блоков, из которых можно собрать систему на любой запрос, придумано инженерами IBM, содавшими величайшее изобретение в области Computer Science.

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

забавно, что их много раз пытались хоронить, и каждый раз попадали пальцем в небо.




ссылочка на пресс-релиз IBM от 7 апреля 1964 года: http://www-03.ibm.com/ibm/history/exhibits/mainframe/mainframe_PR360.html

photo24

Есть ли жизнь на Земле?

Оригинал взят у jayrandom в Есть ли жизнь на Земле?

В 1960 г. при подготовке запуска первой автоматической станции к Марсу в составе научного оборудования на станции предполагалось разместить аппарат (спектрорефлексометр), должный определить, есть ли на Марсе вода, а тем самым — есть ли на Марсе жизнь. Келдыш предложил испытать прибор в земных условиях. Прибор показал, что на Земле нет жизни, и был снят, что дало экономию в 12 килограммов (по воспоминаниям Б. Е. Чертока)

-- http://ru.wikipedia.org/wiki/Келдыш,_Мстислав_Всеволодович