Люди и агенты писали бы код лучше, если бы можно было легко проверить, какие значения переменные обычно принимают в продакшене.
Хотя подобные подходы уже встречались (в каком-то смысле ещё со времён Smalltalk), Darklang выделяется как заметный пример: у каждой функции есть примеры прошлых HTTP-запросов, и можно увидеть, как реальные данные проходят через неё.
Ещё в 2018 году я немного исследовал похожую идею: что если можно кликнуть на любую функцию в коде и увидеть примеры прошлых входных и выходных данных?
Удалось трассировать/записывать произвольные программы на Ruby (очень медленно) благодаря гибкости интерпретатора Ruby. Можно было даже записать выполнение тестов и затем использовать это как примеры данных при чтении кода.
https://geoffreylitt.com/margin-notes/
Есть серьёзные сложности, чтобы сделать это реально рабочим. Записывать большой объём детального runtime-состояния — сложно и дорого по ресурсам. А удобно показывать это состояние прямо в редакторах кода исторически тоже было непросто (хотя сейчас, с агентами, ситуация быстро меняется — в чём-то становится проще).
В целом же runtime-состояние до сих пор сильно недоиспользуется в интерфейсах разработки, а агрегированные данные из продакшена — тем более. Людям и агентам гораздо полезнее видеть конкретные данные, а не только абстрактную логику.
Чёрт возьми, у нас уже есть AI — почему бы не предсказывать, как будут меняться переменные, исходя из контекста всей организации, а не только кодовой базы 😭
👉 @PythonPortal
Post #5643
6.35K


- 👍 6
- ❤ 3