AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Kompilierender Matheparser
Thema durchsuchen
Ansicht
Themen-Optionen

Kompilierender Matheparser

Ein Thema von Dax · begonnen am 26. Mai 2005 · letzter Beitrag vom 24. Aug 2006
Antwort Antwort
Seite 12 von 14   « Erste     2101112 1314      
Dax
Huhu DP!

Ich hab (mal wieder ) einen Matheparser geschrieben, aber diesmal einen besonderen. Mit diesem kann man Ausdrücke nicht nur Parsen, sondern auch noch kompilieren (Habs mal duchgetestet, ist schneller als Delphieigene Kompilate)

Ich stells einfach mal so hier rein, zum Doks-schreiben ist es einfach zu.. heiß.. und das Interface erklärt sich eh fast von selbst, und mit den Comments in den Units und den Units selbst kommt man auch gut über die Runden. Hoffe ich

read you,
Dax

[edit] da waren ein paar Fehler, verzeiht [/edit]
nocheinedit: Wieder ein paar Fehler ausgebügelt
Angehängte Dateien
Dateityp: zip excqparser_207.zip (16,1 KB, 523x aufgerufen)
Dateityp: zip realdemo_442.zip (11,1 KB, 398x aufgerufen)
Dateityp: zip ecqpdemo-exe_649.zip (244,6 KB, 483x aufgerufen)
 
Dax
 
#111
  Alt 13. Jun 2005, 18:36
So, die Memory Leaks sind alle ausgebügelt Musste beim Assemblieren leider auf Strings umsteigen..

Na ja, viel Spass mit der neuen, verbesserten Version

Edit: Ein kleines Problem mit der Assemblage ist jetzt auch behoben
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH
 
#112
  Alt 14. Jun 2005, 05:36
@Dax,

inwieweit kann man den benutzten Datentyp der Berechnungen verändern ? Anders gefragt: kann man deinen Parser unabhängig vom Datentypen wie zb. Double machen ?
Hintergrund meiner Fragen ist es das ich einen solchen Parser suche der zb. mit meinen supergroßen Integern arbeiten kann.

Gruß Hagen
  Mit Zitat antworten Zitat
Dax
 
#113
  Alt 14. Jun 2005, 13:38
Klar, der Parser kann rein theoretisch sogar mit Pointern rechen Alles, was dazu anzupassen wäre, sind ECQP_Def.TFloat und eben die Berechnungsroutinen in der Unit ExCQPreDef (ich hoff die Namen stimmen )

Darüber hinaus ist wirklich nichts nötig, da die Variablen von einer Klasseninstanz beherbergt werden. Klasseinstanzen sind ja bekanntlich Pointer, und nur diese Pointer werden auf dem Eval-Stack rumgeschoben, was an und für sich schon einen enormen Geschwindigkeitsvorteil bringt. Ich hätte nie damit gerechnet, das jemand den Parser für deine Riesenzahlen modifizieren wöllte, aber dem steht nichts im Wege

read you,
Dax
  Mit Zitat antworten Zitat
drstar

 
Delphi 6 Personal
 
#114
  Alt 17. Aug 2005, 17:31
Hallo, Leutz! Bin grad dabei, ein umfangreiches Matheprogramm mit Formeleditor etc. zusammenzubasteln, da kommen mir diese Codeschnipsel wie gerufen. Werd mal sehen, ob ich sie problemlos in mein Matheprogramm implementieren kann. Sieht aber auf jeden Fall seh interessant aus, werd in Kürze mein Projekt vorstellen (hoffe,daß es jetzt deutlich schneller fertig wird...).
  Mit Zitat antworten Zitat
Benutzerbild von DP @ Home
DP @ Home
 
#115
  Alt 5. Sep 2005, 12:14
Hi,

ich wollte nur mal einen Fehler bemerken, der mir gerade unterkam. Evtl. ist der bekannt, aber alles hier zu lesen... Nun ja

Wenn ich als Formel (Beispiel aus dem 4. Beitrag) folgende eingebe: 2+4, dann rechnet er fein. Wenn ich 2+A eingebe, dann rechnet er auch fein, wenn ich 2+4+4 eingebe, macht er mich weiterhin glücklich. Gebe ich aber 2+A+4 ein, dann wirft er mir eine AV entgegen :-/



P.S: Diese Fehler kommen im Modus smRM, im Modus smVM geht es gut
  Mit Zitat antworten Zitat
Benutzerbild von DP @ Home
DP @ Home
 
#116
  Alt 15. Sep 2005, 07:01
Zitat von DP @ Home:
ich wollte nur mal einen Fehler bemerken, der mir gerade unterkam. Evtl. ist der bekannt, aber alles hier zu lesen... Nun ja
Hm... ist das Projekt eingestellt oder wird es doch noch ein Update geben
  Mit Zitat antworten Zitat
Dax
 
#117
  Alt 28. Nov 2005, 18:28
Ohhh sorry Leute, hab den Thread vollkommen aus den Augen verloren.. Das Projekt ist natürlich nicht (vollkommen *hust*) eingestellt, aber wenn ich mir meinen Code so ansehe.. Da ist sehr viel Optimierungspotenzial. Vor allem beim smRM.. Und ne Menge Fehler wies aussieht auch.

Ich glaube ich werd das Ding mal fast komplett neu schreiben, diesmal aber ein wenig anders. Das Interface wird nach Möglichkeiten so gleich bleiben wies nur geht, und das ganze sollte wirklich schneller sein

Wenn niemand Einspruch erhebt natürlich, ansonsten behalt ich diese Sourcen bei


*thread vorsichtshalber markier*
  Mit Zitat antworten Zitat
Benutzerbild von sniper_w
sniper_w

 
Delphi 6 Enterprise
 
#118
  Alt 28. Nov 2005, 19:53
Zitat:
Wenn niemand Einspruch erhebt natürlich
Einspruch, Euer...
Katura Haris
  Mit Zitat antworten Zitat
Dax
 
#119
  Alt 28. Nov 2005, 20:22
Einspruch abgewiesen

Aber mal ernsthaft: Was spricht denn dagegen, intern alles zumindest ein wenig neu zu schreiben und damit vielleicht stabiler? Nur aus Interesse
  Mit Zitat antworten Zitat
Daniel G
 
#120
  Alt 28. Nov 2005, 20:26
Spontan würde ich sagen:

Nix!

Solange es nicht ein Jahr dauert...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 12 von 14   « Erste     2101112 1314      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz