10 октября состоялся релиз KDE Plasma 5.11. Данный выпуск включает в себя переработанный интерфейс настроек, улучшения уведомлений, более продвинутый менеджер задач и Vault — систему, которая позволяет пользователю шифровать наборы документов, используя дружественный графический интефейс оболочки.
Недавно ко мне обратились с вопросом, не хочу ли я написать новость об одной из разрабатываемых библиотек (plibsys). В принципе, я не против, поэтому эксклюзивно для LOR.
Что такое plibsys?
plibsys — это кросс-платформенная системная библиотека, написанная на чистом C. Основной упор был изначально сделан на портируемость и поддержку широкого спектра компиляторов. Для достижения этих целей у библиотеки отсутствуют (небольшим исключением является SCO OpenServer 5 ввиду отсутствия на ней потоков) какие-либо зависимости — используются только те вызовы, которые доступны в целевой ОС. Также никакого ассемблера и использования прочих недокументированных возможностей. Для сборки нужен только рабочий компилятор и CMake.
Изначально библиотека писалась для запуска потоков и работы с сокетами, но постепенно функционал расширялся по мере необходимости. На данный момент есть следующий функционал:
Платформо-независимые типы данных
Потоки и средства синхронизации: мьютексы, условные переменные, блокировки чтения-записи, спинлоки, атомарные операции
Что можно сказать? Во-первых, CL как язык для МП устаревает и теряет привлекательность буквально у нас на глазах. В scala, конечно, МП менее удобно из-за более сложного синтаксиса, зато в Scala появилась концепция семантической БД - это результат семантического анализа текста со всеми типами данных и декларациями. В CL такой семантической БД нет. Притом что Scala - это даже не первый такой язык. Если я правильно понял, clang тоже такое умеет.
Среди не афишируемых целей проекта Яр есть цель сделать именно такую семантическую БД. Теперь нет смысла это скрывать.
Поимимо этого, кто не в курсе - Common Lisp _не является_ гомоиконным языком, потому что есть #. , квазицитаты частично обрабатываются, а комментарии теряются. Другие побочные эффекты чтения - это создание символов в пакетах. macro character-ы назначенные пользователем, могут делать что угодно, вплоть до запуска ракеты. Т.е. нельзя зачитать файл лиспа и проанализировать его средством без последствий для среды. Вообще нельзя. Для Java и C это сделать можно, а для лиспа - нет. Фига себе, да? Ещё одной целью проекта Яр является создание истинно гомоиконного языка. Причём это не моя прихоть, а обязательное условие для создания полноценной IDE, а не набора костылей, каковым является SLIME.
Если ещё остались энтузиасты лиспа, можно попробовать сделать семантическую БД для CL. Есть augment-environment, к-рая поддерживается в CCL. В ней есть кое-какая информация о типах. Хотя на самом деле скорее всего придётся патчить компиляторы.
У меня шкурный интерес здесь - если такая база будет, мне для проекта Яра будет достаточно отмапить эту базу на свой язык.
И ещё одно странное наблюдение - похоже, что макросы в Scala никому особо не нужны.
В общем, имеется комп, в памяти которого сидит руткит от ЦРУ. Даже примерно уже понятно где. Имеется плата куда можно воткнуть планку..
Задача: вынуть планку из мамки и воткнуть в плату для наказаний без потери данных. Как я понял, вообще теоретически это сделать можно.
Для этого надо обеспечить общую землю между мамкой и платой для наказаний. Это просто. Далее, надо загнать планку в режим сна, при котором она тристейтит все входы, кроме CKE и обновляет сама себя. В принципе, все что нам нужно это подпаять жырный ионистор параллельно питанию планки памяти и добавить достаточно высокоомную подтяжку для CKE к нулю, чтоб когда проц загонит память в self refresh, она там и осталась после выдирания.
Что меня смущает: ионистор может очень много тока жрать. Нет предложит ли кто способ заряжать его плавно?
через диод и резистор с зарядной цепи на ионистор + диод с ионистора на питание микросхем. 1.8вольт+0.6+0.6=это 3 вольта. ну можно еще германиевый сунуть последовательно, до 3.3 докатить. Кто нибудь видит явные косяки в этой реализации? Может я что-то не углядел.
Еще вопрос: может кто-то работал в DDR3 и подскажет, достаточно ли просто подтянуть CKE через 4.7к к земле, как на DDR2? На форумах пишут что так делали и брат был жив, но возможно у кого-нибудь есть альтернативное мнение.