Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Camel case
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== History of modern technical use == === Chemical formulas === The first systematic and widespread use of medial capitals for technical purposes was the notation for chemical formulas invented by the Swedish chemist [[Jรถns Jakob Berzelius|Jacob Berzelius]] in 1813. To replace the multitude of naming and symbol conventions used by chemists until that time, he proposed to indicate each chemical element by a symbol of one or two letters, the first one being capitalized. The capitalization allowed formulas like "[[sodium chloride|NaCl]]" to be written without spaces and still be parsed without ambiguity.<ref>[[Jรถns Jacob Berzelius]] (1813). ''Essay on the Cause of Chemical Proportions and on Some Circumstances Relating to Them: Together with a Short and Easy Method of Expressing Them''. ''[[Annals of Philosophy]]'' 2, 443-454, 3, 51-52; (1814) 93-106, 244-255, 353-364.</ref><ref>[[Henry M. Leicester]] & Herbert S. Klickstein, eds. 1952, ''A Source Book in Chemistry, 1400-1900'' (Cambridge, MA: Harvard)</ref> Berzelius' system continues to be used, augmented with three-letter symbols such as "[[ununennium|Uue]]" for unconfirmed or unknown elements and abbreviations for some common substituents (especially in the field of organic chemistry, for instance "[[Ethyl group|Et]]" for "ethyl-"). This has been further extended to describe the [[amino acid]] sequences of [[protein]]s and other similar domains. === Early use in trademarks === Since the early 20th century, medial capitals have occasionally been used for [[corporation|corporate]] names and product trademarks, such as * DryIce Corporation (1925) marketed the solid form of [[carbon dioxide]] (CO<sub>2</sub>) as "Dry Ice", thus leading to its common name.<ref name="About Dry ice">{{Cite book| title=The Trade-mark Reporter| publisher=[[International Trademark Association|United States Trademark Association]]| year=1930| issue=v. 20| isbn=1-59888-091-8}}</ref> * [[CinemaScope]] and [[VistaVision]], rival [[widescreen]] movie formats (1953) * [[ShopKo Stores Inc.|ShopKo]] (1962), retail stores, later renamed Shopko * ''MisteRogers Neighborhood'', the TV series also called ''[[Mister Rogers' Neighborhood]]'' (1968)<ref>{{cite web |title=Mister Rogers Neighborhood Season 1 (Episode 4) |url=https://archive.org/details/mister-rogers-neighborhood-season-01/004.mp4 |access-date=21 June 2022}}</ref> * ChemGrass (1965), later renamed [[AstroTurf]] (1967)<!-- Trademark serial number 72286166 --> * [[ConAgra Foods Inc.|ConAgra]] (1971), formerly Consolidated Mills * [[MasterCraft]] (1968), a sports boat manufacturer * [[AeroVironment]] (1971)<!--CHECK - was it the original name?--> * [[PolyGram]] (1972), formerly Grammophon-Philips Group * [[UnitedHealth Group|United HealthCare]] (1977)<ref>{{cite web |url=http://www.unitedhealthgroup.com/about/history.html |title=Our History |website=unitedhealthgroup.com |access-date=15 May 2019 |archive-date=1 May 2019 |url-status=dead |archive-url=https://web.archive.org/web/20190501121118/http://www.unitedhealthgroup.com/about/history.html }}</ref> * [[MasterCard]] (1979), formerly Master Charge * [[SportsCenter]] (1979) === Computer programming === {{Original research|section|date=May 2011}} In the 1970s and 1980s, medial capitals were adopted as a standard or alternative [[naming convention (programming)|naming convention]] for multi-word [[Identifier (computer programming)|identifier]]s in several [[programming language]]s. The precise origin of the convention in computer programming has not yet been settled. A 1954 conference proceedings<ref>{{cite web |url=http://www.bitsavers.org/pdf/mit/summer_session_1954/Digital_Computers_Advanced_Coding_Techniques_Summer_1954.pdf |title="Resume of Session 8". Digital Computers: Advanced Coding Techniques. Summer Session 1954, Massachusetts Institute of Technology |pages=8โ6 |date=1954 |access-date=4 January 2014 |archive-url=https://web.archive.org/web/20120229201504/http://bitsavers.org/pdf/mit/summer_session_1954/Digital_Computers_Advanced_Coding_Techniques_Summer_1954.pdf |archive-date=29 February 2012 |url-status=dead }}</ref> occasionally informally referred to [[IBM]]'s [[Speedcoding]] system as "SpeedCo". [[Christopher Strachey]]'s paper on [[General purpose macro processor#Examples of general purpose macro processors|GPM]] (1965),<ref>{{cite journal |last=Strachey |first=Christopher |author-link=Christopher Strachey |title=A General Purpose Macrogenerator |journal=Computer Journal |volume=8 |issue=3 |pages=225โ241 |date=October 1965 |doi=10.1093/comjnl/8.3.225|doi-access=free }}</ref> shows a program that includes some medial capital identifiers, including "<code>NextCh</code>" and "<code>WriteSymbol</code>" (This was most likely the influence of the [[CPL_(programming_language)|CPL]] language, of which Strachey was one of the designers) Multiple-word descriptive identifiers with embedded spaces such as <code>end of file</code> or <code>char table</code> cannot be used in most programming languages because the spaces between the words would be [[Parser|parsed]] as [[delimiter]]s between [[Lexical analysis#Token|tokens]]. The alternative of running the words together as in <code>endoffile</code> or <code>chartable</code> is difficult to understand and possibly misleading; for example, <code>chartable</code> is an English word (able to be charted), whereas <code>charTable</code> means a table of <code>chars</code> . Some early programming languages, notably [[Lisp (programming language)|Lisp]] (1958) and [[COBOL]] (1959), addressed this problem by allowing a [[hyphen]] ("-") to be used between words of compound identifiers, as in "END-OF-FILE": Lisp because it worked well with prefix notation (a Lisp parser would not treat a hyphen in the middle of a symbol as a subtraction operator) and COBOL because its operators were individual English words. This convention remains in use in these languages, and is also common in program names entered on a [[command line]], as in Unix. However, this solution was not adequate for mathematically oriented languages such as [[FORTRAN]] (1955) and [[ALGOL 58|ALGOL]] (1958), which used the hyphen as an infix subtraction operator. FORTRAN ignored blanks altogether, so programmers could use embedded spaces in variable names. However, this feature was not very useful since the early versions of the language restricted identifiers to no more than six characters. Exacerbating the problem, common [[punched card]] character sets of the time were uppercase only and lacked other special characters. It was only in the late 1960s that the widespread adoption of the [[ASCII]] character set made both lowercase and the [[underscore]] character <code>_</code> universally available. Some languages, notably [[C (programming language)|C]], promptly adopted underscores as word separators, and identifiers such as <code>end_of_file</code> are still prevalent in C programs and libraries (as well as in later languages influenced by C, such as [[Perl]] and [[Python (programming language)|Python]]). However, some languages and programmers chose to avoid underscores and adopted camel case instead. [[Charles Simonyi]], who worked at [[Xerox PARC]] in the 1970s and later oversaw the creation of Microsoft's Office suite of applications, invented and taught the use of [[Hungarian Notation]], one version of which uses the lowercase letter(s) at the start of a (capitalized) variable name to denote its type. One account{{citation needed|date=January 2017}} claims that the camel case style first became popular at Xerox PARC around 1978, with the [[Mesa (programming language)|Mesa programming language]] developed for the [[Xerox Alto]] computer. This machine lacked an underscore key (whose place was taken by a left arrow "โ"), and the hyphen and space characters were not permitted in identifiers, leaving camel case as the only viable scheme for readable multiword names. The PARC Mesa Language Manual (1979) included a coding standard with specific rules for upper and lower camel case that was strictly followed by the Mesa libraries and the Alto operating system. [[Niklaus Wirth]], the inventor of [[Pascal (programming language)|Pascal]], came to appreciate camel case during a sabbatical at PARC and used it in [[Modula]], his next programming language.<ref>{{cite book | doi = 10.1145/1238844.1238847 | chapter-url = http://portal.acm.org/citation.cfm?id=1238847 | author = Niklaus Wirth | title = Proceedings of the third ACM SIGPLAN conference on History of programming languages | chapter = Modula-2 and Oberon | pages = 3-1โ3-10 |series = [[History_of_Programming_Languages_(conference)#HOPL_III|HOPL III - San Diego]] | year = 2007 | citeseerx = 10.1.1.91.1447 |isbn = 9781595937667 | s2cid = 1918928 }}</ref> The [[Smalltalk]] language, which was developed originally on the Alto, also uses camel case instead of underscores. This language became quite popular in the early 1980s, and thus may also have been instrumental in spreading the style outside PARC. Upper camel case (or "Pascal case") is used in [[Wolfram Language]] in computer algebraic system [[Mathematica]] for predefined identifiers. User defined identifiers should start with a lower case letter. This avoids the conflict between predefined and user defined identifiers both today and in all future versions. C# variable names are recommended to follow the lower camel case convention.<ref>{{Cite web |last=wwlpublish |title=Declare variables - Training |url=https://learn.microsoft.com/en-us/training/modules/csharp-literals-variables/3-declaring-variables |access-date=2023-08-29 |website=learn.microsoft.com |language=en-us}}</ref> ===Computer companies and products=== Whatever its origins in the computing field, the convention was used in the names of computer companies and their commercial brands, since the late 1970s โ a trend that continues to this day: <!-- This is documentation of early commercial usage by IT companies in the 1970s and 1980s, not a complete list. Two or three examples per year is plenty. --> * (1977) [[CompuServe]] * (1978) [[WordStar]] * (1979) [[VisiCalc]] * (1982) [[MicroProse]], [[WordPerfect]] * (1983) [[Novell NetWare|NetWare]] * (1984) [[LaserJet]], [[MacWorks]], [[PostScript]] * (1985) [[Adobe PageMaker|PageMaker]] * (1987) [[ClarisWorks]], [[HyperCard]], [[PowerPoint]] * (1990) [[WorldWideWeb]] (the first web browser), later renamed Nexus === Spread to mainstream usage === In the 1980s and 1990s, after the advent of the personal computer exposed hacker culture to the world, camel case then became fashionable for corporate [[trade name]]s in non-computer fields as well. Mainstream usage was well established by 1990: <!-- This is documentation of increasing commercial usage, not a complete list. Two or three examples per year is plenty. --> * (1980) [[EchoStar Communications Corporation|EchoStar]]<!--CHECK if it was the original spelling--> * (1984) [[BellSouth]] * (1985) ''[[EastEnders]]'' * (1986) ''[[SpaceCamp]]'' * (1990) [[HarperCollins Publishers|HarperCollins]], [[SeaTac, Washington|SeaTac]] * (1998) [[PricewaterhouseCoopers]], merger of Price Waterhouse and Coopers During the [[dot-com bubble]] of the late 1990s, the lowercase prefixes "e" (for "[[electronics|electronic]]") and "i" (for "Internet",<ref>{{Cite news|author=Farhad Manjoo |url=https://www.wired.com/science/discoveries/news/2002/04/52181 |title=Grads Want to Study on EMacs, Too |website=Wired.com |date=30 April 2002|access-date=4 June 2010}}</ref> "information", "[[intelligent]]", etc.) became quite common, giving rise to names like [[Apple Inc.|Apple]]'s [[iMac]] and the [[Zentyal|eBox]] software platform. In 1998, Dave Yost suggested that chemists use medial capitals to aid readability of long chemical names, e.g. write AmidoPhosphoRibosylTransferase instead of [[amidophosphoribosyltransferase]].<ref>[https://www.newscientist.com/article/mg15821399.900-feedback.html ''Feedback, 20 June 1998''] Vol 158 No 2139 [[New Scientist]] 20 June 1998</ref> This usage was not widely adopted. Camel case is sometimes used for abbreviated names of certain neighborhoods, e.g. New York City neighborhoods ''SoHo'' (''So''uth of ''Ho''uston Street) and ''TriBeCa'' (''Tri''angle ''Be''low ''Ca''nal Street) and San Francisco's ''SoMa'' (''So''uth of ''Ma''rket). Such usages erode quickly, so the neighborhoods are now typically rendered as ''Soho'', ''Tribeca'', and ''Soma''. Internal capitalization has also been used for other technical codes like [[HeLa]] (1983).
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)