Practical Variable-Arity Polymorphism
Practical Variable-Arity Polymorphism
复制标题
实用可变数量多态性
DOI:
--
复制
发表时间:
2009
期刊:
影响因子:
--
通讯作者:
M. Felleisen
中科院分区:
文献类型:
--
作者:
T. Strickland;Sam Tobin;M. Felleisen
Just as some functions have uniform behavior over distinct types, other functions have uniform behavior over distinct arities. These variable-arity functions are widely used in scripting languages such as Scheme and Python. Statically typed languages also accommodate modest forms of variable-arity functions, but even ML and Haskell, languages with highly expressive type systems, cannot type check the wide variety of variable-arity functions found in untyped functional languages. Consequently, their standard libraries contain numerous copies of the same function definition with slightly different names.
As part of the Typed Scheme project--an on-going effort to create an explicitly typed sister language for PLT Scheme--we have designed and implemented an expressive type system for variable-arity functions. Our practical validation in the context of our extensive code base confirms the usefulness of the enriched type system.