Interpreter kleinstmöglich im Cortex

Gast #3775480
Hallo!
ich spiele mit dem Gedanken einem Messgerät an dm ich grade bastle über 
die bereits implementierte Consolenoberfläche noch eine 
benutzerprogrammierbare Scriptschnittstelle anzufügen, damit sich der 
ambitionierte Benutzer seine eigenen Algorithmen zusamenbasteln kann um 
z.B. einen Alarm auszulösen oder einen neuen Messwert abzuleiten.
Mal eine generelle Frage, gibt es sowas:
- Kleiner Scriptinterpreter in c geschrieben, egal welche Sprache.
- Kann mit float rechnen und hat auch einige mathematische Bibliotheken
- Gespeichertes Program besonders klein, RAM-schonend. Anweisungen 
möglicherweise abgekürzt oder so.
- verwendet keinen Heap (geht das überhaupt?!)
- Bietet eine Schnittstelle zu internen Variablen zb einfach so
1
int RunScript(int input_a, int input_b)
Nur mal der Interesse halber.
Guten Morgen.
M.
Gast #3775600
Alternativ könnte man sich mit yacc oder ähnlichen Tools einen eigenen 
kleinen Parser für eine eigene simple Sprache erstellen, die Programme 
erstellen einen passenden Parser in c.
Gast #3775610
Warum muss das denn ein Script sein? Man könnte sich auch ein nettes API 
in C(++) bauen und dem User eine einfache Programmierumgebung geben. 
Mittels ein bisschen Linkerscriptmagic sorgt man dafür dass das 
User-Programm nachgeladen wird und auf die Funktionen des Hauptprogramms 
zugreifen kann. Mit der MPU kann man dafür sorgen dass es das 
Hauptprogramm nicht beeinträchtigen kann.
Gast #3775630
Dr. Sommer schrieb:
> Mittels ein bisschen Linkerscriptmagic sorgt man dafür dass das
> User-Programm nachgeladen wird

Das geht systembedingt nicht da die einzige Userschnittstelle die 
textconsole ist (und sein soll).
Wisst ihr ob irgendeiner der genannten lösungen ohne heap auskommt?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.