Ist Ada wirklich weg?


17
  • Haben die Leute immer noch Ada verwenden - (es war meistens verwendet im Verteidigungsministerium)
  • Sind alle Anwendungen in Ada "Legacy" geschrieben?
  • Verkauft sich Ada Wissen noch?

5
Bitte zuerst lesen , bevor Sie diese Frage stellen: tiobe.com/index.php/content/paperinfo/tpci/index.html Es populärer als F # oder Montag ist, und es hat tatsächlich eine saubere Syntax (IMO).
Job

2
Eine weitere informative Seite: seas.gwu.edu/~mfeldman/ada-project-summary.html
BlackJack

1
@greenlit, Java zu Ada Entwickler sind derzeit ca. 20: 1. Um mehr zu erfahren, scannen Sie die Stellenausschreibungen. Was ist dein Winkel hier? Hoffst du, einen hochbezahlten Ada-Job zu finden?
Job

3
Wenn Sie es in der allgemeinen Anwendung verwenden möchten, warum ist Popularität wichtig? Planen Sie weitere Entwickler hinzuzufügen?
JeffO

1
@greengit siehe auch stackoverflow.com/questions/1078043/why-didnt-ada-make-it - tatsächlich hat es geschafft, Java hat die meiste Zeit damit verbracht, aufzuholen !
NWS

Antworten:


27

Verwenden die Leute immer noch Ada - (es wurde meistens im Verteidigungsministerium verwendet)

Es sieht so aus, als ob Ada zuletzt im Jahr 2005 aktualisiert wurde und an einer Ada 2012 gearbeitet wird. Die Sprache selbst ist also immer noch lebendig und munter.

Ada ist nicht mehr für den Einsatz im Verteidigungsministerium vorgesehen. Die meiste Arbeit, die ich gesehen und getan habe, war in Java, C und C ++, aber es wird auch das .NET-Framework verwendet, und ich habe sogar von Projekten gehört, in denen andere JVM-Sprachen wie Scala ausgeführt werden, je nachdem, wie das ausgeführt wird System wird verwendet. Es gibt wahrscheinlich eine Menge Code in Ada, daher wäre ich nicht überrascht, wenn eine Menge Code wiederverwendet und gewartet wird. Angesichts der Art der Verteidigungsprojekte ist es schwierig, genaue Zahlen für deren Verwendung zu ermitteln.

Es gibt eine Liste der Ada-Projekte und -Benutzer , aber es sieht so aus, als ob das letzte Update im Juni 2008 war. Es gibt möglicherweise neuere Listen, aber ich konnte keine schnell finden.

Sind alle Anwendungen in Ada "Legacy" geschrieben?

Wenn Sie fragen, ob es eine neue Ada-Entwicklung gibt, würde es mich nicht wundern, wenn in Ada von Grund auf neue Systeme geschrieben werden. Ich würde vermuten, dass es zu viele geben würde, aber es gibt wahrscheinlich einige da draußen. Ich würde jedoch vermuten, dass die meisten der Ada-Arbeiten dort Wartung oder Upgrades auf vorhandenen Systemen sind, keine Neuentwicklung.

Verkauft sich Ada Wissen noch?

Wissen in allem verkauft sich, wenn Sie jemanden finden können, der nach diesen Fähigkeiten sucht. Auch wenn Sie Ada nicht in der Entwicklung verwenden, habe ich festgestellt, dass die Kenntnis einer bestimmten Sprache oder eines bestimmten Frameworks meine Meinung und die Verwendung anderer Sprachen oder Frameworks geändert hat. Ich würde vermuten, dass das Kennen von Ada Ihnen einen Einblick in andere Methoden zum Entwerfen und Erstellen von Software auch in anderen Sprachen geben würde.


5
Ich schreibe neue Systeme in Ada :)
NWS

1
C # und .NET werden auch in Geschäftsanwendungen verwendet, die von Verteidigungsunternehmen geschrieben wurden.
George Stocker

@NWS: In mancher Hinsicht sieht es so aus, als ob es eine wesentlich robustere statische Validierung bieten könnte, als dies in C möglich wäre. Ich bin jedoch gespannt, inwieweit die subbereichsbasierte Typisierung tatsächlich zur Verringerung der Abhängigkeit von der Maschinengröße beiträgt. Wenn man zB zwei Variablen als Typ 0..200 deklariert hat und testen möchte, ob ihr Produkt größer als 250 ist, könnte man ihr Produkt einfach mit 250 vergleichen und sicherstellen, dass es funktioniert, oder würde die Kompilierung in Fällen, in denen dies fehlschlägt, fehlschlagen es könnte fehlschlagen oder die Kompilierung bestehen, aber zur Laufzeit fehlschlagen, wenn das Produkt 32.767 überschreitet?
Supercat

@supercat Ja Statische Validierung ist in Ada sehr gut. Die korrekte Verwendung von Untertypen und Modultypen zur Erzeugung von Bereichen, gegen die getestet werden soll, löst Ihr Rätsel. Es gibt auch Bibliotheken für die Bearbeitung sehr großer Zahlen, die auf 16/32-Bit-Computern funktionieren. Haben Sie sich über das starke Typensystem in Ada informiert? Sobald Sie lernen, wie man es richtig benutzt, ist es sehr mächtig.
NWS

@NWS: Ich habe mir die Ada-Sprachdefinition angesehen, die auf der Wiki-Seite verlinkt ist, und während ich herausgefunden habe, wo es um die Definition numerischer Typen geht, konnte ich keine Diskussion darüber finden, wie sie mit Operatoren interagieren. Wenn Ada bei der Bearbeitung von Typen, die nicht genau übereinstimmen, Typografien benötigen würde, wäre dies weniger hilfreich, aber ich konnte keine Hinweise darauf finden, was tatsächlich erforderlich ist. Wenn ich die Sprache entwerfe, würde ich im oben genannten Fall entweder sicherstellen, dass der Vergleich sich so verhält, als würde er mit einem Typ bewertet, der bis zu 40.000
Zeichen enthalten


6

Ada wird nach wie vor in verteidigungs-, missions- und sicherheitskritischen eingebetteten Echtzeitsystemen eingesetzt.

Deshalb: Züge, Eisenbahnen, Flugzeuge, Flugsicherung, Satelliten, medizinische Systeme, Kernkraftwerke usw

Für eine kürzliche Verwendung von ada siehe: this


5

"Wurde" in der Verteidigungsabteilung verwendet? Als ich das letzte Mal nachgesehen habe, ist es immer noch so. Ada ist immer noch so brauchbar wie jede andere Sprache, um neue Software von Grund auf neu zu schreiben. Ein Nachteil besteht in der Verfügbarkeit vorhandener Software zur Wiederverwendung und Anpassung sowie in der Verfügbarkeit von Programmierern, die Ihnen helfen. Es kann jedoch mit C-Programmen oder solchen mit einer ähnlichen binären Schnittstelle verknüpft werden.

Ada hat wahrscheinlich die idiomatischste Verwendung von starker Typisierung und generischer Programmierung in jeder Sprache, die ich kenne. Diese Erfahrung ist sehr verkaufsfähig, auch wenn Sie nicht in Ada programmieren.


1
Es war bis Ende der 90er Jahre (1997-1998, wenn ich mich richtig erinnere) für DoD-Projekte vorgesehen. Es gibt noch immer Ada-Code, aber immer mehr Projekte werden mit C, C ++, Java erstellt, und selbst Sprachen wie Python machen Fortschritte. Ich sage nicht, dass es nicht verwendet wird - es gibt eine Menge Ada-Code, der immer noch gut ist und für Projekte wiederverwendet, geändert oder erweitert werden kann, und das ist es auch. Aber nicht viel Neuentwicklung nutzt Ada.
Thomas Owens

Ich fand C ++ - Vorlagen mit automatischer Instanziierung der Vorlagenfunktion weitaus leistungsfähiger und "idiomatischer" als Ada-Generika.
Kevin Cline

1
@ Kevin, idiomatisch bezieht sich auf ein typisches Verwendungsmuster , das eine Sprache definiert, nicht wie "mächtig" sie ist. Es ist nicht ungewöhnlich, dass C ++ - Programmierer jahrelang Vorlagen für Standardbibliothekscontainer verwenden, aber niemals eigene definieren. Das ist bei Ada-Programmierern und Generika unbekannt.
Karl Bielefeldt

Beachten Sie, dass das Mandat aufgehoben wurde, nicht seine Verwendung.
NWS

1

Ich würde sagen, dass jede Sprache, die jemals so populär war und nicht hardwarespezifisch in der Nicht-Tech-Industrie oder in der Regierung war, niemals in einer einzigen Generation sterben wird.

Unternehmen und doppelt so Regierung hat zu viele Vorschriften und andere Bedenken, nur um zu aktualisieren, weil etwas alt ist. Viele Systeme in diesem Alter werden sowieso intern unterstützt, so dass das Argument der Nichtunterstützung auch bei diesen nicht zum Tragen kommt.

Die Antwort von Thomas ist in diesem Fall gut. Ada wird da sein, bis alles, was auf Technologie basiert, vor Mitte der 90er Jahre im Militär ersetzt wurde. Im Allgemeinen führt diese Art von Frage jedoch immer zu dieser Art von Antwort, da Sprachen eine Periode von hatten Eine signifikante kritische Masse stirbt niemals vollständig ab.

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.