Diskussion:String-Heap

Aus C64-Wiki
Zur Navigation springenZur Suche springen

Konstant-String-Anmerkung[Quelltext bearbeiten]

"Konstante Strings im Direktmodus, wie z.B. mit PRINT "ABC": PRINT "XY" erzeugt, werden immer jeweils ab MEMTOP abwärts abgelegt, so dass ein neuer String den alten überschreibt. Im Beispiel wird also "AXY" erzeugt."

Ist völlig irrelevant, hier eine spezifische Einzelbeobachtung und stimmt so nicht, weil es am "Top-of-Heap" und nicht MEMTOP angelegt wird. Der Heap ist so definiert, dass neu angelegte Strings am Top-of-Heap angelegt werden. Egal, ob es Konstant-Strings im Direkt-Modus sind oder andere. Es handelt sich um 2 Optimierungen des Interpreters, die besondere Umstände berücksichtigen:

  1. Der zuletzt am Heap angelegt String wird gleich wieder entfernt, wenn dieser nicht gebraucht wird.
  2. Ein Konstant-String im Programmcode (also nicht in einer Direktmoduseingabe) wird nicht auf den Heap kopiert, sondern im String-Descriptor direkt referenziert.

--JohannKlasek (Diskussion) 23:56, 2. Aug. 2022 (CEST)

Dieser Fall ist nun in dem neuen Kapitel Verwendung detailliert erklärt. Das gefällt mir gut so. --Petrus (Diskussion) 09:44, 4. Aug. 2022 (CEST)
Fein, freut mich, dass wir das gütlich zu einer für (hoffentlich) alle akzeptierten Form gebracht haben. ;) --JohannKlasek (Diskussion) 17:49, 4. Aug. 2022 (CEST)

Wirklich Stub?/Verschmelzung mit bzw. Umleitung auf "Garbage Collection"?[Quelltext bearbeiten]

Meiner Meinung nach ist das reicht das hier Geschriebene vollkommen aus, um zu verstehen, was der Heap ist. Stub kann meines Erachtens weg. Evtl. macht es sogar Sinn, diesen Artikel mit dem ausführlicheren Artikel "Garbage Collection" zu verschmelzen, indem man den Begriff dort erklärt und über Stichwort "String Heap" einfach eine Umleitung zu "Garbage Collection" setzt (REDIRECT). Muss aber nicht sein. Meinungen? --TheRyk 22:09, 13. Feb. 2013 (CET)

Ich hätte gerne String-Heap als Datenstruktur des Basic-Interpreters separat, um eine Datenstruktur-Systematik aufbauen zu können. Dazu kommen noch (laut meiner internen TODO-Liste ;) ) noch so Dinge wie String-Descriptor-Stack, String-Descriptor, Basic-Code, Variable-List, Array-Variable, Variable-Types, Open-File-Table, RS232-Input/Output-Buffer, ...
Stub weg kann ich nur befürworten.
JohannKlasek 23:42, 13. Feb. 2013 (CET)

Links[Quelltext bearbeiten]

Okay, scheint dass hier wohl eine gewisse Diskussion vonnöten ist. Ich war so frei und hab die Links rausgenommen weil sie einfach absolut gar nix mit dem Artikel selbst zu tun haben. Wenn die Links dann ohne Begründung mit dem Vermerk "Hier ist nicht Wikipedia" wieder reinkommen muss es wohl eine tiefere Verbindung zum Begriff "String-Heap" geben die ich noch nicht erkannt habe. Bitte klär mich doch mal einer auf, was genau

  • Ein Link auf den Wikipedia-Artikel zu "Microsoft Basic" und
  • Ein Link auf den englischen Wikipedia-Artikel zu Bill Gate's Open Letter To Hobbyists

mit einem String-Heap zu tun haben? Ist "Hier ist nicht Wikipedia" ein Argument dafür, Links auf beliebige Seiten in einen Artikel zu setzen? --Darkstar 08:12, 4. Feb. 2010 (CET)

0 Treffer. — Moiree 08:18, 4. Feb. 2010 (CET)
ha ha, ganz toll. Dein Link erklärt trotzdem nicht, was die Links mit dem Artikel zu tun haben. Ich sags nochmal, die Tatsache dass hier nicht Wikipedia ist, und dass es keine offizielle Link Policy gibt bedeuten doch nicht dass die Links unter den Artikeln nicht zumindest irgendeine Verbindung mit dem Artikel haben müssen, oder seh ich das falsch? Naja jedenfalls sind sie ja jetzt weg, die Diskussion kann also als geschlossen angesehen werden. --Darkstar 08:24, 4. Feb. 2010 (CET)
Wo ist der Bezug zu 8-Bit BASIC?Moiree 08:46, 4. Feb. 2010 (CET)
Ich glaube nicht dass ich mit dir hier noch weiter diskutieren muss da du offensichtlich kein Interesse an einer ernsthaften Diskussion hast und nur Links hin und her schicken kannst. --Darkstar 09:50, 4. Feb. 2010 (CET)
Ich finde den Bezug auf Quickbasic Interpreter/Compiler und dessen Memory-Management mit dem ganzen Intelismus auch nicht sonderlich passend. Einzig, dass die Basic-Dialekte mit Microsoft die gleichen Wurzeln haben. Die Zweige sind schon so weit auseinander gelaufen, da kann man praktisch beliebige andere Basic-Implementierungen ebenso zitieren, denn auch die haben einen Stringheap. Viele Möglichkeiten der Anordnung gibt es in Wahrheit gar nicht - aus meiner Sicht war da kein spezielle Genialität nötig, die man hier MS oder eben Bill G. anheften müsste bzw. es ist nicht unbedingt ein Herausstellungsmerkmal für diese Basic-Schiene. Ein Stringheap ergibt sich einfach aus den technischen Rahmenbedingungen, als gewisse Notwendigkeit ... --JohannKlasek 22:30, 5. Feb. 2010 (CET)
Ich bin nicht froh darüber, daß es überhaupt einen eigenen Artikel dafür gibt, da das Thema ein Teil der Speicherbelegung_(BASIC) ist. — Moiree 22:53, 5. Feb. 2010 (CET)
Ist doch prima, dann packen wir den Inhalt in Speicherbelegung (BASIC) mit rein, setzen einen Redirect und schmeissen den Artikel hier weg. Oder? Ich finde auch dass dieser Begriff nicht unbedingt einen eigenen Artikel braucht, insbesondere in Anbetracht der Tatsache dass man nunmal einfach nicht sehr viel schreiben kann über einen String Heap. Vielleicht wäre ein generischer "Heap" Artikel sinnvoller?
--Darkstar 08:32, 6. Feb. 2010 (CET)
Also ich möchte hier ein Veto einlegen. Mir liegt sehr viel an einem eigenen String-Heap-Artikel und er ist mit Absicht in der Speicherbelegung und als zentrale Datenstruktur in Verbindung mit der Garbage Collection verknüpft. Leider hatte ich bislang nicht ausreichend Zeit, eine ordentliche Seite zu entwerfen und Moiree kam mir zuvor die Seite anzulegen, ohne jedoch ausreichende Substanz zu bieten. Diesen Start wollte ich dem Artikel (samt der bisherigen Diskussion) eigentlich ersparen.
Ad generischem Heap-Artikel: Das trifft die Sache nicht. Finde ich absolut nicht sinnvoller. Da kann man gleich direkt auf Wikipedia verlinken! Es sollte schon zum konkreten Kontext passen.
Ihr könnt die Seite ja wieder löschen. Wenn ich Zeit und mein Konzept fertig entworfen habe, werde ich sie wieder anlegen ...
Ich würde sogar weiter gehen und auch andere wesentliche, zentrale Datenstrukturen (das müssen nicht notwendig "Bereiche" sein) systematisch behandeln.
Ich hoffe ihr habt Geduld mit mir und könnt euch mit der Idee vielleicht anfreunden, ohne dass man hier ein Wettrennen veranstalten muss oder sich in der Diskussion gegenseitig vergrault.
--JohannKlasek 23:28, 6. Feb. 2010 (CET)
Was JohannKlasek (wer immer sich dahinter verbirgt) da sagt, ist vollkommen in Ordnung. Seine Artikel sind wohldurchdacht, gut aufgebaut, treffend formuliert und sinnerfüllt. Bin gespannt, was er unter "andere wesentliche, zentrale Datenstrukturen" zusammenfasst. Will mich gerne an sowas beteiligen... --GoDot 10:34, 7. Feb. 2010 (CET)