From 1cc8044ffc6073749e34dcf1434f02272fe4b457 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?=
Date: Tue, 7 Jun 2016 15:14:16 +0200
Subject: Retire two myths
---
system/doc/efficiency_guide/myths.xml | 31 ++-----------
system/doc/efficiency_guide/part.xml | 1 +
system/doc/efficiency_guide/retired_myths.xml | 63 +++++++++++++++++++++++++++
3 files changed, 67 insertions(+), 28 deletions(-)
create mode 100644 system/doc/efficiency_guide/retired_myths.xml
(limited to 'system/doc')
diff --git a/system/doc/efficiency_guide/myths.xml b/system/doc/efficiency_guide/myths.xml
index 5d3ad78b23..7e2f3c8465 100644
--- a/system/doc/efficiency_guide/myths.xml
+++ b/system/doc/efficiency_guide/myths.xml
@@ -24,7 +24,7 @@
The Initial Developer of the Original Code is Ericsson AB.
- The Eight Myths of Erlang Performance
+ The Six Myths of Erlang Performance
Bjorn Gustavsson
2007-11-10
@@ -35,37 +35,12 @@
Some truths seem to live on well beyond their best-before date,
perhaps because "information" spreads faster from person-to-person
- than a single release note that says, for example, that funs
- have become faster.
+ than a single release note that says, for example, that body-recursive
+ calls have become faster.
This section tries to kill the old truths (or semi-truths) that have
become myths.
-
- Myth: Funs are Slow
- Funs used to be very slow, slower than apply/3.
- Originally, funs were implemented using nothing more than
- compiler trickery, ordinary tuples, apply/3, and a great
- deal of ingenuity.
-
- But that is history. Funs was given its own data type
- in R6B and was further optimized in R7B.
- Now the cost for a fun call falls roughly between the cost for a call
- to a local function and apply/3.
-
-
-
- Myth: List Comprehensions are Slow
-
- List comprehensions used to be implemented using funs, and in the
- old days funs were indeed slow.
-
- Nowadays, the compiler rewrites list comprehensions into an ordinary
- recursive function. Using a tail-recursive function with
- a reverse at the end would be still faster. Or would it?
- That leads us to the next myth.
-
-
Myth: Tail-Recursive Functions are Much Faster
Than Recursive Functions
diff --git a/system/doc/efficiency_guide/part.xml b/system/doc/efficiency_guide/part.xml
index 6e10a0c031..5673ddd320 100644
--- a/system/doc/efficiency_guide/part.xml
+++ b/system/doc/efficiency_guide/part.xml
@@ -39,5 +39,6 @@
+
diff --git a/system/doc/efficiency_guide/retired_myths.xml b/system/doc/efficiency_guide/retired_myths.xml
new file mode 100644
index 0000000000..37f46566cd
--- /dev/null
+++ b/system/doc/efficiency_guide/retired_myths.xml
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+ 2016
+ 2016
+ Ericsson AB, All Rights Reserved
+
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ The Initial Developer of the Original Code is Ericsson AB.
+
+
+ Retired Myths
+ Bjorn Gustavsson
+
+ 2016-06-07
+
+ retired_myths.xml
+
+
+ We belive that the truth finally has caught with the following,
+ retired myths.
+
+
+ Myth: Funs are Slow
+ Funs used to be very slow, slower than apply/3.
+ Originally, funs were implemented using nothing more than
+ compiler trickery, ordinary tuples, apply/3, and a great
+ deal of ingenuity.
+
+ But that is history. Funs was given its own data type
+ in R6B and was further optimized in R7B.
+ Now the cost for a fun call falls roughly between the cost for a call
+ to a local function and apply/3.
+
+
+
+ Myth: List Comprehensions are Slow
+
+ List comprehensions used to be implemented using funs, and in the
+ old days funs were indeed slow.
+
+ Nowadays, the compiler rewrites list comprehensions into an ordinary
+ recursive function. Using a tail-recursive function with
+ a reverse at the end would be still faster. Or would it?
+ That leads us to the myth that tail-recursive functions are faster
+ than body-recursive functions.
+
+
--
cgit v1.2.3