From 6edb6a45d8b2d2993f50176b3324d3fff97fe123 Mon Sep 17 00:00:00 2001 From: Hans Bolinder Date: Thu, 9 Mar 2017 10:12:31 +0100 Subject: stdlib: Improve the Erlang shell's handling of references As of Erlang/OTP 20.0, the type of ETS tables, ets:tid(), is a reference(). A request was put forward that the Erlang shell should be able to handle references in its input. This commit introduces an extended parser in module lib. It can parse pids, ports, references, and external funs under the condition that they can be created in the running system. The parser is meant to be used internally in Erlang/OTP. The alternative, to extend erl_scan and erl_parse, was deemed inferior as it would require the abstract format be able to represent pids, ports, references, and funs, which would be confusing as they are not expressions as such, but data types. --- system/doc/efficiency_guide/processes.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'system') diff --git a/system/doc/efficiency_guide/processes.xml b/system/doc/efficiency_guide/processes.xml index afa4325d8e..3b64c863ff 100644 --- a/system/doc/efficiency_guide/processes.xml +++ b/system/doc/efficiency_guide/processes.xml @@ -4,7 +4,7 @@
- 20012016 + 20012017 Ericsson AB. All Rights Reserved. @@ -222,7 +222,7 @@ kilo_byte(N, Acc) ->
 4> T = ets:new(tab, []).
-17
+#Ref<0.1662103692.2407923716.214181>
 5> ets:insert(T, {key,efficiency_guide:kilo_byte()}).
 true
 6> erts_debug:size(element(2, hd(ets:lookup(T, key)))).
-- 
cgit v1.2.3