BlitzMax - Vorschläge & Co
Übersicht

Gehe zu Seite 1, 2, 3, 4, 5 Weiter
![]() |
hamZtaAdministratorBetreff: BlitzMax - Vorschläge & Co |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo Leute!
BlitzMax ist inzwischen in der Version 1.37 erhältlich und wird auch hier im Forum immer beliebter. Meiner Meinung nach programmiert sichs damit ziemlich nett und problemlos. Aber dennoch gibt's hier und da ein paar Ecken an die man früher oder später stößt. Da ich Einblick in das interne Developer-Forum auf blitzbasic.com habe kriege ich ein bisschen mit, woran Mark & Co gerade werkeln. Und mir scheint, dass BRL von neuer Idee zu neuer Idee springt, ohne dabei alte Baustellen zu beachten. Deshalb hatte ich die Idee, im Namen der deutschen BlitzBasic-Community ein paar Vorschläge/Ideen/Fehler zu sammeln, diese zu übersetzen und Mark zukommen zu lassen. Ich kann nicht versprechen, dass er sich das Ganze ansieht, aber vielleicht gefällt ihm der eine oder andere Punkt. Wenn sich hier ein paar Punkte angesammelt haben werde ich alles übersetzen und BRL zukommen lassen (und ein bisschen lästig sein, damit ich wenigstens eine Antwort von ihm bekomme ![]() Allerdings brauch ich dazu eure Hilfe! Das richtet sich an alle, die BlitzMax besitzen und damit arbeiten: Postet hier (oder schickt mir per PN) was euch an BlitzMax stört, was ihr gerne drin hättet oder andere gute Idee zu der Sprache. Bitte versucht euer Anliegen so klar wie möglich zu formulieren, damit weniger Fragen aufkommen. Natürlich ist hier auch Platz zum Diskutieren, allerdings würde ich euch bitten beim Thema zu bleiben und Ausschweifungen so gut wie möglich zu unterlassen. Vielen Dank, hamZta |
||
Blog. |
![]() |
hamZtaAdministrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Allgemein
Kein Installer unter Windows BMax sollte unter Windows auch als Version ohne Installer angeboten werden (BtbN) Updates als Patches Updates sollten als Patches installierbar sein, keine vollständige Deinstallation/Neuinstallation verlangen (BtbN) Verbesserte Dokumentation Verbesserte Dokumentation zu Modulen & Co. (Schnuff) Transparenterer Entwicklungsprozess Es wäre sicher für die ganze Community interessant woran gerade gearbeitet wird, wann neue Updates kommen, was diese beinhalten werden und welche Features geplant sind. (hamZta) BlitzMax-Core Echte 64bit-Anwendungen BlitzMax sollte in der Lage sein, echte 64bit-Anwendungen zu kompilieren. Vor allem unter Linux ist es recht nervig, alle benötigten 32bit Libraries nachzuinstallieren um seine Programme kompilieren zu können. (hamZta) bcc als OpenSource bcc sollte, wie die anderen Tools auch OpenSource veröffentlicht werden (BtbN) Parameter bei Konstruktoren Konstruktoren sollen, wie in den meisten anderen gänigen OOP-fähigen Sprachen Parameter unterstützen (BtbN) Richtige Funktions-/Methodenüberladung Richtige Überladung mit verschiedenen Parametern sollte unterstützt werden. (BtbN) cl-Compiler unter Windows benutzen bmk sollte als Option anbieten, unter Windows den VS cl-Compiler anstelle von gcc zu verwenden. Dadurch würde auch die (nervige) Installation von MinGW entfallen. (BtbN) Generics wie in Java/C# BlitzMax sollte Generics unterstützen, inklusive manuelle Implementierung der Funktion für bestimmte Datentypen. (BtbN) Support für Debugger Support für Third-Party-Debugger. (BtbN) Operator Overloading Überladen von Operatoren, wie in anderen Sprachen (zB.: C++) (Nicdel) Zirkuläre Imports Zirkuläre Imports sollten entweder erlaubt oder durch Precompiler-Statemens unterbunden werden können. (BladeRunner, Goodjee) Erweiterte Precompiler-Statements Precompiler-Statements wie ?define, ?ifdef, ?ifndef etc. sollten eingebaut werden. (FireballFlame) Eventuell auch Hilfsmittel wie __LINE__ und __FILE__, die beim Kompilieren automatisch ersetzt werden. (Schnuff) Verwendung der Object-Basismethoden z.B. Verwendung der Compare-Methode eines Objektes bei Vergleichsoperatoren. (FireballFlame) Entfernung nichtverwendeter Methoden (SendMessage). (hamZta) Information Hiding in Types Private/Public nicht nur datei- sondern auch typebezogen einführen. (FireballFlame) Bundle Flags einstellbar (OSX) Man sollte Flags in der miterstellten info.plist frei einstellen können um einen reibungslosen Ablauf mit OSX zu garantieren (d-bug) Kopieren eigener Ressourcen ins Bundle(OSX) Nach dem Kompilieren sollten vorher definierte Ressourcen ins .app-Bundle kopiert werden (d-bug) Reflection für normale Funktionen Reflection sollte nicht nur für Types sondern auch für alle Functions möglich sein. (coolo) SuperStrict als Standard SuperStrict sollte Standard sein. (Xeres) Verbessertes Standard-Audio-Modul Das Standard-Modul kann Dateien nicht streamen und ist somit für größere Sounds unbrauchbar. (Firstdeathmaker) Objekte kopieren Objekte sollten mit Hilfe einer Funktion/Methode kopiert werden können. (BladeRunner) Unsigned Integer & Long Obige Datentypen sollen das Speichern von großen Zahlen ermöglichen. (BladeRunner) MaxIDE Module Threadsafety Wenn BlitzMax schon mit Threading angeboten wird, dann sollten die beiliegenden Module auch thread-safe sein, zB.: Events, auch threadübergreifend. (BtbN) Überarbeitung einiger Module BRL.Filesystem: Arbeitet mit Integer-Handles statt Types (mpmxyz) BRL.MaxLua: Lua-State offen verfügbar oder einstellbar machen (coolo) Druckersupport Ein offizielles Modul sollte einfaches Drucken aus BlitzMax ermöglichen. (Midimaster) Offizielles 3D-Modul Neben Max2D sollte es ein offizielles 3D-Modul geben, um bei Supportfragen nicht von Drittanbietern abhängig zu sein. |
||
- Zuletzt bearbeitet von hamZta am Do, Jan 28, 2010 14:11, insgesamt 5-mal bearbeitet
![]() |
BtbN |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hier mal ein paar Punkte, die mich schon eine ganze weile stören:
Das wars eigentlich erstmal, wenn mir noch was einfällt, schreib ichs dazu. |
||
![]() |
Nicdel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das meiste hat BtbN schon gesagt, hier noch etwas von mir:
![]() ![]() |
||
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7 |
![]() |
hamZtaAdministrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nicdel hat Folgendes geschrieben:![]() Hab ich jetzt mal rausgelassen. Kann jemand bestätigen, dass das mit den BRL/PUB-Modulen nicht vernünftig möglich ist? |
||
Blog. |
![]() |
Nicdel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sound nicht unbedingt, Video allerdings schon. | ||
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7 |
![]() |
beanage.johannes |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jopp, finde beides ist nicht brauchbar, sowohl sound als auch video (bei video vieleich weils nicht vorhanden ist^^)
Wünsche mir ein TableView Gadget in der MaxGUI weil das eig. das wichtigste Gadget ist um Daten darzustellen wie ich finde. Und eine Mac IDE ala Xcode ![]() |
||
- Zuletzt bearbeitet von beanage.johannes am Fr, Jan 22, 2010 16:13, insgesamt einmal bearbeitet
![]() |
Jolinah |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die bisher genannten Punkte finde ich auch die wichtigsten, (vor allem Konstruktor mit Parameter und Methoden-/Funktionsüberladung). Zusätzlich würde mir aber auch noch folgendes gefallen:
- Zahlen-Datentypen als Objekte (wenn dies nicht all zu grossen Performance-Verlust bedeuten würde). Dann könnte man in Listen auch mal Zahlen einfügen etc. - (Nicht wichtig) Erweiterungsmethoden (wie bei C#). Es ist z.b. möglich der String-Klasse eigene Methoden hinzuzufügen, ohne dabei einen eigenen abgeleiteten Type etc. erstellen zu müssen. Im Prinzip sowas wie Function Encrypt:String(str:String) nur dass man dann direkt schreiben kann "String".Encrypt() und diese Erweiterungsmethode/Funktion automatisch aufgerufen wird. - (Nicht wichtig) Partial Type (wie bei C# partial class). Types können auf mehrere Dateien etc. aufgeteilt werden. Indem man Partial Type Name schreibt. Mehrere Partial-Blöcke werden dann zusammengefügt zu dem einen Type. Die letzten beiden sind wirklich unwichtig, aber wären trotzdem evtl. nützlich ![]() |
||
![]() |
klin |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nicdel hat Folgendes geschrieben: Sound nicht unbedingt, Video allerdings schon.
Jop! Das wollte ich nämlich vorschlagen^^ Video wäre allerdings sinnvoll. Am besten mpg oder was auch noch sehr geil wäre AVI!!!111eins Was man auch noch adden könnte.. hmm... Vielleicht auch noch wenn es geht, ein Bild Blur zu zeichnen in echt zeit ![]() THX MFG Klin |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Für Import eine IFnDef-Anweisung, um cirkuläre Imports zu unterbinden und somit das Handling zu erleichtern. | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
ChristianK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
klin hat Folgendes geschrieben: Vielleicht auch noch wenn es geht, ein Bild Blur zu zeichnen in echt zeit
An sowas ähnliches hab ich auch gedacht. Shader-Support allgemein wäre ganz praktisch. Oder wenigstens die Möglichkeit, Max2D durch eigene Module zu erweitern, also Zugriff auf Direct3D-Device, OpenGL-Context etc. über ein einheitliches Interface. |
||
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT |
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
auf jeden fall circuläres importen erlauben, also
file a.bmx: BlitzMax: [AUSKLAPPEN]
file b.bmx: BlitzMax: [AUSKLAPPEN]
|
||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
![]() |
FireballFlame |
![]() Antworten mit Zitat ![]() |
---|---|---|
hamZta hat Folgendes geschrieben: Richtige Funktions-/Methodenüberladung
Muss nicht sein, optionale Parameter haben auch ihre Vorteile.
Richtige Überladung mit verschiedenen Parametern sollte unterstützt werden. (BtbN) Jolinah hat Folgendes geschrieben: - Zahlen-Datentypen als Objekte (wenn dies nicht all zu grossen Performance-Verlust bedeuten würde). Dann könnte man in Listen auch mal Zahlen einfügen etc. Wäre das nicht schon durch den Generic-Vorschlag von BtbN abgedeckt? Aber wenn, dann vielleicht eher als neuen Datentyp, nicht als Object.
Eigene Wünsche: - eigene Bedingungen für ?-Blöcke bzw. richtige Konstanten (die beim Kompilieren ausgewertet werden) - sinnvolle Verwendung der Standard-Object-Methoden, zumindest Benutzung der Compare-Methode durch die Vergleichsoperatoren - Private und Public nicht nur für ganze Klassen, sondern auch innerhalb der Klassen für Felder, Globals, Methoden und Funktionen - Boolean-Datentyp? - vernünftige Dokumentation, siehe u.a. BRL.Threads ![]() |
||
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit |
- Zuletzt bearbeitet von FireballFlame am Fr, Jan 15, 2010 19:08, insgesamt einmal bearbeitet
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
*Hust*
Wenn ich nicht irre hatten wir die Diskussion über überladene Methoden erst gestern und eigentlich alle ausser Dir waren dafür, FBF. Von daher plädiere ich das dieser Vorschlag drinbleibt. |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
![]() |
Artemis |
![]() Antworten mit Zitat ![]() |
---|---|---|
@Fireball-Flame,
mit dem ersten ist denke ich mal so etwas gemeint: BlitzMax: [AUSKLAPPEN] Function Maximum(a:Int, b:Int) Das kann man nicht mit optionalen Parametern machen. Was ich super fände wäre Operator-Überladung: Also dass man z.B. in einem Type sage kann BlitzMax: [AUSKLAPPEN] Method +(value:Int) |
||
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich finde der Datentyp Byte sollte etwas erweitert werden, und zwar so, dass er auch Zeichen akzeptiert(ohne explizite Typumwandlung durch Asc <-> Chr). Z. B. wäre( wie in C und Assembler) so etwas möglich:
BlitzMax: [AUSKLAPPEN] For Local i:Byte="A" To "Z" mfg Thunder |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
- Zuletzt bearbeitet von Thunder am Fr, Jan 15, 2010 19:24, insgesamt 2-mal bearbeitet
![]() |
FireballFlame |
![]() Antworten mit Zitat ![]() |
---|---|---|
*Blade ein Hustenbonbon reich*
Wie viele Leute dafür und wie viele dagegen sind, kann hamZta ja selbst sehen. Meine Meinung werd ich doch trotzdem nennen dürfen ![]() |
||
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit |
![]() |
klin |
![]() Antworten mit Zitat ![]() |
---|---|---|
Thunder hat Folgendes geschrieben: Ich finde der Datentyp Byte sollte etwas erweitert werden, und zwar so, dass er auch Zeichen akzeptiert(ohne explizite Typumwandlung durch Asc <-> Chr). Z. B. wäre( wie in C und Assembler) so etwas möglich:
BlitzMax: [AUSKLAPPEN] For Local i:Byte="A" To "Z" mfg Thunder Du meinst wohl For Local i:STRING="A" To "Z" Aber für was könnte man sowas benötigen? Ich meine... das bekommt man auch mit ASCII hin. Jedoch sinds noch Bytes ![]() MFG Klin |
||
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
@klin: Nein, er meint tatsächlich i:Byte ![]() |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
ChristianK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Er meinte, dass man einzelne Zeichen direkt als ASCII-Code in einer Zahlenvariable und ohne String speichern kann. Dann sollte man aber entweder Short dafür benutzen (Unicode) oder einen passen Char-Datentyp einführen. | ||
AdvanceLcd
Intel Core 2 Duo 3.2 GHz, 4 GB RAM, GeForce 8800 GTX | MacBook Pro 15,4″ Intel Core 2 Duo 2.4 GHz, 2 GB RAM, GeForce 8600M GT |
Gehe zu Seite 1, 2, 3, 4, 5 Weiter
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group