AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Fehlende Sprachfeatures

Ein Thema von Stevie · begonnen am 24. Sep 2012 · letzter Beitrag vom 17. Jan 2014
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.019 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

Fehlende Sprachfeatures

  Alt 24. Sep 2012, 19:28
Da ja seit dem Release von Lazarus 1.0 ein regelrechter Hype losgebrochen ist, stell ich mir die Frage, inwieweit an den gegenüber Delphi (2010 oder neuer) fehlenden Sprachfeatures gearbeitet wird.

Gibt es da einen derzeitigen Stand (wenn ich mich nicht irre, gibt es ja einige Member hier, die diesbzgl aktiv sind)?

Speziell für mich interessant wären Enhanced RTTI und anonyme Methoden.

Zu enhanced RTTI: wäre jetzt schon möglich, eine gewisse Kompatibilität zu erreichen, was die API angeht und sofern benötigte type information vorhanden ist (glaube aber, die ist noch auf dem Stand von Delphi 7? sprich nur published member).
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (25. Sep 2012 um 07:51 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.088 Beiträge
 
Delphi 12 Athens
 
#2

AW: Fehlende Sprachfeatures

  Alt 24. Sep 2012, 20:01
Die alte RTTI geht nur auf public/publisches Fields/Methodes.
In der neuen erweiterten RTTI sind (falls man es nicht explizit ausschaltet) sogar "private"- und "strict private"-Dinge enthalten.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (25. Sep 2012 um 01:47 Uhr) Grund: siehe nachfolgende Antwort/Frage
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.019 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#3

AW: Fehlende Sprachfeatures

  Alt 24. Sep 2012, 20:24
Die alte RTTI geht nur auf public/publisches Fields/Methodes.
In der neuen erweiterten RTTI sind (falls man es nicht explizit ausschaltet) sogar "private"- und "strict private"-Dinge enthalten.
Du hast gesehen, in welchem Unterforum wir sind, oder?
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.088 Beiträge
 
Delphi 12 Athens
 
#4

AW: Fehlende Sprachfeatures

  Alt 25. Sep 2012, 01:46
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

AW: Fehlende Sprachfeatures

  Alt 25. Sep 2012, 09:12
Wobei ich sagen muss, dass mich der Text oben auch irritiert hat und ich deinen Post 3x lesen musste bevor ich gemerkt habe dass es hier nicht um Delphi geht. Mit dem Stichwort "Freepascal" im Titel oder in deinem Ausgangspost gäbe es da wahrscheinlich nicht so viel Verwirrung
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.088 Beiträge
 
Delphi 12 Athens
 
#6

AW: Fehlende Sprachfeatures

  Alt 25. Sep 2012, 09:18
Vielleicht können wir Danel ja dazu überreden, ein paar Unterforen irgendwie hervorzuheben.

Wie wäre es mit Pink als Hintergrundfarbe beim FreePascal?
(oder einem rötlichem "(FreePascal)" hinter der Überschrift jedes Posts)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von JamesTKirk
JamesTKirk

Registriert seit: 9. Sep 2004
Ort: München
604 Beiträge
 
FreePascal / Lazarus
 
#7

AW: Fehlende Sprachfeatures

  Alt 25. Sep 2012, 09:55
Da ja seit dem Release von Lazarus 1.0 ein regelrechter Hype losgebrochen ist, stell ich mir die Frage, inwieweit an den gegenüber Delphi (2010 oder neuer) fehlenden Sprachfeatures gearbeitet wird.

Gibt es da einen derzeitigen Stand (wenn ich mich nicht irre, gibt es ja einige Member hier, die diesbzgl aktiv sind)?
Damit bin wohl (u.a.) ich gemeint.

Zitat von Stevie:
Speziell für mich interessant wären Enhanced RTTI und anonyme Methoden.
Aaaalllso. *Ärmel hochkrämpelt*

Bei Enhanced RTTI und anonymen Methoden gibt es noch nichts im Trunk (also der Entwicklungsversion).

Vor einiger Zeit hat jedoch jemand drittes damit begonnen anonyme Methoden in einem Branch zu implementieren, dessen Aktivitäten sind jedoch wieder eingeschlafen. Vielleicht muss ich ihn mal fragen, ob er noch weitermachen möchte und wenn nicht muss ich selbst mal schauen das fertig zu bekommen.

An der Enhanced RTTI arbeitet zur Zeit noch niemand, wäre jedoch ne Idee, dass ich mal da dran arbeite, sobald ich mit Generics und Helpern halbwegs fertig bin.

Was mich gleich zu weiteren Features bringt:
  • is und as für Interfaces werden bereits seit mindestens 2.6.0 unterstützt
  • ein weiterer FPC Entwickler arbeitet derzeit an Attributen
  • in 2.7.1 hat sich (dank mir ) vieles in Sachen Generics und deren Kompatibilität zu Delphi getan, einige Sachen fehlen jedoch noch, an denen ich in nächster Zukunft arbeiten werde: Generic Constraints, Generic Functions/Methods (ja, FPC wird auch globale generische Funktionen unterstützen), Nested Generics, Nested Specializations (z.B. TMyList<TMyContainer<String>>), bessere Unterstützung für Inline Specializations (mich grauts bereits davor...)
  • class und record helper sind (in 2.6.0) auf dem Stand von Delphi XE2 (da sich bis dahin nicht allzuviel getan hat). Type helper (also die aus Delphi XE3) sind von mir geplant (ich habe bereits eine Proof of Concept Implementierung am Laufen)
  • Advanced records sind in 2.6.0 implementiert mit der Ausnahme von Konstruktoren
  • der Codepage Aware AnsiString ist in 2.7.1 vorhanden, String wurde jedoch noch nicht nach UnicodeString geändert (es existiert jedoch ein Modeswitch, mit dem man das machen kann, aber noch ist dessen Verwendung nicht wirklich empfehlenswert...)
  • delay; wird auch nicht unterstützt (ich weiß aber auch niemanden, der aktiv daran arbeitet oder es sich wünscht)

Das müsste das insoweit zusammen fassen.

Zitat von Stevie:
Zu enhanced RTTI: wäre jetzt schon möglich, eine gewisse Kompatibilität zu erreichen, was die API angeht und sofern benötigte type information vorhanden ist (glaube aber, die ist noch auf dem Stand von Delphi 7? sprich nur published member).
Die Unit RTTI hat das Problem, dass sie auch teilweise auf Generic Methods setzt, welche ich wie geschrieben jedoch erst noch implementieren muss. Außerdem dürfte die Implementierung der RTTI Daten an sich nicht sooooo schwierig sein. Es muss halt nur mal einer machen.

Gruß,
Sven
Sven
[Free Pascal Compiler Entwickler]
this post is printed on 100% recycled electrons
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.019 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#8

AW: Fehlende Sprachfeatures

  Alt 25. Sep 2012, 10:32
Danke für deine ausführliche Erläuterungen zum derzeitigen Stand.

Speziell zur RTTI stelle ich mir dann die Frage, wie es mit den Stellen aussehen wird, bei denen man um asm nicht mehr herum kommt bzgl der verschiedenen Targets.

Eine weitere Sache, die für mich interessant ist (im Hinblick auf eine FPC kompatible DSharp Version), inwieweit die API dann kompatibel sein wird. Könnt ihr euch die bei Delphi abschauen (Lizenz?) oder wie läuft das dann? Was ich auf keinen Fall machen werde, ist tonnenweise ifdefs in meinem Code verstreuen, um FPC zu unterstützen.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von JamesTKirk
JamesTKirk

Registriert seit: 9. Sep 2004
Ort: München
604 Beiträge
 
FreePascal / Lazarus
 
#9

AW: Fehlende Sprachfeatures

  Alt 25. Sep 2012, 11:22
Speziell zur RTTI stelle ich mir dann die Frage, wie es mit den Stellen aussehen wird, bei denen man um asm nicht mehr herum kommt bzgl der verschiedenen Targets.
Wie genau meinst du das? Die RTTI Funktionalität besteht doch im Endeffekt nur aus High Level Funktionen/Methoden? Intern wird natürlich - falls nötig - für die Plattform passender Assemblercode (zum Beispiel aller Wahrscheinlichkeit nach für RTTI.Invoke ) verwendet, aber das sollte den normalen Benutzer nicht wirklich tangieren...

Zitat von Stevie:
Eine weitere Sache, die für mich interessant ist (im Hinblick auf eine FPC kompatible DSharp Version), inwieweit die API dann kompatibel sein wird. Könnt ihr euch die bei Delphi abschauen (Lizenz?) oder wie läuft das dann? Was ich auf keinen Fall machen werde, ist tonnenweise ifdefs in meinem Code verstreuen, um FPC zu unterstützen.
Wir orientieren uns was Schnittstellen angeht an der Hilfe von Delphi (zum Beispiel die Delphi Referenz im Wiki von Embarcadero). Hiermit stellen wir sicher, dass einerseits so gut wie möglich Delphi Kompatibilität besteht und wir andererseits nicht Embarcaderos Copyright verletzen (Schnittstellen allein fallen ja nicht unters Copyright). Ich selbst verwende zum Beispiel genau aus diesem Grund die XE Starter für Tests, damit ich nicht in die Verführung komme in die Implementierung der RTL zu schauen. Die Korrektheit der Implementierung wird dann durch Tests sichergestellt, welche sowohl unter Delphi als auch unter FPC kompilieren/laufen können. Die Kompatibilät zu Delphi wird nur in Ausnahmefällen (zum Beispiel historische Gründe oder Multiplattformfähigkeit) gebrochen.

Gruß,
Sven
Sven
[Free Pascal Compiler Entwickler]
this post is printed on 100% recycled electrons
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.019 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#10

AW: Fehlende Sprachfeatures

  Alt 25. Sep 2012, 13:18
Wie genau meinst du das? Die RTTI Funktionalität besteht doch im Endeffekt nur aus High Level Funktionen/Methoden? Intern wird natürlich - falls nötig - für die Plattform passender Assemblercode (zum Beispiel aller Wahrscheinlichkeit nach für RTTI.Invoke ) verwendet, aber das sollte den normalen Benutzer nicht wirklich tangieren...
Fraglich ist halt, ob gleich jede Plattform supported wird. Außerdem gibt es nach wie vor einige größere Unterschiede, wenn man sich in solchen Bereichen wie RTTI bewegt (hab z.B. nicht die ObjAuto.pas in FPC gefunden).
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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:39 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