Content deleted Content added
HeyElliott (talk | contribs) |
Jerryobject (talk | contribs) WP:LINKs: plural > WP:SINGULAR, adds, update-standardizes, needless WP:PIPEs > WP:NOPIPEs. Small WP:COPYEDITs WP:EoS: clarify, WP:TERSE. WP:REFerence WP:CITation parameters: update-standardizes, respaces, adds, fills, author > last + first, recorders, conform to master templates. Cut needless carriage return in paragraph. |
||
Line 1:
{{Short description|Datatype in programming}}
A '''symbol''' in [[computer programming]] is a [[Primitive data type|primitive]] [[data type]]
In the most trivial [[implementation]], they are essentially named [[integer]]s;
==Support==
Line 25:
| [[Julia (programming language)|Julia]] || Symbol || <code>:sym</code>
|-
| [[K (programming language)|K]] || symbol || `sym
|-
| [[Objective-C]] || SEL || <code>@selector(sym)</code>
Line 33:
| [[PostScript]] || name || <code>/sym</code> or <code>sym</code>
|-
| [[
|-
| [[Ruby (programming language)|Ruby]] || Symbol || <code>:sym</code> or <code>:'sym'</code>
Line 96:
===Prolog===
In [[
Contrary to many other languages, it is possible to give symbols
====Examples====
The following example demonstrates two facts (describing what ''father'' is) and one rule (describing the ''meaning'' of ''sibling''). These three sentences use symbols (father, zeus, hermes, perseus and sibling) and some abstract variables (X, Y and Z). The ''mother'' relationship
<syntaxhighlight lang="prolog">
father(zeus, hermes).
Line 111:
===Ruby===
In [[Ruby (programming language)|Ruby]], symbols can be created with a literal form, or by converting a string.<ref name=pickaxe />
They can be used as an identifier or an interned string.<ref name="rubysymbol">{{cite web |last=Kidd |first=Eric |date=20 January 2007 |title=13 Ways of Looking at a Ruby Symbol |url=http://www.randomhacks.net/articles/2007/01/20/13-ways-of-looking-at-a-ruby-symbol#9 |work=Random Hacks |access-date=10 July 2011}}</ref> Two symbols with the same contents will always refer to the same object.<ref>{{Cite web |
It is considered a [[best practice]] to use symbols as keys to an [[associative array]] in Ruby.<ref name=rubysymbol /><ref name="wrongreason">{{cite web|title=Using Symbols for the Wrong Reason|url=http://microjet.ath.cx/WebWiki/2005.12.27_UsingSymbolsForTheWrongReason.html|work=Gnomic Notes}}</ref>
Line 156:
===Smalltalk===
In [[Smalltalk]], symbols can be created with a literal form, or by converting a string. They can be used as an identifier or an interned string. Two symbols with the same contents will always refer to the same object.<ref>http://wiki.squeak.org/squeak/uploads/172/standard_v1_9-indexed.pdf ANSI Smalltalk standard.</ref> In most Smalltalk implementations, selectors (method names) are implemented as symbols.
====Examples====
Line 183 ⟶ 182:
==References==
{{Reflist}}
[[Category:Articles with example Ruby code]]
|