Das Hauptproblem von dem, was Sie fragen, ist, dass eine allgemeinere Lösung nicht die beste für ein spezifisches Problem ist. Es ist nur Durchschnitt für alle, aber nicht der Beste.
Ok, Sie können eine Liste in einem Diagramm speichern, vorausgesetzt, dass sie entartet ist, aber warum sollten Sie so etwas tun? Und wie würden Sie eine Hashmappe in einem Graph speichern? Warum brauchen Sie eine solche Struktur?
Und vergessen Sie nicht, dass die Graphimplementierung entsprechend gewählt werden muss, mit welchen Operationen Sie es tun, andernfalls wäre es wie eine Hashtabelle zum Speichern einer Werteliste oder eine Liste zum Speichern einer geordneten Sammlung ein Baum. Sie wissen, dass Sie eine Adjazenzmatrix, eine Kantenliste oder Adjazenzlisten verwenden können. Jede unterschiedliche Implementierung mit ihren eigenen Stärken und Schwächen.
Dann Graphen können wirklich viele Eigenschaften im Vergleich zu anderen Sammlungen von Daten haben, zyklisch, azyklisch, gerichtet, ungerichtet, zweigeteilt, und so weiter und für jeden spezifischen Fall können Sie sie auf eine andere Art und Weise implementieren (unter Annahme einer Hypothese in der grafischen Darstellung, die Sie benötigen), also wäre es zuviel Overkill, sie in nativer Syntax zu haben, da Sie sie sowieso konfigurieren müssten (und die Sprache sollte viele Implementierungen/Optimierungen bereitstellen).
Wenn alles schon gemacht ist, entfernen Sie den Spaß der Entwicklung :) Übrigens suchen Sie einfach nach einer Sprache, mit der Sie Ihre eigenen Graph DSL schreiben und damit leben können!
Probieren Sie nPiet: http://www.bertnase.de/npiet/ (Hinweis: das ist ein Witz). –
Interessanter und gültiger Punkt. Ich vermute, dass die Vielfalt der Graphen, die Menschen im Allgemeinen manipulieren, der Grund dafür ist, dass sie in Sprachen nicht als eingebaute (oder sogar Teil einer Standardbibliothek, AFAIK!) Vorhanden sind. Es gibt jedoch viele Sprachen, die auf dem Umschreiben von Graphen basieren, aber dies geschieht im Allgemeinen hinter den Kulissen, nicht als von einem Programmierer zugängliche Sache. – Gian
Ich stimme zu, dass Diagramme in der Natur variieren, aber nicht, dass dies ein starker Grund ist, keine Standardimplementierung und Inline-Syntax anzubieten. –