Как стать автором
Обновить
-2
0

Пользователь

Отправить сообщение

Откройте для себя Фильтр Кальмана

После первого знакомства с ChatGPT, DeepSeek, подумал - "Ну, вот, дождались! Теперь каждый дебил может считать себя крутым хацкером".

Однако, без оригинального кода, выстраданного кровью и потом - это все тьфу, nothing.

На днях, тупо уставясь в ящик, в глубоком backgrounde, слегка автоматизировав процесс, перелопатил дипсиком  https://git.jinr.ru/x2v0/lfspd

В итоге, через пару часов работы, на выходе получил порядка 200 .sh + .md файлов.

См. ***. ds.**

Внутренние ощущения ...

Неплохо улучшает  .md файлы. В bash добавляет всевозможные проверки, что обычно лень делать, но тоже не помешает. Понятно, что  все необходимо перепроверять. Но, главное, мой полуавтомат работает, безо всякого DeepSeek API.

Самое главное применение этого полуавтомата == lint / pre-commit / CI/CL

 т.е. вместо lint, static code check,  PVS Studio, Reshaper, CLion, настало время DeepSeek Code.

Проверил на - C++, C#, Python, MarkDown, bash - работает превосходно ... у меня нет слов!

Никто не догадался задать малтчику классический ленинский вопрос - "Как нам реорганизовать рабкрин?"

Его ответ был таким.

Реорганизация языка C++ — это сложная задача, учитывая его историю, широкое использование и множество существующих кодовых баз. Однако, если бы мы задумались о том, как можно улучшить или модернизировать C++, вот несколько идей, которые могли бы быть рассмотрены:

1. Упрощение синтаксиса

  • Проблема: Синтаксис C++ может быть излишне сложным и перегруженным.

  • Решение: Ввести более простые и интуитивно понятные конструкции для часто используемых паттернов. Например:

    • Упростить шаблоны (templates) с помощью концепций (concepts) и других механизмов.

    • Уменьшить количество способов сделать одно и то же (например, инициализация переменных: =, {}, ()).

2. Улучшение системы модулей

  • Проблема: Заголовочные файлы (#include) устарели и могут вызывать проблемы с зависимостями и временем компиляции.

  • Решение: Полноценная поддержка модулей (как в C++20), чтобы заменить #include. Это ускорит компиляцию и улучшит инкапсуляцию.

3. Безопасность памяти

  • Проблема: Управление памятью в C++ требует высокой дисциплины и может приводить к утечкам, висячим указателям и другим ошибкам.

  • Решение: Встроить инструменты для автоматического управления памятью (например, умные указатели как стандарт) или добавить опциональный сборщик мусора. Также можно улучшить статический анализ и добавить больше проверок времени выполнения.

4. Улучшение стандартной библиотеки

  • Проблема: Стандартная библиотека C++ иногда неудобна или недостаточно функциональна.

  • Решение: Расширить стандартную библиотеку, добавив больше современных структур данных и алгоритмов. Например:

    • Встроить поддержку сетей, JSON, XML и других популярных форматов.

    • Добавить больше функций для работы с асинхронным программированием.

5. Упрощение многопоточности

  • Проблема: Многопоточное программирование в C++ сложно и подвержено ошибкам.

  • Решение: Ввести более высокоуровневые абстракции для работы с потоками и синхронизацией, например, как в Rust или Go.

6. Обратная совместимость

  • Проблема: C++ должен поддерживать обратную совместимость, что ограничивает возможности для улучшений.

  • Решение: Ввести "режим совместимости" и "режим современного C++", где в современном режиме можно было бы использовать более строгие и безопасные конструкции.

7. Улучшение инструментов разработки

  • Проблема: Инструменты для работы с C++ (компиляторы, отладчики, анализаторы) иногда недостаточно удобны.

  • Решение: Улучшить стандартизацию инструментов и их интеграцию. Например:

    • Унифицировать форматы диагностики ошибок.

    • Встроить больше возможностей для статического анализа.

8. Упрощение метапрограммирования

  • Проблема: Шаблоны и метапрограммирование в C++ могут быть чрезвычайно сложными.

  • Решение: Ввести более простые и мощные механизмы для метапрограммирования, такие как рефлексия и улучшенные концепции.

9. Улучшение документации и обучения

  • Проблема: C++ сложен для изучения из-за своего объема и нюансов.

  • Решение: Создать более структурированную и доступную документацию, а также обучающие материалы, которые бы учитывали современные подходы.

10. Экосистема пакетов

  • Проблема: В C++ отсутствует стандартная система управления зависимостями.

  • Решение: Ввести стандартный менеджер пакетов, подобный npm для JavaScript или cargo для Rust.

Заключение

Реорганизация C++ должна быть осторожной, чтобы не нарушить существующие кодовые базы. Однако, с учетом современных требований к языкам программирования, такие изменения могли бы сделать C++ более безопасным, удобным и конкурентоспособным. Многие из этих идей уже частично реализуются в современных стандартах (C++11, C++14, C++17, C++20, C++23), но есть еще куда расти.

С этим Я с ним абсолютно солидарен!

Напоминает религиозные войны, которые велись на ЛОРе в конце 90х.

Последние предложения по развитию языка от Бьярне и Саттера выглядят весьма многообещающими.

Юлечка на HEPесах с бриллиантами.

https://hepsoftwarefoundation.org/activities/juliahep.html

https://github.com/JuliaHEP/ROOT.jl

Были бы у нее яйца так бы маханул по ним с плеча бритвой Оккама!

Достаточно странно рекомендовать этот ворох макулатуры в век Больших Языковых Моделей.

Скоро все быстро позабудут, что была такая профессия.

забыли про порно.

вот, где революция грядет, сравнимая разве что с появлением интернета.

code-search по-лучше будет.

когда-то меня поразила продолжительность жизни древнегреческих философов - почти все умерли чуть ли не столетними.

Что это?

За 2 тысячи лет до 1870 года все было по другому?

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность