public FunctionType(
     IEnumerable <DataType> parameterTypes,
     DataType returnType)
     : base(Lifetime.Forever)
 {
     ParameterTypes = parameterTypes.ToFixedList();
     ReturnType     = returnType;
     IsResolved     = ParameterTypes.All(pt => pt.IsResolved) && ReturnType.IsResolved;
 }