2015-01-06 25 views
8

这是我从Programming Erlang, 2nd Ed学到的东西之一,但似乎并没有对外壳未定义功能地图:to_json/1

$ erl 
Erlang/OTP 17 [erts-6.2] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace] 

Eshell V6.2 (abort with ^G) 
1> Dic = #{b => 1, a => 2}. 
#{a => 2,b => 1} 
2> maps:to_json(Dic). 
** exception error: undefined function maps:to_json/1 
3> 

工作,有什么不对吗?

回答

18

Programming Erlang, 2nd Ed之前写的maps被引入release 17(作为实验性的特征),看起来书的作者乔阿姆斯特朗对他们过于乐观。仍然有一些建议的功能和语法尚未实现(或永远不会)。

幸运的是,有Erlang的JSON解析器支持的地图,检查: