diff --git a/doc/efun/allocate b/doc/efun/allocate
index cf74429..bdd3eb3 100644
--- a/doc/efun/allocate
+++ b/doc/efun/allocate
@@ -2,27 +2,28 @@
         mixed * allocate(int size)
         mixed * allocate(int size, mixed init_value)
 
-        mixed * allocate(*int sizes)
-        mixed * allocate(*int sizes, mixed init_value)
+        mixed * allocate(int *sizes)
+        mixed * allocate(int *sizes, mixed init_value)
 
-BESCHREIBUNG
-        Allokiert ein Array von <size> Elementen. Die Anzahl Elemente muss
-        groesser sein als 0, darf aber das Systemmaximum (normalerweise 1000)
-        nicht uebersteigen. Wird <init_value> angegeben, wird allen Elementen
-        dieser als Anfangswert zugewiesen. Wenn <init_value> ein Mapping oder
-        ein Array ist, wird fuer jedes Element eine einfache Kopie erstellt.
-        Wird <init_value> nicht angegeben, sind alle Elemente 0.
+DESCRIPTION
+        Allocate an array of size elements. The number of elements
+        must be >= 0 and not bigger than a system maximum (usually
+        1000).
 
-        In der zweiten Form (mit einem Feld von <sizes> anstelle nur einer
-        <size>) erzeugt allocate() ein mehrdimensionales Array, ein Array aus
-        Arrays.
+        If <init_value> is given, all array elements will be set
+        to this value (if <init_value> is an array or mapping, a shallow
+        copy will be created for each element), otherwise they all will be 0.
 
-        Heute wird allocate() kaum mehr benoetigt, weil Arrays mit dem
-        +-Operator addiert und mit dem ({})-Operator initialisiert werden
-        koennen. Der einzige Nutzen der Funktion ist, grosse leere
-        oder initialisierte Arrays zu erzeugen.
+        In the second form (using an array of sizes instead of one size),
+        the efun will allocate a multidimensional array, that is an array
+        of arrays.
 
-BEISPIELE
+        Note that this function is hardly needed anymore, because
+        arrays can be added by the + operator, and can be constructed
+        and initialized by the ({ }) operator. The functions only
+        use is to construct big empty arrays.
+
+EXAMPLES
         string *buffer;
         buffer = allocate(50);
         buffer = allocate(50, "");
@@ -30,9 +31,9 @@
         buffer = allocate( ({ 2, 3 }) )
           --> ({ ({ 0, 0, 0 }), ({ 0, 0, 0 }) })
 
-GESCHICHTE
-        LDMud 3.2.9 fuehrte den Anfangswert <init_value> und die
-            Initialisierung von mehrdimensionalen Arrays ein.
+HISTORY
+        LDMud 3.2.9 added the initialization value and the multi-dimensional
+          allocation.
 
-SIEHE AUCH
+SEE ALSO
         sizeof(E)
