Template:Language: Difference between revisions

From Rosetta Code
Content added Content deleted
(The ! template seems to work for getting rid of the site table whitespace, but I can't get it to work for the other tables)
(I think I got rid of the whitespace)
Line 8: Line 8:
}}
}}
{|style="text-align: left; font-size: 75%; background-color: #f9f9f9;"
{|style="text-align: left; font-size: 75%; background-color: #f9f9f9;"
{{#if: {{{exec|}}}|{{!}}-
|-
!{{#if: {{{exec|}}}|[[:Category:Execution method|Execution method]]:}}
![[:Category:Execution method|Execution method]]:
|{{#switch: {{lc:{{{exec|}}}}}|machine = Compiled (machine code) [[Category:Execution method/Compiled/Machine code]]|interpreted = Interpreted [[Category:Execution method/Interpreted]]|bytecode = Compiled (bytecode) [[Category:Execution method/Compiled/Bytecode]]}}
{{!}}{{#switch: {{lc:{{{exec|}}}}}|machine = Compiled (machine code) [[Category:Execution method/Compiled/Machine code]]|interpreted = Interpreted [[Category:Execution method/Interpreted]]|bytecode = Compiled (bytecode) [[Category:Execution method/Compiled/Bytecode]]}}
{{!}}-
|-
}}
!{{#if: {{{gc|}}}|[[:Category:Garbage collection|Garbage collected]]:}}
|{{#if: {{{gc|}}}|{{ucfirst:{{{gc}}}}}[[Category:Garbage collection/{{ucfirst:{{{gc}}}}}]]}}
{{#if: {{{gc|}}}|![[:Category:Garbage collection|Garbage collected]]:
{{!}}{{ucfirst:{{{gc|}}}}}[[Category:Garbage collection/{{ucfirst:{{{gc}}}}}]]
|-
{{!}}-
!{{#if: {{{parampass|}}}|[[:Category:Parameter passing|Parameter passing methods]]:}}
}}
|{{#if: {{{parampass|}}}|{{#ifeq: {{{parampass}}}|both| By reference, By value[[Category:Parameter passing/By reference]][[Category:Parameter passing/By value]]|
By {{lc:{{{parampass}}}}}[[Category:Parameter passing/By {{lc:{{{parampass}}}}}]]}}}}
{{#if: {{{parampass|}}}|![[:Category:Parameter passing|Parameter passing methods]]:
{{!}}{{#ifeq: {{{parampass}}}|both| By reference, By value[[Category:Parameter passing/By reference]][[Category:Parameter passing/By value]]|
|-
!{{#if: {{{safety|}}}|[[:Category:Typing|Type safety]]:}}
By {{lc:{{{parampass}}}}}[[Category:Parameter passing/By {{lc:{{{parampass}}}}}]]}}
{{!}}-
|{{#if: {{{safety|}}}|{{#ifeq: {{{safety}}}|both|Safe, Unsafe[[Category:Typing/Safe]][[Category:Typing/Unsafe]]|{{ucfirst:{{{safety}}}}}
}}
[[Category:Typing/{{ucfirst:{{{safety}}}}}]]}}}}
{{#if: {{{safety|}}}|![[:Category:Typing|Type safety]]:
|-
!{{#if: {{{strength|}}}|[[:Category:Typing|Type strength]]:}}
{{!}}{{#ifeq: {{{safety}}}|both|Safe, Unsafe[[Category:Typing/Safe]][[Category:Typing/Unsafe]]|{{ucfirst:{{{safety}}}}}
|{{#if: {{{strength|}}}|{{ucfirst:{{{strength}}}}}<br>[[Category:Typing/{{ucfirst:{{{strength}}}}}]]}}
[[Category:Typing/{{ucfirst:{{{safety}}}}}]]}}
{{!}}-
|-
}}
!{{#if: {{{compat|}}}|[[:Category:Typing/Compatibility|Type compatibility]]:}}
{{#if: {{{strength|}}}|![[:Category:Typing|Type strength]]:
|{{#if: {{{compat|}}}|{{#ifeq: {{{compat}}}|both|Nominative, Structural[[Category:Typing/Compatibility/Nominative]][[Category:Typing/Compatibility/Structural]]|{{ucfirst:{{{compat}}}}}
[[Category:Typing/Compatibility/{{ucfirst:{{{compat}}}}}]]}}}}
{{!}}{{ucfirst:{{{strength}}}}}<br>[[Category:Typing/{{ucfirst:{{{strength}}}}}]]
{{!}}-
|-
}}
!{{#if: {{{express|}}}|[[:Category:Typing/Expression|Type expression]]:}}
|{{#if: {{{express|}}}|{{ucfirst:{{{express}}}}}[[Category:Typing/Expression/{{ucfirst:{{{express}}}}}]]}}
{{#if: {{{compat|}}}|![[:Category:Typing/Compatibility|Type compatibility]]:
{{!}}{{#ifeq: {{{compat}}}|both|Nominative, Structural[[Category:Typing/Compatibility/Nominative]][[Category:Typing/Compatibility/Structural]]|{{ucfirst:{{{compat}}}}}
|-
[[Category:Typing/Compatibility/{{ucfirst:{{{compat}}}}}]]}}
!{{#if: {{{checking|}}}|[[:Category:Typing/Checking|Type checking]]:}}
{{!}}-
|{{#if: {{{checking|}}}|{{#ifeq: {{{checking}}}|both|Dynamic, Static[[Category:Typing/Checking/Dynamic]][[Category:Typing/Checking/Static]]|
}}
{{ucfirst:{{{checking|}}}}}[[Category:Typing/Checking/{{ucfirst:{{{checking}}}}}]]}}}}
{{#if: {{{express|}}}|![[:Category:Typing/Expression|Type expression]]:
|-
!{{#if: {{{untyped|}}}|{{#ifeq: {{{untyped}}}|yes|Untyped:}}}}
{{!}}{{ucfirst:{{{express}}}}}[[Category:Typing/Expression/{{ucfirst:{{{express}}}}}]]
{{!}}-
|{{#if: {{{untyped|}}}|{{#ifeq: {{{untyped}}}|yes|yes[[Category:Typing/Untyped]]}}}}
}}
|-
!{{#if: {{{tags|}}}|[[Help:Syntax_Highlighting|Lang tag(s)]]:}}
{{#if: {{{checking|}}}|![[:Category:Typing/Checking|Type checking]]:
{{!}}{{#ifeq: {{{checking}}}|both|Dynamic, Static[[Category:Typing/Checking/Dynamic]][[Category:Typing/Checking/Static]]|
|{{#if: {{{tags|}}}|{{{tags}}}}}
{{ucfirst:{{{checking|}}}}}[[Category:Typing/Checking/{{ucfirst:{{{checking}}}}}]]}}
|-
{{!}}-
}}
{{#if: {{{untyped|}}}|!{{#ifeq: {{{untyped}}}|yes|Untyped:}}
{{!}}{{#ifeq: {{{untyped}}}|yes|yes[[Category:Typing/Untyped]]}}
{{!}}-
}}
{{#if: {{{tags|}}}|![[Help:Syntax_Highlighting|Lang tag(s)]]:
{{!}}{{{tags}}}
{{!}}-
}}
!See Also:
!See Also:
|{{HOPL}}{{#if:{{{LCT|}}}|<br>[[Language Comparison Table#{{PAGENAME}}|{{PAGENAME}} compared to other languages]]}}
|{{HOPL}}{{#if:{{{LCT|}}}|<br>[[Language Comparison Table#{{PAGENAME}}|{{PAGENAME}} compared to other languages]]}}

Revision as of 14:30, 17 September 2009

Programming Language
Language is a programming language. It may be used to instruct computers to accomplish a variety of tasks which may or may not be domain-specific.

See Also: Language on the HOPL
Listed below are all of the tasks on Rosetta Code which have been solved using Language.
Your Help Needed
If you know Language, please write code for some of the unimplemented tasks or assist updating those examples that need attention.

This box is primarily used in category pages (click "What links here" in the navbar on the left), not all of which will have much information in them. If a language category page has too little content, but too many articles, the infobox will overlap the article list.

Usage:

Param name values meaning
exec "machine", "interpreted", or "bytecode" execution method
site a full URL official language website
gc "yes" or "no" garbage collection
parampass "value", "reference", or "both" parameter passing mode(s)
safety "safe", "unsafe", or "both" type safety
strength "strong" or "weak" type strength
compat "nominative", "structural", "both", or "duck" type compatibility
express "implicit" or "explicit" type expression
checking "static", "dynamic", or "both" type checking
tags a list of lang tag arguments this language's corresponding lang tag argument
LCT "yes" or "no" whether this language has an entry in the Language Comparison Table

This is a template. There are many others. See Category:RCTemplates for a complete list of templates.