Fortran в Maguyva: графы кода для научных кодовых баз
Для численного кода, пережившего своих авторов, граф вызовов становится первой документацией.
Расширения
.f, .f03, .f08, .f90, +ещё 3
Maguyva поддерживает R с AST, символами и графом, чтобы ИИ-агенты могли прослеживать функции, диспетчеризацию S3 и S4 и вызовы подгонки моделей в скриптах и пакетах R.
R помещает базовые функции, функции пакетов и ваши функции в одно плоское пространство имён. Точки являются частью имени, а не доступом к члену: is.na, data.frame и print.summary_table представляют собой единые идентификаторы. Инструмент, который читает print.summary_table как метод у print, неверно понимает структуру, а инструмент, записывающий каждый базовый вызов, хоронит ваши функции под c() и paste().
Maguyva сохраняет имена R целиком и отфильтровывает шум базовых функций, чтобы агент видел функции, от которых действительно зависит ваш анализ.
Maguyva сопоставляет файлы .R, .Rmd и .Rnw с R. Функции, присвоенные имени, например clean_survey <- function(df), извлекаются под этим именем; анонимные функции не считаются определениями. Имена с точками никогда не разбиваются на получателя и член.
Некоторые базовые вызовы R намеренно оставлены в графе, потому что показывают, как связан аналитический код: диспетчеризация S3 и S4 (UseMethod, standardGeneric), семейство apply (lapply, sapply, vapply, mapply), подгонка моделей (lm, predict, anova), загрузка пакетов (library, require) и обработка ошибок через tryCatch.
Граф также фиксирует создание экземпляров, чтение и запись.
clean_survey и какие модели используют её результат?» (find_symbol, затем dependency_search по входящим связям)fit_model?» (dependency_search)load_raw_data до итоговой регрессии.» (get_task_context)stats и graphics отфильтрованы из связей, например print, paste, c, data.frame, вызовы построения графиков и генераторы случайных чисел. Для них используйте text_pattern_search.classes, imports и variables в structural_search ничего не выбирают. Используйте find_symbol и text_pattern_search..Rmd и .Rnw читаются целиком грамматикой R, а не по фрагментам; для документов R Markdown и Sweave результаты могут быть неполными.Подключите репозиторий по быстрому старту, затем изучите матрицу поддержки на странице совместимости. Для смешанных репозиториев по науке о данных прочитайте и руководство по языку Python.
Лучше всего подходит
Сценарии работы агента
Детали движка
Полезные точки входа MCP
Используйте для имени функции очистки, моделирования или метода S3, когда нужны определение и вызовы.
Используйте обход входящих связей, чтобы увидеть, какие анализы зависят от вспомогательной функции, прежде чем менять её результат.
Используйте для промптов вроде «проследи путь от загрузки сырых данных до итоговой регрессии».
Похожие гайды
Для численного кода, пережившего своих авторов, граф вызовов становится первой документацией.
Расширения
.f, .f03, .f08, .f90, +ещё 3
Полезно, когда кодовые базы на Python разрастаются по сервисам, скриптам, тайп-стабам и эксплуатационному связующему коду.
Расширения
.py, .pyi, .pyw