[llvm-commits] CVS: llvm-www/Name.html
Reid Spencer
reid at x10sys.com
Thu Apr 12 19:18:28 PDT 2007
Changes in directory llvm-www:
Name.html added (r1.1)
---
Log message:
The project renaming deserves a page of its own.
---
Diffs of the changes: (+218 -0)
Name.html | 218 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 218 insertions(+)
Index: llvm-www/Name.html
diff -c /dev/null llvm-www/Name.html:1.1
*** /dev/null Thu Apr 12 21:18:21 2007
--- llvm-www/Name.html Thu Apr 12 21:18:11 2007
***************
*** 0 ****
--- 1,218 ----
+ <!--#include virtual="header.incl" -->
+ <div class="www_sectiontitle">Name That Compiler!</div>
+ <div class="www_subsection">Background</div>
+ <div class="www_text">
+ <p>As mentioned in Chris Lattner's
+ <a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2007-April/008625.html">email</a>,
+ we are looking for an umbrella name for the collection of compiler, tool chain
+ and virtual machine related things that we call LLVM today. As Chris put it:</p>
+
+ <blockquote>"LLVM is a growing project, and many of us are very fond of it. :) LLVM
+ is continuing to grow, both in maturity in specific areas and in the scope of
+ areas to which it applies.</blockquote>
+
+ <blockquote>When we first started the project, we focused on the design of the
+ intermediate representation (IR). It is a strong design goal that the IR be a
+ self-contained virtual instruction set, which fully describes a program.
+ Because of this, we named the compiler LLVM, which reflects well on the
+ design of the IR.</blockquote>
+
+ <blockquote>However, the scope of the LLVM project has outgrown this name. Today
+ LLVM does many "non-VMy" tasks, such as serving as a great static
+ compiler. It also has components that overlap with traditional low-level
+ tool chain components like assemblers and linkers. Further, LLVM's scope
+ is about to grow significantly with new front-end technologies (e.g. HLVM,
+ new SoC work on a python front-end, etc). For all of these reasons, I
+ think that "LLVM" is an increasingly poor name for the project as a whole,
+ and it causes a large amount of confusion, particularly with people who
+ do not know much about it yet.</blockquote>
+
+ <blockquote>For what it is worth, this is not a new thought. I have been kicking
+ around the idea of renaming the project for several years now, but have
+ been stymied by not being able to come up with a better name! The problem
+ is hard: how do you concisely describe a modern, modular, component based
+ compiler and tool-chain system, which can be used for many different
+ things, hopefully many of which we haven't even thought of yet? How do
+ you pick a name that both memberable, relatively unique (searchable), has
+ an open domain name, etc? How do you come up with a name that is amenable
+ to making a logo? So far, I haven't! :)</blockquote>
+
+ <blockquote>Note that the name need not capture every aspect of the project. Just
+ having a distinguished name with no specific connotation is probably good
+ enough. 20 years ago, "google" and "yahoo" had very different meanings,
+ and "mozilla" or "firefox" were pretty meaningless. Today, there is very
+ strong awareness of what they are.</blockquote>
+
+ <blockquote>As such, I'd like to open up a forum for naming ideas.</blockquote>
+
+ <blockquote>To make this more fun, "success" is extremely subjective, and I have no
+ idea how we will declare a victor (we can figure it out as we go, right?
+ :). I propose that people add ideas to this pageand we kick some potential
+ names around at the developer mtg in May. That gives us 5 or 6 weeks to
+ come up with a name and/or logo."</blockquote>
+
+ <p>With that in mind, this page is all about finding a new name for the
+ project.</p>
+ </div>
+
+ <div class="www_subsection"><a name="booty">The Booty<a/></div>
+ <div class="www_text">
+ <p>If we find a good name, we can honor the one who came up with it with a
+ small amount of booty. For example, we're prepared to award a compiler
+ textbook of your choice (MSRP < $100) to the winner, optionally signed by
+ people at the <a href="DevMtgMay2007.html">dev meeting</a> if you so desire
+ and if they agree. Alternatively, we could do a $100 gift card to Amazon
+ or some other place.</p>
+ </div>
+
+ <div class="www_subsection"><a name="ideas">Naming Ideas and Rules<a/></div>
+ <div class="www_text">
+ <p>We have a few objectives, ideas and rules we've already decided upon for the
+ name:</p>
+ <ul>
+ <li><b>LLVM Is Name Of IR</b>. We need to continue to use the name
+ 'LLVM' to refer to the IR (i.e. that which is described in
+ <a href="http://llvm.org/docs/LangRef.html">the Language Reference</a>).</li>
+
+ <li><b>/LLVM suffix</b>. We need to keep "/LLVM" as a suffix to the name
+ some time number of years to come so that we do not lose the brand
+ recognition we've developed with LLVM. For example: "Use the Foo/LLVM
+ Compiler System, it runs infinite loops faster than the competition!".</li>
+ <li><b>Avoid VM</b>. We would like to avoid "VM" in the name. Because of the
+ /LLVM suffix it would be redundant for some period of time. Also, while the
+ project will retain components that allow you to make a VM, it isn't really
+ "just" a VM, its much more. In other words, labeling the project VM is
+ too limiting. The projects scope has outstripped being just a VM.</li>
+ <li><b>Figurative</b>. We would like to stay away from acronyms unless a
+ really good one comes along. We don't want to replace LLVM with another
+ acronym that out-dates itself in a few years. Instead a name that is
+ metaphorical or figurative or otherwise conjures up the notion of LLVM would
+ be best.</li>
+ <li><b>Made Up Names</b>. You can also just make up a name. Some of the best
+ brands have been
+ <a href="http://en.wikipedia.org/wiki/Portmanteau">portmanteau words</a>
+ (combining two or more words or phonemes to produce a new word). For
+ example, a combination spoon/fork leads to spork. Infomercial is another
+ example. So can you find the perfect portmanteau words that describe this
+ project? You can find a big list of examples
+ <a href="http://en.wiktionary.org/wiki/Appendix:List_of_portmanteaux">here</a></li>
+ <li><b>Connotations</b>. The name should have a connotation that is
+ descriptive of the project as a whole. Some connotations that would be
+ appropriate are: components, fast, toolkit, optimizing, languages, building
+ blocks, etc. Many other characteristics could apply, these are just a
+ few.</li>
+ <li><b>Logos</b>. Logos will need to be developed as well. Keep that in mind
+ as you think of names. Can a logo be developed? If you have graphical
+ talents, please send a JPEG/GIF to go with your name idea.</li>
+ </ul>
+ </div>
+
+ <div class="www_subsection"><a name="names">Candidate Names<a/></div>
+ <div class="www_text">
+ <p>To help with the naming, we'll keep track of all name ideas here. This goes
+ along with the brain-storming rule: <i>there are no bad ideas</i>. So, send
+ your entries to <a href="mailto:llvmdev at cs.uiuc.edu">llvmdev</a> and we'll add
+ them here (or add them yourself).</p>
+ <p>At the <a href="DevMtgMay2007.html">May 25, 2007 Developer's Meeting</a>
+ the list of names generated here will be used to discuss and possibly decide
+ the new name for the project.</p>
+ <p>In your submissions, please include the name, description, and <i>one</i>
+ link for the name.</p>
+ <table class="www">
+ <tr><th colspan="4">Proposed New Names For LLVM</th></tr>
+ <tr><th>Who</th><th>Name</th><th>Description</th></tr>
+ <tr><td>Jeff Cohen</td><th>
+ <a href="http://en.wikipedia.org/wiki/Illuvium">Illuvium</a></th>
+ <td>Material displaced across a soil profile, from one layer to another
+ one, by the action of rainwater. Retains the LLVM letters. We already
+ own the domain. Also connotes "illumination".</td></tr>
+ <tr><td rowspan="3">Reid Spencer</td><th>
+ <a href="http://en.wikipedia.org/wiki/Alluvium">Alluvium</a></th>
+ <td>The layers of sediment deposited by a river. Also retains the LLVM
+ letters but is a word and connotes "bed rock" and fluidity</td></tr>
+ <tr><th>Optopia</th><td>A portmanteau from
+ <i>optimization</i> and <i>utopia</i></td></tr>
+ <tr><th>NYAC</th><td>Along Owen's idea: "Not Your
+ Average Compiler" (BooBoo!). An acronym that you can pronounce.
+ Unfortunately, the New York Athletic Club wouldn't like us stealing
+ their domain. :)</td></tr>
+ <tr><td rowspan="3">Bill Wendling</td><th>Zembla</th><td>It's a fictional northern European
+ country in "Pale Fire" by Nabokov.</td></tr>
+ <tr><th>Pala</th><td>The island utopia in Aldos Huxley's "Island".</td></tr>
+ <tr><th>Thra</th><td>The world of The Dark Crystal.</td></tr>
+ <tr><td rowspan="2">Patrick Meredith</td><th>Invictus</th><td>unconquerable, and
+ Invictus.org doesn't appear to exist.</td></tr>
+ <tr><th><a href="http://en.wikipedia.org/wiki/Adamant">Adamant</a></th>
+ <td>Often refers to diamonds, but historically can mean
+ any hard, "unbreakable" stone, metal or other substance.</td>
+ </td></tr>
+ <tr><td>Gabor Greif</td><th>Otimo</th><td>It is a Portuguese word,
+ meaning optimal, perfect. It is also different enough from plain English words
+ to give a distinguished feel :-) and catch the eyes. The domains
+ otimo.org and otimo.info are both available. Last, but not least
+ it is a boon to the several LLVM developers of Portuguese
+ tongue.</td></tr>
+ <tr><td>Owen Anderson</td><th>Warloc<br/>Warlock</th><td>It can be thought
+ of as standing for "We aren't like other compilers," but that doesn't
+ have to be pointed out, as it's also a word on its own. It has a
+ sense of being something powerful and/or magical, and should be
+ feasible to make a logo to go along with.</td></tr>
+ <tr><td>Erick Tryzelaar</td><th>LCS</th><td>For language compiling system.
+ It's suggestive of an old name, easy to remember, easy to say, and seems
+ to be easy to Google. "Advanced" could be pre-pended to it to make it
+ ALCS to make it even more unique.</td></tr>
+ <tr><td>Zhongxing Xu</td><th>OmniC<br/>Omnipiler<br/>Omnicom</th><td>Stands for
+ "Omnipotent Compiler". I prefer the first.</td></tr>
+ <tr><td rowspan="4">Duncan Sands</td><th>OptLib</th><td>Portmanteau of optimizing
+ and library.</td></tr>
+ <tr><th>llvroom</th><td>As in the vrooming of a motorcycle engine.
+ <tr><th>OptLOC</th><td>Portmanteau of Optimization and
+ Lines Of Code</td></tr>
+ <tr><th>LoveByte</th><td>Along the Warloc - Loveloc
+ lines as baldric4 suggested in IRC. LOC = Lines of Code</td></tr>
+ <tr><td>Paolo Invernizzi</td><th>Mithril</th><td>The fictional metal from
+ JRR Tolkien The Lord of the Rings. Gandalf says: "Mithril! All folk desired it.
+ It could be beaten like copper, and polished like glass; and the Dwarves could
+ make of it a metal, light and yet harder than tempered steel. Its beauty was like
+ to that of common silver, but the beauty of mithril did not tarnish or
+ grow dim."</td></tr>
+ <tr><td>Curt Cox</td><th>OCTRUTHAL</th><td>One Compiler To RUle THem ALl (and in the
+ darkness bind them)" You have to admit, it has a nice ring.</td></tr>
+ <tr><td>Michael McCracken</td><th>
+ <a href="http://en.wikipedia.org/wiki/Naga_(mythology)#N.C4.81gas_in_Cambodia">Naga</a>
+ </th><td>dragon-like serpents from Cambodian mythology, among other places.
+ I like this as a name, because it's unique short and easy to type and remember
+ (as long as you omit the accent, which is commonly done), it's basically a
+ southeast-asian dragon, so we're sticking with traditional compiler iconography,
+ and it's seven-headed, so it nicely represents the many different uses LLVM can
+ be put to.<br/>It's also pretty easy to imagine a logo, because Cambodian Nāga
+ sculptures are pretty memorable as is:
+ <a href="http://en.wikipedia.org/wiki/Image:NagaPhnomPenh.jpg">NagaPhnomPenh</a>.
+ They're all over Angkor, too. I picture a simplified line-drawing of a seven-headed
+ serpent like the one in the image.<br/> For what it's worth, there are also
+ a couple other good-sounding Asian dragon names on the wikipedia page for
+ Nāga: "Lóng" (Chinese), "Ryū" (Japanese), and my second-favorite after
+ Nāga, "kyo" ("Korean mountain dragon"), which has nice consonance with "compiler".
+ </td></tr>
+ <tr><td>Aaron Gray</td><th>Mother</th><td>No explanation offered :)</td></tr>
+ <tr><td rowspan="3">Scott McMurray</td><th>Daedalus</th><td>Greek mythology: the
+ greatly skilled Athenian architect that built the palace of
+ Cnossus.</td></tr>
+ <tr><th>Hephæstus</th><td>Greek mythology: God of smiths, builder of Helios's
+ chariot, maker of Talos, Crete and Europa's guardian robot, and fabricator of
+ the weapons of the Gods</td></tr>
+ <tr><th>Lemnos</th><td>Greek mythology: the island of Hephaestus
+ workshop</td></tr>
+ </table>
+ </div>
+
+ <!-- *********************************************************************** -->
+ <hr>
+ <address>
+ <a href="http://jigsaw.w3.org/css-validator/check/referer"><img
+ src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!"></a>
+ <a href="http://validator.w3.org/check/referer"><img
+ src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!"></a>
+ <br/>Last modified: $Date: 2007/04/13 02:18:11 $
+ </address>
+ <!--#include virtual="footer.incl" -->
More information about the llvm-commits
mailing list