Was ist Sprachagnostik und warum heißt sie so?


55

Wann ist etwas sprachunabhängig? Warum heißt es so?


7
Ich denke, es sollte wirklich als Sprachpolytheismus bezeichnet werden, da der Glaube ist, dass es mehr als einen Weg gibt, um etwas zu erledigen.
Chrisaycock

1
@muntoo, Pseudocode selbst ist eine Sprache.
SK-logic

1
@ SK-Logik OK, dann; Wie wäre es mit: Was Sie in Pseudocode schreiben, ist sprachunabhängig ?
Mateen Ulhaq

1
@chrisaycock Du meinst Polyglotismus ?
dukeofgaming

1
Es sollte wirklich eine ökumenische Sprache sein. Es ist nicht so, als ob Sie sich nicht sicher wären, ob Computersprachen existieren oder nicht!
Rob K

Antworten:


58

Sprachunabhängig bezieht sich auf Aspekte der Programmierung, die von einer bestimmten Programmiersprache unabhängig sind. Zumindest habe ich das in den letzten dreißig Jahren gehört.

Das Wort "Agnostiker" stammt aus dem Altgriechischen und bedeutet "weiß nicht". Also muss etwas, was "sprachunabhängig" ist, nichts über Computersprachen wissen; es bedeutet dasselbe wie sprachunabhängig . Zu den sprachunabhängigen Dingen gehören Algorithmen oder Agile oder eine Laufzeitbibliothek mit Bindungen an viele Sprachen.

Einige Mac OS X-Funktionen sind nicht sprachunabhängig , da sie für die Verwendung in Objective C entwickelt wurden, in C oder C ++ nur mit Schwierigkeiten verwendet werden können und nicht einmal für viele Sprachen über Bindungen verfügen.

Es kann auch einen Untertext geben, in dem "sprachunabhängig" anstelle anderer Begriffe verwendet wird.

Im umgangssprachlichen Englisch bedeutet jemand, der sagt, dass er "agnostisch" ist, dass er weder religiös noch atheistisch ist: er "weiß nicht" über Gott. Dies ist normalerweise ein mündlicher Code für "Ich spreche nicht gerne über Religion, versuche also nicht, mich zu bekehren."

Manchmal, wenn die Leute davon sprechen, "sprachunabhängig" zu sein, versuchen sie, sich von Auseinandersetzungen darüber, welche Computersprache besser ist, fernzuhalten.


5
Übrigens, Agnostiker kommen von "einer" (nicht) + "Gnosis" (Wissen). Andere Wörter wie es sind "atheistisch" und "atypisch".
Bob Murphy

2
Ja, ich habe es immer als Hinweis darauf genommen, dass die Sprachkriege im Grunde genommen religiöse Kriege sind: sprachunabhängige Techniken / Ratschläge / Konzepte vermeiden den heiligen Krieg.
Carson63000

Off-Topic: gnostisch / agnostisch bezieht sich auf Wissen. Atheist / Theist bezieht sich auf das Glauben oder die Bestätigung der Existenz. Technisch gesehen kann man also einen Agnostiker oder einen Agnostiker-Atheisten haben. Aber die Erklärung war sehr klar. Sie können auch über ein Datenbank-Agnostik-System sprechen
Borjab

@Borjab Ich bin Agnostiker und glaube an Vim. Aber ich benutze Emacs aus praktischen Gründen.
Brandin

Sprachunabhängig bezieht sich auf Aspekte der Programmierung, die von einer bestimmten Programmiersprache unabhängig sind. Wenn Sie irgendwelche sagen , bedeutet das a oder bedeutet es alles ? Die Kardinalität ist entscheidend. Wenn zum Beispiel eine Anweisung für OOP-Sprachen gilt und nicht auf eine bestimmte OOP-Sprache beschränkt ist, sondern nicht für funktionale Sprachen, ist die Anweisungssprache nicht autonom?
jaco0646

7

Wenn eine Lösung als "sprachunabhängig" bezeichnet wird, heißt das wörtlich, dass Ihre Lösung keine Kenntnisse über "Sprachen" hat, dh universell oder unabhängig von sprachspezifischen Besonderheiten (Paradigmen, Sprachidiomen usw.).

Zum Beispiel sind Entwurfsmuster sprachunabhängig, da die Art und Weise, wie sie beschrieben werden, für die spezifische Implementierung keine Rolle spielt, solange sie an der Gesamtheit oder einer Teilmenge des Musters haften (v.gr. einige Entwurfsmuster können ohne OOP implementiert werden). .

UML ist sprachunabhängig, BPMN ist sprachunabhängig, ERM ist sprachunabhängig. Ein Algorithmus in Pseudocode ist sprachunabhängig ...

Alles, was programmiert, aber nicht in einer bestimmten Sprache beschrieben werden soll, kann als sprachunabhängig bezeichnet werden.


2
Agnostisch bedeutet "weiß nicht", nicht "glaubt nicht an". Subtiler aber wichtiger Unterschied!
JacquesB

BPMN ist sicher nicht sprachunabhängig, weil es Prozesse modelliert. Es gibt Programmiersprachen, in denen Sie lediglich die Vorbedingung und das gewünschte Ergebnis definieren und der Prozess implizit abläuft, z. B. Prolog. Selbst Haskell und BPMN passen nicht besonders gut zusammen, da Haskells fauler Bewertungsansatz dazu führt, dass Dinge nicht in einer zwingend festgelegten Reihenfolge ablaufen.
back2dos

6

Paradigmen oder Funktionen, die nicht nur auf eine Sprache angewendet werden.


2

Ich habe den Begriff vorher noch nicht gehört, aber ich würde annehmen, dass er das Erlernen von Programmieraspekten bedeutet, die unabhängig von einer bestimmten Programmiersprache sind.


1
Warum heißt es so?
Louis Rhys

1
So habe ich es in den letzten dreißig Jahren gehört.
Bob Murphy

1
Ich entferne diese Antwort, um sie als Antwort zu veröffentlichen.
Bob Murphy

@bob: einverstanden. aber wo ist die antwort?
Louis Rhys

@ Louis Rhys: Entschuldigung, ich habe ein paar Minuten gebraucht, um es richtig zu schreiben. Es ist soweit.
Bob Murphy
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.