About: Orthogonality (programming)     Goto   Sponge   NotDistinct   Permalink

An Entity of Type : yago:WikicatProgrammingLanguageTopics, within Data Space : dbpedia.org associated with source document(s)
QRcode icon
http://dbpedia.org/describe/?url=http%3A%2F%2Fdbpedia.org%2Fresource%2FOrthogonality_%28programming%29

In computer programming, orthogonality means that operations change just one thing without affecting others. The term is most-frequently used regarding assembly instruction sets, as orthogonal instruction set. An example from IBM Mainframe and VAX highlights this concept. An IBM mainframe has two different instructions for adding the contents of a register to a memory cell (or another register). These statements are shown below: A Reg1, memory_cellAR Reg1, Reg2 In contrast to the above set of statements, VAX has only one statement for addition: ADDL operand1, operand2

AttributesValues
rdf:type
rdfs:label
  • Orthogonalität (Informatik) (de)
  • 直交性 (情報科学) (ja)
  • Orthogonality (programming) (en)
rdfs:comment
  • 情報科学における直交性とは、特定の機能体系内で例外的な振る舞いを行う要素の多寡を指し示す慣用的な用語である。どの要素も本質的には同じように振る舞うならば直交性が高い、要素毎の癖が強いならば直交性が低い、と表現する。 機能の直交性が高いということは、一つの要素について知れば他の要素でも類推が効くということである。したがって利用者にとっては、直交性の高さはその体系の使い勝手が良いことを意味する。 この用語は文脈によって様々な意味に用いられるので扱いには注意が必要である。 (ja)
  • In der Informatik ist Orthogonalität ein Entwurfsprinzip, nämlich die freie Kombinierbarkeit unabhängiger Konzepte. Zum Beispiel galt schon in Algol 60: Wo irgendein Ausdruck eines Typs stehen darf, darf jeder beliebige Ausdruck dieses Typs stehen (beispielsweise ein beliebig komplizierter arithmetischer Ausdruck zur Berechnung eines Indexes zur Bezeichnung eines Feld-Elements). Später in Fortran 66 durfte aber als (ganzzahliger) Index dagegen nur ein Ausdruck der Bauart „Konstante1 mal Variable plus Konstante2“ stehen, wobei zwei der drei Werte (samt zugehörigen Rechenzeichen) fehlen konnten. Das war ein Verstoß gegen das (viel früher formulierte) Entwurfsprinzip der Orthogonalität. (de)
  • In computer programming, orthogonality means that operations change just one thing without affecting others. The term is most-frequently used regarding assembly instruction sets, as orthogonal instruction set. An example from IBM Mainframe and VAX highlights this concept. An IBM mainframe has two different instructions for adding the contents of a register to a memory cell (or another register). These statements are shown below: A Reg1, memory_cellAR Reg1, Reg2 In contrast to the above set of statements, VAX has only one statement for addition: ADDL operand1, operand2 (en)
dcterms:subject
Wikipage page ID
Wikipage revision ID
Link from a Wikipage to another Wikipage
Link from a Wikipage to an external page
sameAs
dbp:wikiPageUsesTemplate
has abstract
  • In der Informatik ist Orthogonalität ein Entwurfsprinzip, nämlich die freie Kombinierbarkeit unabhängiger Konzepte. Zum Beispiel galt schon in Algol 60: Wo irgendein Ausdruck eines Typs stehen darf, darf jeder beliebige Ausdruck dieses Typs stehen (beispielsweise ein beliebig komplizierter arithmetischer Ausdruck zur Berechnung eines Indexes zur Bezeichnung eines Feld-Elements). Später in Fortran 66 durfte aber als (ganzzahliger) Index dagegen nur ein Ausdruck der Bauart „Konstante1 mal Variable plus Konstante2“ stehen, wobei zwei der drei Werte (samt zugehörigen Rechenzeichen) fehlen konnten. Das war ein Verstoß gegen das (viel früher formulierte) Entwurfsprinzip der Orthogonalität. Orthogonalität bezeichnet auch, dass nicht mehrere Programme gleiche Funktionen haben. Zum Beispiel wird unter Linux die raffinierte Auswahl von Dateien nur von dem Programm find getroffen. Auf der anderen Seite kann find nur Dateien auswählen und hat keine zusätzlichen Funktionen; es lässt sich aber mit allen anderen Kommandos kombinieren. Das Programm tar kann mehrere Dateien zu einem Archiv zusammenfassen; zum Komprimieren wird es mit gzip kombiniert. gzip kann nur eine Datei komprimieren und kann keine Dateien auswählen oder zusammenfassen. Bei Mikroprozessoren ist Orthogonalität eine bestimmte Eigenschaft des Befehlssatzes, siehe dort. Bei magnetischen Speichermedien ist Orthogonalität eine Aufzeichnungstechnik, siehe Perpendicular Recording. (de)
  • In computer programming, orthogonality means that operations change just one thing without affecting others. The term is most-frequently used regarding assembly instruction sets, as orthogonal instruction set. Orthogonality in a programming language means that a relatively small set of primitive constructs can be combined in a relatively small number of ways to build the control and data structures of the language. It is associated with simplicity; the more orthogonal the design, the fewer exceptions. This makes it easier to learn, read and write programs in a programming language. The meaning of an orthogonal feature is independent of context; the key parameters are symmetry and consistency (for example, a pointer is an orthogonal concept). An example from IBM Mainframe and VAX highlights this concept. An IBM mainframe has two different instructions for adding the contents of a register to a memory cell (or another register). These statements are shown below: A Reg1, memory_cellAR Reg1, Reg2 In the first case, the contents of Reg1 are added to the contents of a memory cell; the result is stored in Reg1. In the second case, the contents of Reg1 are added to the contents of another register (Reg2) and the result is stored in Reg1. In contrast to the above set of statements, VAX has only one statement for addition: ADDL operand1, operand2 In this case the two operands (operand1 and operand2) can be registers, memory cells, or a combination of both; the instruction adds the contents of operand1 to the contents of operand2, storing the result in operand1. VAX’s instruction for addition is more orthogonal than the instructions provided by IBM; hence, it is easier for the programmer to remember (and use) the one provided by VAX. The design of C language may be examined from the perspective of orthogonality. The C language is somewhat inconsistent in its treatment of concepts and language structure, making it difficult for the user to learn (and use) the language. Examples of exceptions follow: * Structures (but not arrays) may be returned from a function. * An array can be returned if it is inside a structure. * A member of a structure can be any data type (except void, or the structure of the same type). * An array element can be any data type (except void). Everything is passed by value (except arrays). Though this concept was first applied to programming languages, orthogonality has since become recognized as a valuable feature in the design of APIs and even user interfaces. There, too, having a small set of composable primitive operations without surprising cross-linkages is valuable, as it leads to systems that are easier to explain and less frustrating to use. (en)
  • 情報科学における直交性とは、特定の機能体系内で例外的な振る舞いを行う要素の多寡を指し示す慣用的な用語である。どの要素も本質的には同じように振る舞うならば直交性が高い、要素毎の癖が強いならば直交性が低い、と表現する。 機能の直交性が高いということは、一つの要素について知れば他の要素でも類推が効くということである。したがって利用者にとっては、直交性の高さはその体系の使い勝手が良いことを意味する。 この用語は文脈によって様々な意味に用いられるので扱いには注意が必要である。 (ja)
prov:wasDerivedFrom
page length (characters) of wiki page
foaf:isPrimaryTopicOf
is Link from a Wikipage to another Wikipage of
is Wikipage redirect of
is foaf:primaryTopic of
Faceted Search & Find service v1.17_git139 as of Feb 29 2024


Alternative Linked Data Documents: ODE     Content Formats:   [cxml] [csv]     RDF   [text] [turtle] [ld+json] [rdf+json] [rdf+xml]     ODATA   [atom+xml] [odata+json]     Microdata   [microdata+json] [html]    About   
This material is Open Knowledge   W3C Semantic Web Technology [RDF Data] Valid XHTML + RDFa
OpenLink Virtuoso version 08.03.3330 as of Mar 19 2024, on Linux (x86_64-generic-linux-glibc212), Single-Server Edition (378 GB total memory, 49 GB memory in use)
Data on this page belongs to its respective rights holders.
Virtuoso Faceted Browser Copyright © 2009-2024 OpenLink Software