Jump to content

Language-agnostic: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
m clean up using AWB
m Added links
 
(5 intermediate revisions by 5 users not shown)
Line 1: Line 1:
'''Language-agnostic''' programming or scripting (also called '''language-neutral''', '''language-independent''', or '''cross-language''') is a software paradigm in which no particular language is promoted.
{{Multiple issues|
{{factual accuracy|date=March 2013}}
{{cleanup|reason = Describe more possible meanings of the terms "language-agnostic", "language-neutral", etc.; also discuss whether there is a distinction between the meanings of each phrase|date=October 2012}}
{{One source|date=February 2018}}
}}
'''Language-agnostic''' programming or scripting (also called '''language-neutral''', '''language-independent''', or '''cross-language''') is a software development paradigm where a particular language is chosen because of its appropriateness for a particular task (taking into consideration all factors, including ecosystem, developer skill-sets, performance, etc.), and not purely because of the skill-set available within a development team.


In introductory instruction, the term refers to teaching principles rather than language features.<ref>
For example, a language agnostic Java development team might choose to use Ruby or Perl for some development work, where Ruby or Perl would be more appropriate than Java.
{{cite web |url=https://github.com/EbookFoundation/free-programming-books/blob/main/books/free-programming-books-subjects.md#programming|title=Free Programming Books By Subject / Programming |last= |first= |date= |website= |publisher=EbookFoundation|access-date= |quote=}}</ref>
For example, a textbook such as [[Structure and Interpretation of Computer Programs]] is really a language-agnostic book about programming, and is not about programming in [[Scheme (programming language)|Scheme]], ''per se''.


As a development methodology, the concept suggests that a particular language should be chosen because of its appropriateness for a particular task (taking into consideration all factors, including ecosystem, developer skill-sets, performance, etc.), and not purely because of the skill-set available within a development team.
"Cross-Language" in programming and scripting describes a program in which two or more languages must be implemented into the program code alongside the core programming language chosen to write the program. Whether this means including a script as a source, to be used when needed, running code within Language-Independent Virtual Machines such as JVM, or Object Models such as COM to cooperate with each other, or choosing languages that work well together natively.<ref>{{cite web|url=http://queue.acm.org/detail.cfm?id=2543971|title=The Challenge of Cross-language Interoperability - ACM Queue|website=queue.acm.org}}</ref>
For example, a language agnostic [[Java_(programming_language)|Java]] development team might choose to use [[Ruby_(programming_language)|Ruby]] or [[Perl]] for some development work, where Ruby or Perl would be more appropriate than Java.

"Cross-Language" in programming and scripting describes a program in which two or more languages are used to good effect within a program's code, with each contributing its distinctive benefits.<ref>{{cite web|url=http://queue.acm.org/detail.cfm?id=2543971|title=The Challenge of Cross-language Interoperability - ACM Queue|website=queue.acm.org}}</ref>


==Related terms==
==Related terms==
*[[Language-independent specification]]
* [[Language-independent specification]]
*[[Cross-language information retrieval]], referring to natural languages, not programming languages
* [[Cross-language information retrieval]], referring to natural languages, not programming languages
*[[Language independent datatypes]]
* [[Language independent datatypes]]


==See also==
==See also==
*[[Bilingual (disambiguation)]]
* [[Bilingual (disambiguation)]]
*[[Language-independent (disambiguation)]]
* [[Language-independent (disambiguation)]]
*[[Glue language]]
* [[Glue language]]
*[[Language binding]]
* [[Language binding]]
*[[Middleware]]
* [[Middleware]]
*[[Polyglot (computing)]]
* [[Polyglot (computing)]]


==References==
==References==
{{Reflist}}
{{Reflist}}


[[Category:Software development]]
{{uncategorized|date=July 2018}}

Latest revision as of 13:42, 14 June 2023

Language-agnostic programming or scripting (also called language-neutral, language-independent, or cross-language) is a software paradigm in which no particular language is promoted.

In introductory instruction, the term refers to teaching principles rather than language features.[1] For example, a textbook such as Structure and Interpretation of Computer Programs is really a language-agnostic book about programming, and is not about programming in Scheme, per se.

As a development methodology, the concept suggests that a particular language should be chosen because of its appropriateness for a particular task (taking into consideration all factors, including ecosystem, developer skill-sets, performance, etc.), and not purely because of the skill-set available within a development team. For example, a language agnostic Java development team might choose to use Ruby or Perl for some development work, where Ruby or Perl would be more appropriate than Java.

"Cross-Language" in programming and scripting describes a program in which two or more languages are used to good effect within a program's code, with each contributing its distinctive benefits.[2]

[edit]

See also

[edit]

References

[edit]
  1. ^ "Free Programming Books By Subject / Programming". EbookFoundation.
  2. ^ "The Challenge of Cross-language Interoperability - ACM Queue". queue.acm.org.