O recurso de annotation foi liberado na versão 17.3.0.3 e o objetivo é possibilitar a declaração de metadados nas nossas classes, métodos e funções, isto é, as configurações deles podem ficar dentro do mesmo código fonte.

Definição da annotation, a sugestão é que ela seja colocada em TH (TLPP Header File) que pode ser utilizado em vários fontes.

@annotation ExemploDeAnnotation 
    property1 as char
    property2 as numeric default 1
@end

Uso da annotation em definição de classe:

@ExemploDeAnnotation(property1 = "MeuObject")
class meuObj
    public Data data1
    public method new()
EndClass

Uso da annotation em definição de método:

class meuObj
    public Data data1
	@ExemploDeAnnotation(property1 = "MetodoNew")
    public method new()
EndClass

Uso da annotation em definição de propriedade:

class meuObj
	@ExemploDeAnnotation(property1 = "PropertyData", property2 = 456)
    public Data data1
EndClass

Uso da annotation em definição de função:

@ExemploDeAnnotation(property1 = "FunctionTeste", property2 = 123)
main Function teste()
	conout("annotationTest")
Return

Novas funções disponíveis para uso juntamente com o recurso de Annotation, as funções foram disponibilizadas dentro do namespace Reflection: