编辑:史蒂夫Vinoski在评论中提供了正式的名称:元组模块.
我的原始问题仍然存在:OTP团队正式记录的元组模块是什么?他们预计未来会继续受到支持吗?
原始问题:
考虑以下erlang模块:
-module(foo).
-compile(export_all).
new(Bar) -> {foo, Bar}.
get({foo, Bar}) -> Bar.
Run Code Online (Sandbox Code Playgroud)
看到它允许以下内容(使用erlang 19.1),我感到非常惊讶:
2> Foo = foo:new(bar).
{foo,bar}
3> Foo:get().
bar
Run Code Online (Sandbox Code Playgroud)
这与调用模块函数的常用方法有很大不同.
据我所知,它似乎是参数化模块的残余,自R16以来已被弃用; 我在官方文档中找不到任何内容,说明这是该语言支持的稳定功能.
我的问题是:这是该语言的文档功能吗?如果是的话,在哪里?
erlang ×1