-
Notifications
You must be signed in to change notification settings - Fork 6
Description
maketerm(T, head, children, type=nothing, metadata=nothing)Constructs an expression. [...],
typeis thetypeof the S-expression.What is the meaning of the
typeargument here? "Type of the sexp" means nothing to me, sexps don't have type?
Originally posted by @nsajko in #25 (comment)
The fourth argument, type, seems like it's not generally useful for expressions, and redundant with the next argument, metadata. Is there any reason why it should exist in this interface?
I notice that the in-development version of Metatheory.jl that supports the current TermInterface.jl always ignores both type and metadata, and so will my package. EDIT: actually my package does use metadata for some types.
Was type only introduced to make things slightly more convenient for the SymbolicUtils.jl implementation?