Comparison of Programming Languages

From Unify Community Wiki
(Difference between revisions)
Jump to: navigation, search
(Features: Added wikitable formatting.)
(Added wikitable formatting.)
Line 46: Line 46:
 
|-
 
|-
 
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Standardization Standardized] Variation?
 
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Standardization Standardized] Variation?
| {{wikitable-yes}}
+
| {{wikitable-td}}  {{wikitable-yes}}
| {{wikitable-yes}}, ECMA, ISO ECMA-334; ISO/IEC 23270:2006
+
| {{wikitable-td}}  {{wikitable-yes}}, ECMA, ISO ECMA-334; ISO/IEC 23270:2006
| {{wikitable-no}}
+
| {{wikitable-td}}  {{wikitable-no}}
 
|-
 
|-
 
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Strongly-typed_programming_language Type Strength]
 
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Strongly-typed_programming_language Type Strength]
Line 74: Line 74:
 
| {{wikitable-td}} static with optional dynamic typing
 
| {{wikitable-td}} static with optional dynamic typing
 
| {{wikitable-td}} dynamic with optional static typing
 
| {{wikitable-td}} dynamic with optional static typing
| {{wikitable-td}}
+
|}
}
+
  
 
== Type Identifiers ==
 
== Type Identifiers ==
Line 83: Line 82:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
! 8 bit ([http://en.wikipedia.org/wiki/Byte byte]) Signed
+
! {{wikitable-th}} 8 bit ([http://en.wikipedia.org/wiki/Byte byte]) Signed
|  
+
| {{wikitable-td}}
| sbyte
+
| {{wikitable-td}} sbyte
| {{n/a}}
+
| {{wikitable-n/a}}
 
|-
 
|-
! 8 bit ([http://en.wikipedia.org/wiki/Byte byte]) Unsigned
+
! {{wikitable-th}} 8 bit ([http://en.wikipedia.org/wiki/Byte byte]) Unsigned
| byte
+
| {{wikitable-td}} byte
| byte
+
| {{wikitable-td}} byte
| {{n/a}}
+
| {{wikitable-n/a}}
 
|-
 
|-
! 16 bit ([http://en.wikipedia.org/wiki/Short_integer short integer]) Signed
+
! {{wikitable-th}} 16 bit ([http://en.wikipedia.org/wiki/Short_integer short integer]) Signed
| short
+
| {{wikitable-td}} short
| short
+
| {{wikitable-td}} short
| {{n/a}}
+
| {{wikitable-n/a}}
 
|-
 
|-
! 16 bit ([http://en.wikipedia.org/wiki/Short_integer short integer]) Unsigned
+
! {{wikitable-th}} 16 bit ([http://en.wikipedia.org/wiki/Short_integer short integer]) Unsigned
|  
+
| {{wikitable-td}}
| ushort
+
| {{wikitable-td}} ushort
| {{n/a}}
+
| {{wikitable-n/a}}
 
|-
 
|-
! 32 bit Signed
+
! {{wikitable-th}} 32 bit Signed
| int
+
| {{wikitable-td}} int
| int
+
| {{wikitable-td}} int
| {{n/a}}
+
| {{wikitable-n/a}}
 
|-
 
|-
! 32 bit Unsigned
+
! {{wikitable-th}} 32 bit Unsigned
|  
+
| {{wikitable-td}}
| uint
+
| {{wikitable-td}} uint
| {{n/a}}
+
| {{wikitable-n/a}}
 
|-
 
|-
! 64 bit ([http://en.wikipedia.org/wiki/Long_integer long integer]) Signed
+
! {{wikitable-th}} 64 bit ([http://en.wikipedia.org/wiki/Long_integer long integer]) Signed
| long
+
| {{wikitable-td}} long
| long
+
| {{wikitable-td}} long
| {{n/a}}
+
| {{wikitable-n/a}}
 
|-
 
|-
! 64 bit [http://en.wikipedia.org/wiki/Long_integer long integer]) Unsigned
+
! {{wikitable-th}} 64 bit [http://en.wikipedia.org/wiki/Long_integer long integer]) Unsigned
|  
+
| {{wikitable-td}}
| ulong
+
| {{wikitable-td}} ulong
| {{n/a}}
+
| {{wikitable-n/a}}
 
|}
 
|}
  
Line 134: Line 133:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
! [http://en.wikipedia.org/wiki/Single_precision Single Precision]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Single_precision Single Precision]
| single
+
| {{wikitable-td}} single
| float
+
| {{wikitable-td}} float
| {{n/a}}
+
| {{wikitable-n/a}}
 
|-
 
|-
! [http://en.wikipedia.org/wiki/Double_precision Double Precision]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Double_precision Double Precision]
| double
+
| {{wikitable-td}} double
| double
+
| {{wikitable-td}} double
| Number
+
| {{wikitable-td}} Number
 
|-
 
|-
! Arbitrarily Precise ([http://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic bignum])
+
! {{wikitable-th}} Arbitrarily Precise ([http://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic bignum])
| decimal
+
| {{wikitable-td}} decimal
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
 
|}
 
|}
  
Line 161: Line 160:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
! Text [http://en.wikipedia.org/wiki/Character_(computing) Character]
+
! {{wikitable-th}} Text [http://en.wikipedia.org/wiki/Character_(computing) Character]
| {{n/a}}
+
| {{wikitable-n/a}}
| char
+
| {{wikitable-td}} char
| {{n/a}}
+
| {{wikitable-n/a}}
 
|-
 
|-
! Text [http://en.wikipedia.org/wiki/String_(computer_science) String]
+
! {{wikitable-th}} Text [http://en.wikipedia.org/wiki/String_(computer_science) String]
| string
+
| {{wikitable-td}} string
| string
+
| {{wikitable-td}} string
| String
+
| {{wikitable-td}} String
 
|-
 
|-
! [http://en.wikipedia.org/wiki/Boolean_datatype Boolean])
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boolean_datatype Boolean])
| bool
+
| {{wikitable-td}} bool
| bool
+
| {{wikitable-td}} bool
| Boolean
+
| {{wikitable-td}} Boolean
 
|-
 
|-
! [http://en.wikipedia.org/wiki/Object_(computer_science) Object]/[http://en.wikipedia.org/wiki/Universal_type Universal])
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Object_(computer_science) Object]/[http://en.wikipedia.org/wiki/Universal_type Universal])
| object
+
| {{wikitable-td}} object
| object
+
| {{wikitable-td}} object
| Object
+
| {{wikitable-td}} Object
 
|}
 
|}
  
Line 196: Line 195:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
! one-dimensional fixed size array
+
! {{wikitable-th}} one-dimensional fixed size array
| '''('''type''')'''
+
| {{wikitable-td}} '''('''type''')'''
| type'''['''size''']'''
+
| {{wikitable-td}} type'''['''size''']'''
| type'''[]'''
+
| {{wikitable-td}} type'''[]'''
 
|-
 
|-
! [http://en.wikipedia.org/wiki/Array#Multi-dimensional_array multi-dimensional] fixed size array
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Array#Multi-dimensional_array multi-dimensional] fixed size array
|  
+
| {{wikitable-td}}
| type'''['''size<sub>1</sub>''', '''size<sub>2</sub>''','''...''']'''
+
| {{wikitable-td}} type'''['''size<sub>1</sub>''', '''size<sub>2</sub>''','''...''']'''
|  
+
| {{wikitable-td}}
 
|-
 
|-
! one-dimensional dynamic size array
+
! {{wikitable-th}} one-dimensional dynamic size array
| List
+
| {{wikitable-td}} List
| '''System.Collections.ArrayList'''<br/>or<br/>'''System.Collections.Generic.List<'''type'''>'''
+
| {{wikitable-td}} '''System.Collections.ArrayList'''<br/>or<br/>'''System.Collections.Generic.List<'''type'''>'''
| Array
+
| {{wikitable-td}} Array
 
|-
 
|-
! [http://en.wikipedia.org/wiki/Array#Multi-dimensional_array multi-dimensional] dynamic size array
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Array#Multi-dimensional_array multi-dimensional] dynamic size array
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
 
|}
 
|}
  
Line 228: Line 227:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
! [http://en.wikipedia.org/wiki/Record_(computer_science) Record] Simple Composite Types
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Record_(computer_science) Record] Simple Composite Types
|  
+
| {{wikitable-td}}
| '''struct''' name '''{'''type name''';'''...'''}'''
+
| {{wikitable-td}} '''struct''' name '''{'''type name''';'''...'''}'''
|  
+
| {{wikitable-td}}
 
|-
 
|-
! [http://en.wikipedia.org/wiki/Enumerated_type Enumeration] Simple Composite Types
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Enumerated_type Enumeration] Simple Composite Types
|
+
| {{wikitable-td}}
 
'''enum''' condition''':'''<br/>
 
'''enum''' condition''':'''<br/>
 
{{keypress|tab}} '''item<sub>1</sub>'''<br/>
 
{{keypress|tab}} '''item<sub>1</sub>'''<br/>
 
{{keypress|tab}} «'''item<sub>2</sub>'''<br/>
 
{{keypress|tab}} «'''item<sub>2</sub>'''<br/>
 
{{keypress|tab}} …»<br/>
 
{{keypress|tab}} …»<br/>
|  
+
| {{wikitable-td}}
 
|}
 
|}
  
Line 252: Line 251:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
!  
+
! {{wikitable-th}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
 
|}
 
|}
  
Line 269: Line 268:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
!  
+
! {{wikitable-th}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
 
|}
 
|}
  
Line 288: Line 287:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
!  
+
! {{wikitable-th}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
 
|}
 
|}
  
Line 305: Line 304:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
!  
+
! {{wikitable-th}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
 
|}
 
|}
  
Line 322: Line 321:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
!  
+
! {{wikitable-th}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
 
|}
 
|}
  
Line 339: Line 338:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
!  
+
! {{wikitable-th}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
 
|}
 
|}
  
Line 356: Line 355:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
!  
+
! {{wikitable-th}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
 
|}
 
|}
  
Line 373: Line 372:
  
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
 
<!-- This table would be tons easier to read if we had tables styles with cell borders and header cell support. -->
{| style="margin: 1em; margin-left: 0; background: #f9f9f9; border: 1px #aaa solid;"
+
{| {{wikitable}}
 
|-  
 
|-  
! Language
+
! {{wikitable-th}} Language
! [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/Boo_(programming_language) Boo]
! [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
+
! {{wikitable-th}} [http://en.wikipedia.org/wiki/C_Sharp_(programming_language) C#]
! UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
+
! {{wikitable-th}} UnityScript/[http://en.wikipedia.org/wiki/JavaScript JavaScript]
 
|-
 
|-
!  
+
! {{wikitable-th}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
|  
+
| {{wikitable-td}}
 
|}
 
|}
  

Revision as of 05:27, 6 August 2009


This is a comparison of the features and instructions of the three high-level programming languages offered by Unity: JavaScript, C#, and Boo.


Contents

Conventions of This Article

The bold is the literal code. The non-bold is interpreted by the reader. Statements in guillemets (« … ») are optional. tab indicates a necessary indent.

The following tables compare code differences of the Unity programming languages. See also the Comparison of Programming Languages for general information.


Features

The following tables compares major features of the Unity programming languages.

Language Boo C# UnityScript/JavaScript
Paradigm(s)
Standardized Variation? style="border: 1px #aaa solid; padding: 0.2em; background:#90ff90; color:black;" class="wikitable-yes" | Yes style="border: 1px #aaa solid; padding: 0.2em; background:#90ff90; color:black;" class="wikitable-yes" | Yes, ECMA, ISO ECMA-334; ISO/IEC 23270:2006 style="border: 1px #aaa solid; padding: 0.2em; background:#ff9090; color:black;" class="wikitable-no" | No
Type Strength strong strong weak
Type Safety safe safe
Expression of Types implicit with optional explicit typing explicit implicit
Compatibility Among Composite Types name-based
Type Checking static with optional dynamic typing static with optional dynamic typing dynamic with optional static typing

Type Identifiers

Integer

Language Boo C# UnityScript/JavaScript
8 bit (byte) Signed sbyte N/A
8 bit (byte) Unsigned byte byte N/A
16 bit (short integer) Signed short short N/A
16 bit (short integer) Unsigned ushort N/A
32 bit Signed int int N/A
32 bit Unsigned uint N/A
64 bit (long integer) Signed long long N/A
64 bit long integer) Unsigned ulong N/A

Floating Point

Language Boo C# UnityScript/JavaScript
Single Precision single float N/A
Double Precision double double Number
Arbitrarily Precise (bignum) decimal


Other Types

Language Boo C# UnityScript/JavaScript
Text Character N/A char N/A
Text String string string String
Boolean) bool bool Boolean
Object/Universal) object object Object


Derived Types

Array

Language Boo C# UnityScript/JavaScript
one-dimensional fixed size array (type) type[size] type[]
multi-dimensional fixed size array type[size1, size2,...]
one-dimensional dynamic size array List System.Collections.ArrayList
or
System.Collections.Generic.List<type>
Array
multi-dimensional dynamic size array


Other Types

Language Boo C# UnityScript/JavaScript
Record Simple Composite Types struct name {type name;...}
Enumeration Simple Composite Types

enum condition:
tab item1
tab «item2
tab …»

Basic Unity-Specific Types

Language Boo C# UnityScript/JavaScript


Declarations

Language Boo C# UnityScript/JavaScript


Flow Control

Conditional Statements

Language Boo C# UnityScript/JavaScript


Loop Statements

Language Boo C# UnityScript/JavaScript


Exceptions

Language Boo C# UnityScript/JavaScript


Other Flow Control Statements

Language Boo C# UnityScript/JavaScript


Functions

Language Boo C# UnityScript/JavaScript


Type Conversions

Language Boo C# UnityScript/JavaScript



Programming Index

Personal tools
Namespaces

Variants
Actions
Navigation
Extras
Toolbox