Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Enttäuscht Kategorie: Verschiedenes (von Patrick, Homepage - 1.07.2005 15:34)
 Als Antwort auf Re: Enttäuscht von Stefan Tappertzhofen - 1.07.2005 14:17
> Vorweg: Syntaxfehlererkennung und Fehlerbehandlung bei Compilern ist immer so eine Sache für sich.
>BASIC++ ist nicht zwingend modular, da es sich an CCBasic anlehnt. Aus diesem Grund kann die
>Kompilierung auch nicht modular sein. Der Compiler meldet daher ein fehlendes END IF, wenn er auch allen
>Grund dazu hat (z.B. wenn er bis zum Programmende auf ein END IF wartet ... woher soll er wissen, dass Du
>schon vorher ein END IF schreiben wolltest). Dieses Problem findet sich auch in anderen
>Programmiersprachen wieder. In C++ sucht man sich bisweilen dumm und dämlich, bis man erkennt, dass ein
>Semikolon fehlt (oder wo es fehlt).


Das ist aber nicht wahr, es hat nichts mit "modular" zu tun und andere CCBasic Compiler wie mikrocontrollerBASIC finden sehr wohl heraus, wo genau etwas fehlt. Beispiel:

Do
 If True Then

Loop

Print "a"

Hier ist doch ganz klar, dass am Loop ein End If fehlt.

> Die Sache mit den Rückgabeparameter (Byte 1 + 2) finde ich selbst nicht so schön. Allerdings kann man
>diesen Weg nicht umgehen will man Rückgabewerte auf der C-Control M Unit 2/Micro haben.

Doch, es geht auch anders - allerdings können wir das nicht beeinflussten. Die alten C-Controls haben sehr gut mit Rückgabewerten auf dem Stack funktioniert. Geschachtelte Funktionen mit Rückgabewerten auf einem Stack gehören zu jeder guten Programmiersprache, die kein Assembler ist. Man müsste das Betriebssystem der neuen C-Controls also wieder so ändern, dass sie von Rückgabewerten auf dem Stack nicht durcheinander gerät.
Wir haben das auf den ATmega basierten B-Controls sehr gut hinbekommen, es gibt sogar echte lokale Variablen, Datenstrukturen, Strings, EEPROM Variablen, Arrays... Also, das ist alles kein Problem, solange man will - und - den Leuten nicht ständig einredet, "es ist doch nur so ein kleiner Mikrocontroller"

Patrick

Meine Homepage: http://www.nettypes.de/mbasic

 Antwort schreiben

Bisherige Antworten:

Re: Enttäuscht (von Stefan Tappertzhofen - 1.07.2005 15:40)