Re[7]: И еще рассуждения об ИИ
От: Sinclair Россия https://github.com/evilguest/
Дата: 01.02.26 17:56
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Ну так PVS Studio и давали файл кода. Больше ничего.

А тут — не "файл", а проект. На смеси языков.

PD>Этого у него тогда не было, но это было лет 10 назад. С тех пор я с ним дела не имел. Да и его тогда для C# вроде как не было, а для Java только в альфа-версии.

А при чём тут C#?

PD>Чего ради он будет делать то, для чего он не предназначен ?

Тогда зачем его приводить в качестве решения п.5?


PD>А вот это уже интереснее. Линтеры и верификаторы — бог с ними, а вот юнит-тесты — это интересно. Насколько я понимаю, такое можно сделать только если запускать код под собой и контролировать его выполнение. Это уже не статический анализ, а контроль в рантайме. Профайлеры это умеют, но они инструментируют байт-код. Для С++ это неплохо умел покойный Bounds Checker, я им студентов долго мучил. А тут как и кто ? Используется некий инструмент ? И он есть только в этом ИИ, а отдельно его нет ? Чтобы я сам под ним свои unit тесты запустил ? Хм...

Нет, я говорю о том, что обычные, не ИИ инструменты в проекте уже есть. И они все ничего не нашли. А вот ИИ посмотрел — и увидел, что логика нарушена.

PD>https://pvs-studio.ru/ru/docs/warnings/v1051/


PD>Вот что мне бы выдалось


PD>V1051. It is possible that an assigned variable should be checked in the next condition. Consider checking for typos.

Ну вот это и есть шаблонный текст с кодом ошибки.
PD>В общем, вполне понятно, а для если непонятно — см. пояснения и примеры на этой странице. Что ему, их все в диагностику мне выдать ?

Нет. Я же привёл пример. ИИ в отличие от шаблонных анализаторов пишет понятным языком "Код открывает файл лога вызовом CreateFile(), но её результат не проверяется. Поэтому при неудаче открытия запись FileWeite на три строки ниже не сработает".

Не, я меня нет задачи убедить кого-то, что божьей искры не существует. Но ИИ сейчас успешно берёт на себя функции, которые ещё год назад казались подвластными _исключительно_ человеку.
Как насчёт задачки "проверь соответствие кода спецификации"? Спецификация — на естественном языке, записана в маркдауне.
Или "найди противоречия в документации проекта". Вот прямо так, даже без перечисления файлов документации.
Или "найди все ссылки в документах проекта и сделай их гиперссылками", где под "ссылкой" понимается любое упоминание вроде "список констант лежит в файле consts.hpp в папке common".
Всё это никакие линтеры и ПВЗ студии не делают.
Ладно, пёс с ним, допустим, PVS Studio нашла V1051. Исправить эту проблему в коде она может?
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.