Zeilennummern in Basic - Wie kann man nur auf so ne dumme Idee kommen?



  • nachfrager schrieb:

    macht es eigentlich einen unterschied für den compiler:

    10 ... // Leerzeichen
    20    .... // Tabulator
    

    ???

    gwbasic.exe ist nur ein Interpreter und dem ist es egal.

    Von MS gab's aber einen Compiler, der AFAIK den MBasic Dialekt bis auf ein paar Ausnahmen (siehe WP Artikel) verstand:
    http://de.wikipedia.org/wiki/BASCOM_(Microsoft)

    Da es dem Interpreter aber gleichgültig ist, würde ich mal davon ausgehen, dass es dem BASCOM Compiler auch egal ist.



  • Basic war damals ein Traum. Du hast den Computer eingeschaltet und konntest sofort lauffähige Programme schreiben und das konnte selbst Otto Karl von der Tankstelle nach ein wenig Lesen im Handbuch des Computers. So weit ist man heute nicht. Das war damals schon toll auf dem C64 und viel einfacher als heute, jedenfalls für die DAUs.



  • B4ndit schrieb:

    Basic war damals ein Traum. Du hast den Computer eingeschaltet und konntest sofort lauffähige Programme schreiben und das konnte selbst Otto Karl von der Tankstelle nach ein wenig Lesen im Handbuch des Computers. So weit ist man heute nicht. Das war damals schon toll auf dem C64 und viel einfacher als heute, jedenfalls für die DAUs.

    Also Computer einschalten und sofort lauffähige Programme schreiben zu können hat aber nichts mit BASIC als Sprache zu tun, sondern nur mit der Tatsache, das die Computerhersteller BASIC ins ROM gepackt haben.

    Das gleiche hätte man sicherlich auch mit Pascal realisieren können.



  • Ja, da hast du Recht.

    Die Unannehmlichkeiten mit den Zeilennummer in Basic war für mich nie wirklich ein großes Problem und zur Not konnte man auch neu Nummerieren lassen. Früher waren andere Sachen, wie zuwenig Speicher oder die geringe Laufzeitgeschwindigkeit, ein weit auch größeres Problem. Das mit den Zeilennummer kannte man auch gar nicht anders, außer man hat gleich in Assembler programmiert. Aber auch das war von jedem auch selbst zu meistern gewesen im Gegensatz zu heute.

    Die Leute haben sich im Selbststudium soviel beigebracht dass sie teilweise als One-Man-Show alles selbst gemacht haben und das in noch akzeptabler Zeit. Die Komplexität der Hard- und Software war für jeden überschaubar. Klar geht das heute nicht mehr, aber eine schöne Zeit war es trotzdem und die Leute von damals zucken nicht gleich mit den Schulter wenn sie mal etwas Assembler oder eine Konsole sehen.

    Kurz, die Zeilennummern waren nie ein große Problem in Basic. Jedenfalls für mich nicht und nur für mich kann ich sprechen.



  • Netter Trollversuch. Die Zeilennummern haben sicher ihren Sinn gehabt damals, aber ich lass mich bestimmt nicht dazu einspannen, hier jemandem, der BASIC Sch***e findet zu widersprechen 😃



  • es gab ja keinen text-editor, sondern nur eine eingabezeile und den list-befehl.
    mit zeiulennummern hat man verraten, welche zeile eingefügt, überschrieben oder gelöscht werden sollte.



  • B4ndit schrieb:

    Die Unannehmlichkeiten mit den Zeilennummer in Basic war für mich nie wirklich ein großes Problem und zur Not konnte man auch neu Nummerieren lassen. Früher waren andere Sachen, wie zuwenig Speicher oder die geringe Laufzeitgeschwindigkeit, ein weit auch größeres Problem.

    Wenn ein Programm 10000 Zeilen Code hat, dann bedeutet das,
    (9*(2+1))+(90*(3+1))+(900*(4+1))+(9000*(5+1))+(1*6+1) = 58894 Byte nur
    für die Zeilennummern und dem pro Zeilennummer folgenden Leerzeichen belegt werden.

    57 Kybte die man sicherlich für wichtigeres hätte verwenden können, als für Zeilennummern.

    Sie sind also auch Platzverschwendung, bei dem ohnehin schon knappen Speicher.

    volkard schrieb:

    es gab ja keinen text-editor, sondern nur eine eingabezeile und den list-befehl.
    mit zeiulennummern hat man verraten, welche zeile eingefügt, überschrieben oder gelöscht werden sollte.

    Es gab zu der Zeit schon speichersparende Editoren wie vi, die konnten auch Zeilenweise Text Editieren und trotzdem mußte man nicht die Nummern in den Quellcode fest einkodieren. Letzteres ist schlimmer als Layouttags in HTML Code.

    Man hätte also auch daran schon gut getan, wenn man die Daten von der Visualisierung getrennt hätte.



  • BASIC = MIST schrieb:

    B4ndit schrieb:

    Die Unannehmlichkeiten mit den Zeilennummer in Basic war für mich nie wirklich ein großes Problem und zur Not konnte man auch neu Nummerieren lassen. Früher waren andere Sachen, wie zuwenig Speicher oder die geringe Laufzeitgeschwindigkeit, ein weit auch größeres Problem.

    Wenn ein Programm 10000 Zeilen Code hat, dann bedeutet das,
    (9*(2+1))+(90*(3+1))+(900*(4+1))+(9000*(5+1))+(1*6+1) = 58894 Byte nur
    für die Zeilennummern und dem pro Zeilennummer folgenden Leerzeichen belegt werden.

    57 Kybte die man sicherlich für wichtigeres hätte verwenden können, als für Zeilennummern.

    Ganz falsch. Pro Zeilennummer zwei Bytes. Außerdem pro Basic-Befel oder -Funktion ein Byte. Das wird umgesetzt gleich beim Eingeben.

    BASIC = MIST schrieb:

    volkard schrieb:

    es gab ja keinen text-editor, sondern nur eine eingabezeile und den list-befehl.
    mit zeiulennummern hat man verraten, welche zeile eingefügt, überschrieben oder gelöscht werden sollte.

    Es gab zu der Zeit schon speichersparende Editoren wie vi, die konnten auch Zeilenweise Text Editieren und trotzdem mußte man nicht die Nummern in den Quellcode fest einkodieren. Letzteres ist schlimmer als Layouttags in HTML Code.

    Leider hast Du Null Ahnung.



  • volkard schrieb:

    Wenn ein Programm 10000 Zeilen Code hat, dann bedeutet das,
    (9*(2+1))+(90*(3+1))+(900*(4+1))+(9000*(5+1))+(1*6+1) = 58894 Byte nur
    für die Zeilennummern und dem pro Zeilennummer folgenden Leerzeichen belegt werden.
    57 Kybte die man sicherlich für wichtigeres hätte verwenden können, als für Zeilennummern.

    Ganz falsch. Pro Zeilennummer zwei Bytes. Außerdem pro Basic-Befel oder -Funktion ein Byte. Das wird umgesetzt gleich beim Eingeben.
    [/QUOTE]
    Klar und die Zahl für die Zeilennummer 2^16 + 1 bildest du wie ab?

    BASIC = MIST schrieb:

    volkard schrieb:

    es gab ja keinen text-editor, sondern nur eine eingabezeile und den list-befehl.
    mit zeiulennummern hat man verraten, welche zeile eingefügt, überschrieben oder gelöscht werden sollte.

    Es gab zu der Zeit schon speichersparende Editoren wie vi, die konnten auch Zeilenweise Text Editieren und trotzdem mußte man nicht die Nummern in den Quellcode fest einkodieren. Letzteres ist schlimmer als Layouttags in HTML Code.

    Leider hast Du Null Ahnung.

    vi kennst du nicht?

    Faszinierend, habe ich hier also doch jemanden gefunden der Basic verteidigt und mir widerspricht. 😃



  • BASIC = MIST schrieb:

    Klar und die Zahl für die Zeilennummer 2^16 + 1 bildest du wie ab?

    Gar nicht. Bei 64k Hauttspeicher wird man sicher kein Programm basteln müssen, das mehr als 64k Zeilen Code hat.

    BASIC = MIST schrieb:

    vi kennst du nicht?

    Doch. Nur hätte ein Texteditor wenig gebracht.

    BASIC = MIST schrieb:

    Faszinierend, habe ich hier also doch jemanden gefunden der Basic verteidigt und mir widerspricht. 😃

    Wo stand, daß ich Basic verteidige? Wenn Du fachliche Fragen hast, als her damit.



  • Es gab zu der Zeit schon speichersparende Editoren wie vi,

    Hier informieren:
    http://de.wikipedia.org/wiki/BASIC#Geschichte
    http://de.wikipedia.org/wiki/Vi
    Vielen Dank, gerne wieder.



  • Bashar schrieb:

    Es gab zu der Zeit schon speichersparende Editoren wie vi,

    Hier informieren:
    http://de.wikipedia.org/wiki/BASIC#Geschichte
    http://de.wikipedia.org/wiki/Vi
    Vielen Dank, gerne wieder.

    Passt doch!

    Vi erschien vor den Heimcomputern und dem Apple 1, das genügt völlig.
    Davor war Basic kein Thema, weil Smalltalk, Fortran & Co dominierten.



  • BASIC = MIST schrieb:

    Vi erschien vor den Heimcomputern und dem Apple 1, das genügt völlig.

    Nö:
    http://de.wikipedia.org/wiki/BASIC#Geschichte



  • Bashar schrieb:

    BASIC = MIST schrieb:

    Vi erschien vor den Heimcomputern und dem Apple 1, das genügt völlig.

    Nö:
    http://de.wikipedia.org/wiki/BASIC#Geschichte

    Nochmal lesen:

    Vi erschien vor den Heimcomputern und dem Apple 1, das genügt völlig.



  • Endlosschleife 🙂



  • Ist ja schon lange her mit Basic und den Zeilennummern.

    Die ersten Basic, weiss schon gar nicht mehr ob Interpreter oder Compiler, waren noch mit Zeilennummern. Etwa Mitte der siebziger Jahre liefen die ersten Basic-Programme auch ohne Zeilennummern. GWBasic war ja eines der letzten, die noch auf Zeilennummern angewiesen waren. Ab etwa 1990 konnte man auch Basic fast durchgängig bei damals aktuellen Programmen ohne Zeilennummern schreiben. Ein Teil der Interpreter oder Compiler in der Übergangszeit akzeptierte Quelltexte mit oder ohne Zeilennummern.

    Und die Speicher waren damals klein und teuer. Da waren selbst 64kB schon einiges. Es ging auch kleiner. Keine Ahnung ob du da mit dem Cassettenlaufwerk grosse Programme schreiben wolltest? Festplatten kosteten soviel wie ein PKW und die 8" Diskettenlaufwerke hatte auch nicht jeder und ganz so viel passte da auch nicht drauf. 😉

    Gibt es einen Anlass das alte Zeug wieder aufzufrischen?

    MfG f.-th.



  • Bashar schrieb:

    Endlosschleife 🙂

    IF user = "Bashar" GOTO  21:52:21 24.04.2013
    

    😃



  • f.-th. schrieb:

    Ist ja schon lange her mit Basic und den Zeilennummern.

    Die ersten Basic, weiss schon gar nicht mehr ob Interpreter oder Compiler, waren noch mit Zeilennummern.

    Auf den Heimcomputern waren das alles Interpreter und GW-BASIC selbst war als Softwarelösung auch nur ein Interpreter.

    Etwa Mitte der siebziger Jahre liefen die ersten Basic-Programme auch ohne Zeilennummern. GWBasic war ja eines der letzten, die noch auf Zeilennummern angewiesen waren. Ab etwa 1990 konnte man auch Basic fast durchgängig bei damals aktuellen Programmen ohne Zeilennummern schreiben.

    Ja, GW-Basic wurde ab MS-DOS 5.0 praktisch von QBasic abgelöst.
    Das war auch nur ein Interpreter, aber schon mit wesentlich komfortanbleren Editor.

    Wer einen Compiler haben wollte, der mußte QuickBasic kaufen.

    Ein Teil der Interpreter oder Compiler in der Übergangszeit akzeptierte Quelltexte mit oder ohne Zeilennummern.

    Also AFAIK lief mein GW-Basic Code nie unter QBasic.

    Und die Speicher waren damals klein und teuer. Da waren selbst 64kB schon einiges. Es ging auch kleiner. Keine Ahnung ob du da mit dem Cassettenlaufwerk grosse Programme schreiben wolltest?

    Genaugenommen habe ich mit GW-Basic erst 1991 angefangen und es ein paar Wochen später wieder eingestellt, weil ich gemerkt habe, dass ich mit dem alten Klump nicht das realisieren können werde, was ich realisieren wollte.

    Auf GW-Basic viel die Wahl, weil es eigentlich keine Wahl war.
    GW-Basic war halt verfügbar, die anderen Sprachen nicht.

    Und als ich dann endlich MS-DOS 6.0 hatte, hätte ich QBasic lernen können (das gab's ab MS-DOS 5.0 und war ohne Zeilennummern), aber das wollte ich dann auch nicht mehr, weil ich von Basic völlig die Nase voll hatte.

    Meine wieder alternativlose Wahl viel dann etwas später auf Turbo Pascal.
    C++ Compiler waren damals leider zu teuer und manche IDEs kamen auf 20 Disketten
    und das wäre mir dann eine zu große Platzbelegung auf meiner damals kleinen Festplatte gewesen.
    Also blieb ich bei TP.

    Gibt es einen Anlass das alte Zeug wieder aufzufrischen?

    Ich habe erst gestern mit dem alten Interpretier wieder etwas herumgespielt.
    Nen Anlass gab's eigentlich keinen, ich wollte nur wissen ob ich es noch kann. 😃

    Und dann bin ich halt auf den Murks gestoßen.


  • Mod

    BASIC = MIST schrieb:

    IF user = "Bashar" GOTO  21:52:21 24.04.2013
    

    😃

    Ohne Zeilennummer wird der Befehl aber bloß einmalig sofort vom Interpreter ausgeführt.

    *Duck und Weg*



  • Über gwbasic zu reden ist ja schon fast wie Babyfotos ankucken 😃

    Hat damals alles astrein funktioniert, aber heute würd ich mir das auch nichtmehr antun wollen 🙂


Anmelden zum Antworten