Странно, что автор не упоминает CINT- C++ интерпретатор, созданный Masaharu Goto в 1995 году, и ставший основанием системы ROOT https://root.cern.ch/ и который позволил реализовать динамическую рефлексию и все то, что реализовано в С# ( сериализация, метаинформация о классе и пр.) задолго до появления самого С#.
Авторы, и я один из них, давно поддерживают связи с Бьярне Страустрапом, и один из них участвовал в создании LLVM/clang. Одним из основных препятствий по внедрению нашего подхода в С++ стандарт, было требование наследования всех классов из базового класса TObject, как это было реализовано потом в С#, где даже элементарные типы, типа integer, наследуются от класса Object. Очевидно, что такое введение полностью разрушило бы совместимость со старыми версиями С++. К счастью, не так давно, Bjarn Stroustrap и Herb Sutter предложили реализацию динамической рефлексии на основе attributes, не нарушая, при этом, обратной совместимости со старыми версиями С++. На Хабре была публикация на эту тему. Стоит надеяться, что динамическая рефлексия появится в С++26 стандарте, что значительно расширит возможности языка.
Докер, который не имеет Dockerfile, но имеет содержит более 200 программ и библиотек самых последних версий собранных из исходников. В качестве инструмента "контейнеризации", кроме докера, может запускаться из-под chroot (linux) или как WSL2 (Windows for Linux) дистрибутив. В качестве докера, предназначен для параллельных научных вычислений на распределенном кластере. Позволяет запускать одновременно более 100 тысяч jobs.
Эта статья - "один из самых ярких примеров того, что и в программировании «верить на слово» нельзя." Автор привел в качестве примера неработающий код. Я имею ввиду не только отсутствии табуляции, но и то, что даже после всех исправлений этот код выдаёт неправильный результат. Например, для числа 293 из таблицы, результат должен быть -21. Автор, пожалуйста, опубликуйте распечатку liouville_table.txt для этого числа.
Вся статья - набор формул и картинок, в которых разобраться невозможно. Автор "ради красного словца" пишет то, о чем, по-видимому, сам до конца не разобрался перепечатывая чужие слова, картинки. Обсуждение - ничем не лучше. Все кружится вокруг "КАК склоняется фамилия Пойя".
Появление GSL - отлично! Но, почему Бьерн Стрaуструп ничего не упоминает о другой работе/предложении своего коллеги, Херба Саттера, о передаче параметров https://github.com/hsutter/708/blob/main/708.pdf, которое подразумевает расширение синтаксиса C++, с включением в таких языковых элементов, как "in", "out", "inout" (a la C#), которое ещё более повысило бы "Безопасность типов и ресурсов в современном C++".
Тратит время на другие вещи помимо программирования, например хобби, друзей или семью.
Пишет код с — вздох — багами.
Пишет код, который могут прочесть другие.
Читает доки.
Обновляет доки.
Не обязательно помешан на коде, который пишет, или задаче, которую решает.
Не удивляется, когда кто-то чего-то не знает.
Хочет и может взаимодействовать с другими.
Умеет признать, что был неправ, и не боится сказать «Я не знаю».
Помогает другим прокачать свои навыки.
Копипастит код из StackOverflow.
Задаёт вопросы.
Может любить или не любить писать документацию, но всё равно делает это для будущих разработчиков.
Умеет быть благодарным за потраченные время, усилия и энергию других людей.
Ценит конструктивные и полезные код-ревью от коллег.
Предоставляет конструктивные, полезные, тактично поданные код-ревью, которые помогают коллегам расти как в личном, так и в профессиональном плане.
Просит помощи, когда нуждается в ней.
Может иметь красочный фон рабочего стола.
Поддерживает код на продакшне, даже если не он его написал.
Порой может чувствовать себя самозванцем.
Следит за тем, чтобы обсуждения всегда были продуктивными и у всех была возможность высказать своё мнение перед тем, как команда примет решение. Не считается с чужим мнением только при наличии аргументов.
Создаёт сообщество и делится знаниями.
Никогда не перестаёт учиться.
Желает выйти из зоны комфорта.
Вносит вклад в сообщество.
Может медленно писать код.
Не хейтит фреймворк Y, если работает с фреймворком X.
Иногда делает небольшие перерывы, чтобы проветрить голову.
Может работать как продуктивно, так и не очень.
Не воспринимает себя слишком серьёзно.
Косячит время от времени.
Говорит: «Я никогда не слышал об этом», — вместо того, чтобы кивать и притворяться, что это не так.
Заслуживает доверия.
Работает, чтобы жить, а не наоборот.
Имеет любимый редактор, браузер и операционную систему, но понимает, что у других тоже есть свои любимчики.
Не стоит относится к тому, что написала эта дама серьёзно, потому что это всE из серии популистики и дилетантства. Лучше прочтите, что она пишет в статье "Я люблю девушку, которая ругается матом" :) https://www.cammipham.com/love-girl-swears-backed-science/
Стоит обратить внимание на этот процессор, который запускается в серию в этом году
https://елбрус.рус/процессоры/центральный-процессор-эльбрус-32с
32-64 ядер в процессоре
4 процессора в модуле
Тактовая частота >= 2Гц
Пиковая производительность - 3 TFLOPS FP32, 1.5 TFLOPS FP64
Кэш-память 64Мб
Оперативная память - 6 канала DDR5, 4 Тб на процессор
Топология 30 млрд. транзисторов<=7 нм техпроцесс, 600 мм² площадь кристалла
Можно, также посмотреть на игрушки
https://елбрус.рус/игры/
... ну, и на сами компьютеры
https://елбрус.рус/русские-компьютеры/
Спасибо, Тимуру за статью и репу.
Тема qemu-e2k в связке с chroot+binfmt_misc не раскрыта
Эльбрус/qemu — ALT Linux Wiki
Почему Астра, а не Альт?
Конфигурация:
клиент: AndroidTB, bluetooth keyboard, mouse, Termux, ssh
сервер: битый смартфон Xiaomi 14, 512 Gb брал за <2К, процессор Snapdragon 8 gen 3, Android, Termux, sshd
Эта простенькая конфигурация бьет на порядок по мощности и по цене ваши "мощные крохи".
Я здесь привел minimal config. Мой боевой, дорожный вариант - Samsung Galaxy Tab S9+, 12".
В походе тыкаешь стилусом, дома работаешь, как на полноценном компьютере.
В планах, добавить еще пару, тройку болванок, чтобы получить миниферму.... запускать на 40 ядрах свои докеры на основе https://git.jinr.ru/x2v0/lfspd
Там далеко, за туманами, маячит майнинг на ферме из сотен тысяч болванок и Наш ответ ChatGPT и DeepSeek :о)
Странно, что автор не упоминает CINT- C++ интерпретатор, созданный Masaharu Goto в 1995 году, и ставший основанием системы ROOT https://root.cern.ch/ и который позволил реализовать динамическую рефлексию и все то, что реализовано в С# ( сериализация, метаинформация о классе и пр.) задолго до появления самого С#.
Авторы, и я один из них, давно поддерживают связи с Бьярне Страустрапом, и один из них участвовал в создании LLVM/clang. Одним из основных препятствий по внедрению нашего подхода в С++ стандарт, было требование наследования всех классов из базового класса TObject, как это было реализовано потом в С#, где даже элементарные типы, типа integer, наследуются от класса Object. Очевидно, что такое введение полностью разрушило бы совместимость со старыми версиями С++. К счастью, не так давно, Bjarn Stroustrap и Herb Sutter предложили реализацию динамической рефлексии на основе attributes, не нарушая, при этом, обратной совместимости со старыми версиями С++. На Хабре была публикация на эту тему. Стоит надеяться, что динамическая рефлексия появится в С++26 стандарте, что значительно расширит возможности языка.
https://git.jinr.ru/x2v0/lfspd
Докер, который не имеет Dockerfile, но имеет содержит более 200 программ и библиотек самых последних версий собранных из исходников. В качестве инструмента "контейнеризации", кроме докера, может запускаться из-под chroot (linux) или как WSL2 (Windows for Linux) дистрибутив. В качестве докера, предназначен для параллельных научных вычислений на распределенном кластере. Позволяет запускать одновременно более 100 тысяч jobs.
Эта статья - "один из самых ярких примеров того, что и в программировании «верить на слово» нельзя."
Автор привел в качестве примера неработающий код.
Я имею ввиду не только отсутствии табуляции, но и то, что даже после всех исправлений этот код выдаёт неправильный результат.
Например, для числа 293 из таблицы, результат должен быть -21.
Автор, пожалуйста, опубликуйте распечатку liouville_table.txt для этого числа.
Вся статья - набор формул и картинок, в которых разобраться невозможно.
Автор "ради красного словца" пишет то, о чем, по-видимому, сам до конца не разобрался перепечатывая чужие слова, картинки.
Обсуждение - ничем не лучше.
Все кружится вокруг "КАК склоняется фамилия Пойя".
Про будущее C++
https://www.youtube.com/watch?v=ELeZAKCN4tY
IMHO, оно лучезарное.
C++ фарева! :)
С нетерпением жду выхода C++2 от Herb Sutter
https://github.com/hsutter/cppfront
который сделает C++ в десятки раз проще и безопаснее.
Не (2, 3, 1), а (2, 1, 3) !!!
Недавно с удивлением узнал, что мой Хирш = 43, на основе 81 публикаций.
Я в шоке!
Ничего особенного для этого я не делал.
Спасибо за ссылку! Посмотрел.
Хотелось бы, чтобы у них получилось.
Но, стоит заметить Carbon - детище google, а Саттер работает в Microsoft, в коммиттерах его нет.
Появление GSL - отлично!
Но, почему Бьерн Стрaуструп ничего не упоминает о другой работе/предложении своего коллеги, Херба Саттера, о передаче параметров https://github.com/hsutter/708/blob/main/708.pdf, которое подразумевает расширение синтаксиса C++, с включением в таких языковых элементов, как "in", "out", "inout" (a la C#), которое ещё более повысило бы "Безопасность типов и ресурсов в современном C++".
Лучшая статья. Стивен - гений!
Правильное название Spack - Spack
В Тему - https://bitfieldconsulting.com/golang/crisp-code
Don't write clean code, write CRISP code. Who wants to write dirty code, unless maybe it's for a porn site?
Good programs should be Correct, Readable, Idiomatic, Simple, and Performant
Кто такой 1x-программист?
Гуглит, когда в чём-то не уверен.
Тратит время на другие вещи помимо программирования, например хобби, друзей или семью.
Пишет код с — вздох — багами.
Пишет код, который могут прочесть другие.
Читает доки.
Обновляет доки.
Не обязательно помешан на коде, который пишет, или задаче, которую решает.
Не удивляется, когда кто-то чего-то не знает.
Хочет и может взаимодействовать с другими.
Умеет признать, что был неправ, и не боится сказать «Я не знаю».
Помогает другим прокачать свои навыки.
Копипастит код из StackOverflow.
Задаёт вопросы.
Может любить или не любить писать документацию, но всё равно делает это для будущих разработчиков.
Умеет быть благодарным за потраченные время, усилия и энергию других людей.
Ценит конструктивные и полезные код-ревью от коллег.
Предоставляет конструктивные, полезные, тактично поданные код-ревью, которые помогают коллегам расти как в личном, так и в профессиональном плане.
Просит помощи, когда нуждается в ней.
Может иметь красочный фон рабочего стола.
Поддерживает код на продакшне, даже если не он его написал.
Порой может чувствовать себя самозванцем.
Следит за тем, чтобы обсуждения всегда были продуктивными и у всех была возможность высказать своё мнение перед тем, как команда примет решение. Не считается с чужим мнением только при наличии аргументов.
Создаёт сообщество и делится знаниями.
Никогда не перестаёт учиться.
Желает выйти из зоны комфорта.
Вносит вклад в сообщество.
Может медленно писать код.
Не хейтит фреймворк Y, если работает с фреймворком X.
Иногда делает небольшие перерывы, чтобы проветрить голову.
Может работать как продуктивно, так и не очень.
Не воспринимает себя слишком серьёзно.
Косячит время от времени.
Говорит: «Я никогда не слышал об этом», — вместо того, чтобы кивать и притворяться, что это не так.
Заслуживает доверия.
Работает, чтобы жить, а не наоборот.
Имеет любимый редактор, браузер и операционную систему, но понимает, что у других тоже есть свои любимчики.
Когда я был "начинающим программистом" у нас в команде были свои "Coding Conventions".
Не вдаваясь в детали, их можно было сформулировать, как = "твой код не должен отличаться от кода написанного другим членом команды".
И хотя никаких подробных инструкций, как писть код не было, но очень скоро я стал писать "чистый код", подобный описываему в статье.
Не стоит относится к тому, что написала эта дама серьёзно, потому что это всE из серии популистики и дилетантства.
Лучше прочтите, что она пишет в статье "Я люблю девушку, которая ругается матом" :) https://www.cammipham.com/love-girl-swears-backed-science/
Удивительно, что автор не упомянул Kotlin!?
потому что Kotlin и C# - близнецы-братья :)