diff --git a/coope.bib b/coope.bib index d17fe35..7505a3c 100644 --- a/coope.bib +++ b/coope.bib @@ -21,6 +21,13 @@ howpublished = {\url{http://jsperf.com/coope-function-wrapper-w-blogic}}, } +@book{gof, + author = {Erich Gamma and Richard Helm and Ralph Johnson and John Vlissides}, + title = {Design Patterns: Elements of Reusable Object-Oriented Software}, + publisher = {Addison-Wesley}, + year = {1994} +} + @book{oreilly-hpj, author = {Nicholas C. Zakas}, title = {High Performance JavaScript}, diff --git a/sec/class-like.tex b/sec/class-like.tex index ac9ab20..00062dc 100644 --- a/sec/class-like.tex +++ b/sec/class-like.tex @@ -15,7 +15,7 @@ var obj = { foo: "bar" }; \end{verbatim} In a classical sense, object literals can be thought of as anonymous -singletons;\footnote{GOF.} that is, they have no name (they are identified by +singletons; \cite{gof} that is, they have no name (they are identified by the variable to which they are assigned) and only one instance of the literal will exist throughout the life of the software.\footnote{Technically, one could set the prototype of a constructor to be the object defined by the literal (see