diff --git a/doc/efun/object_name b/doc/efun/object_name
index b329ca9..b5087db 100644
--- a/doc/efun/object_name
+++ b/doc/efun/object_name
@@ -2,34 +2,36 @@
         string object_name()
         string object_name(object ob)
 
-BESCHREIBUNG
-        Liefert den Namen des Objekts <ob> oder des aktuellen Objekts, wenn
-        <ob> nicht angegeben wurde.
+DESCRIPTION
+        Get the name of an object <ob> or, if no argument is given, of
+        the current object.
 
-        Als Spezialfall liefert die Funktion 0, wenn <ob> 0 ist.
+        As a special case, if <ob> is 0, the function returns 0.
 
-        Dieser Name ist der Name, unter dem das Objekt in der mudinternen
-        Objekttabelle aufgelistet ist. Der Name wird bei der Erzeugung des
-        Objekts eingetragen. Fuer Blueprints entspricht der Name dem Filenamen
-        (ohne die Endung .c), fuer Clones ist es der Name des Blueprints
-        ergaenzt mit einer eindeutigen Nummer nach dem #. Diese Regeln gelten
-        auch fuer virtuelle Objekte - die realen Namen/Typen von virtuellen
-        Objekten werden nicht beruecksichtigt.
+        This name is the name under which the object is stored in the
+        muds object table. It is initialised at the creation of the
+        object such that blueprints are named after the file they are
+        compiled from (without the trailing '.c'), and clones receive
+        the name of their blueprint, extended by '#' followed by
+        a unique non-negative number. These rules also apply to
+        virtual objects - the real name/type of virtual objects
+        is ignored.
 
-        Der Name eines Objekts kann mit rename_object() geaendert werden.
-        object_name() beruecksichtigt alle diese Aenderungen.
+        The name of an object can be changed with rename_object(), and
+        object_name() will reflect any of these changes.
 
-        Der zurueck gegebene Name beginnt immer mit '/' (absoluter Pfad),
-        ausser wenn der Driver im COMPAT-Modus laeuft.
+        The returned name always begins with '/' (absolute path),
+        except when the parser runs in COMPAT mode.
 
-BEISPIELE
-        find_object(object_name(ob)) == ob
+EXAMPLES
+            find_object(object_name(ob)) == ob
 
-        Dies ist immer wahr fuer alle Objekte <ob>, die nicht zerstoert sind.
+        This is guaranteed to be true for all objects ob that are not
+        destructed.
 
-GESCHICHTE
-        0 als Argument wird seit 3.2.9 akzeptiert.
+HISTORY
+        0 is accepted as argument since 3.2.9.
 
-SIEHE AUCH
+SEE ALSO
         clone_object(E), load_name(E), load_object(E), find_object(E),
         object_time(E), program_name(E), rename_object(E)
