Haskell sa Maguyva: mga code graph para sa type class at module
Marami nang sinasabi ang mga type ng Haskell. Ipinapakita ng graph kung sino ang umaasa sa kanila.
Mga extension
.hs, .lhs
Sinusuportahan ng Maguyva ang Elixir gamit ang AST, mga symbol at graph, para ma-trace ng mga AI agent ang mga module, behaviour, protocol at struct sa Phoenix at OTP code.
Halos lahat sa Elixir ay macro call. Pare-parehong napa-parse bilang call ang defmodule, def, use, alias at @impl, at nagdadala ang use GenServer ng behavior na hindi kailanman lumalabas sa file. Hindi kayang paghiwalayin ng tool na call syntax lang ang nakikita ang definition at dependency, o ang GenServer callback at helper.
Ginagawang relationship ng Maguyva ang mga macro na iyon, para makita ng agent kung aling mga module ang nag-i-implement ng behaviour at kung sino ang tumatawag sa isang context function.
Sakop ng Maguyva ang mga .ex at .exs file. Nagiging relationship ang mga macro ng Elixir nang ganito:
alias, import at require.use. Para sa mga OTP at framework behaviour tulad ng GenServer, Supervisor, Agent, Task, Phoenix.Controller, Phoenix.LiveView at Ecto.Schema, itinatala rin nito na ini-implement ng module ang behaviour na iyon.@behaviour attribute at defimpl block.@doc, @spec, @impl at @callback. Hindi itinatala ang mga attribute na may hawak na value, gaya ng @timeout 5_000.%User{} struct literal, nagtatala ng throw ang raise, at nagtatala ng catch ang rescue at catch.Nifi-filter mula sa mga call ang mga language macro tulad ng def, defp, defmodule, case at with, kaya sarili mong mga function ang ipinapakita ng call graph.
Accounts.register_user, at mula sa aling mga controller?” (find_symbol, tapos dependency_search na incoming)GenServer?” (dependency_search)get_task_context)def, defmodule, alias at import, kaya ang functions preset lang sa structural_search ang may resulta, at para lang sa mga anonymous fn function. Gamitin ang find_symbol para sa mga named function at module.IO.puts, String.*, Enum.take at Process.* ang nifi-filter mula sa mga relationship. Gamitin ang text_pattern_search para sa mga iyon.Mag-connect ng repository gamit ang quickstart, tapos tingnan ang support matrix sa compatibility page. Para sa iba pang functional codebase, basahin ang gabay sa Haskell.
Pinakabagay
Mga workflow ng agent
Mga detalye ng engine
Mga kapaki-pakinabang na MCP entry point
Gamitin para sa isang context function o module kapag kailangan mo ang definition at mga caller; hindi napipili ng mga structural preset ang mga named `def` form.
Gumamit ng incoming traversal para makita kung aling mga module ang nag-i-implement ng isang behaviour o protocol.
Gamitin para sa mga prompt tulad ng "i-trace ang isang payment request mula sa controller hanggang sa database".
Mga kaugnay na gabay
Marami nang sinasabi ang mga type ng Haskell. Ipinapakita ng graph kung sino ang umaasa sa kanila.
Mga extension
.hs, .lhs
Parang prosa kung basahin ang Ruby. Pero kailangan pa rin ng mapa ang mga dependency sa likod nito.
Mga extension
.gemfile, .gemspec, .rake, .rakefile, +2 pa