Generating type specs programmatically

Guilherme Andrade g@REDACTED
Sun Dec 6 20:13:08 CET 2020

Thanks for the suggestion!

After a quick glance, Typer seems to be directly generating string
representations of the specs - that is, not actually manipulating the AST
of the modules it works on by inserting nodes that represent said specs.

That's a shame, but it's what I will also do if I don't find a more elegant
way to do it through `erl_syntax`.

Oh well.

On Sat, 5 Dec 2020 at 22:29, Fred Hebert <mononcqc@REDACTED> wrote:

> You might want to look at Typer, since it's whole purpose is to generate
> type specs for code that you can directly put in code.
> On Sat, Dec 5, 2020 at 3:25 PM Guilherme Andrade <g@REDACTED> wrote:
>> Hello list,
>> I've been working on a code-generating tool, leveraging `erl_syntax`[1]
>> to build an AST containing arbitrary Erlang functions; I then use
>> `erl_pp`[2] to generate the corresponding Erlang code and write the result
>> onto a source code file.
>> All is well so far, but now I want to generate type specs and function
>> specs with which to annotate the generated code - and I can't for the life
>> of me figure out how to do it within `erl_syntax`.
>> All of the different attempts I've made end up either crashing within
>> `erl_syntax` or `erl_pp`, or at best result in INVALID-FORM literals within
>> the generated code.
>> Would any of you be able to point me in the right direction?
>> Thanks in advance!
>> [1]:
>> [2]:
>> --
>> Guilherme

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the erlang-questions mailing list