digitalmars.D - Harmonia SVN url
- Andrew Fedoniouk (81/81) May 13 2005 This message is not an official Harmonia announcement -
- Dejan Lekic (7/8) May 13 2005 So should I checkout svn://harmonia.dyndns.org directly or is there some
- Andrew Fedoniouk (5/13) May 13 2005 checkout
- Andrew Fedoniouk (7/7) May 13 2005 I've updated Harmonia SVN
- Ben Hinkle (3/9) May 13 2005 What is the second version supposed to do?
- Andrew Fedoniouk (19/23) May 13 2005 In fact I have a table of styles for each tag type
- Burton Radons (2/2) May 14 2005 Bad timing, I won't be able to get back to working on this for awhile
This message is not an official Harmonia announcement - just consider it as "Early Bird release" svn://harmonia.dyndns.org It is our operational Harmonia SVN so expect updates there pretty frequently (each day in fact). It has read-only anonymous access. If somebody will want to participate in the project (porting, components, etc.) let me know I'll provide credentials. Current status: architecture of the package is established and solid. I don't expect any major changes here. Further direction is clear: bug fixes, extending functionality of exsisting components and creating new ones e.g. harmonia.ui.controls package will definitely grow. Our plans: 1) Dedicated Wiki site for Harmonia - documentation and design discussions. As we've got already proposals for porting I'll try to establish there registry for ongoing porting projects. 2) To comment code further. 3) To make a copy of it soon on dsource if it is possible, so dsource will keep stable versions. 4) We have two projects already running which are using Harmonia for their UI so I hope they will feed Harmonia by various components.. -------------------------------- Some general facts, thoughts and observations: 0) Harmonia goal is to be easy to use by starters and to be flexible and yet powerfull for use by experts. 1) Harmonia is agnostic to generic template libraries - it does not use any libraries except of Phobos. It does have array(T) and tstring(CHAR) (module: harmonia.types) but these are just helpers - wrappers for bunch of functions for standard D arrays. Harmonia uses Burton's Radons std.boxer and I'll be happy if it will be included into the Phobos. 2) Harmonia uses wchar[] as main string type. char[] is also used but primarily in places where it suposed to hold only ASCII text. 3) For some structures Harmonia uses lower case names: rect, point, size, etc. These names highlights the fact that these types are basic, atomic and has clear copy semantic. They are low level self sufficient primitives similar to standard int, uint, etc. 4) harmonia.gx.* package (Graphics, geometry, Image) made as generic/universal and I highly recommend it for other future toolkit implementations. It is clear and simple to use and if will be adopted widely would allow to migrate components back and forth. Its ideology is close to well known Java Graphics so I do not expect long learning curves here. 5) We need to do something with date and time in Phobos E.g. d_time as representation of date_time is just alias there. But it should be a separate distinct type (typedefed) to allow it e.g. to be boxed properly. Ideally it should be struct datetime { d_time dt; } with bunch of date time specific methods. Minimalistic version of struct datetime is in harmonia.types 6) Reiteration: I think that if D will have external methods for builtin types they will make D close to ideal. External methods will eliminate need of pretty artificial (for D) and sometimes ugly wrappers for e.g. arrays and strings. Acknowledgements: 1) Thanks to Walter for the D, D is just good. DMD compiler is fast and pretty reliable (on each odd version number :-) 2) Thanks to Ben Hinkle. I was using his code initially as a manual, in particular of how to interact with system from D. 3) Thanks in advance to guys who already agreed to make ports to different platforms. 4) Thanks to the community - to people here whose advices were professional and helped me a lot. Andrew Fedoniouk. Terra Informatica Software, Inc. British Columbia, Canada. PS: SVN server contains smile.dsw - Harmonia and samples project file for Microsoft Visual Studio 6 which I am using as main IDE. No other makefiles or Derek's Build.exe configuration files provided yet, sorry. If somebody will create them I will appreciate a lot for any help in this subject.
May 13 2005
svn://harmonia.dyndns.orgSo should I checkout svn://harmonia.dyndns.org directly or is there some trunk there? -- ........... Dejan Lekic http://dejan.lekic.org
May 13 2005
checkout svn://harmonia.dyndns.org Andrew. "Dejan Lekic" <leka entropy.tmok.com> wrote in message news:d6391e$30h6$1 digitaldaemon.com...svn://harmonia.dyndns.orgSo should I checkout svn://harmonia.dyndns.org directly or is there some trunk there? -- ........... Dejan Lekic http://dejan.lekic.org
May 13 2005
I've updated Harmonia SVN Workaround of bug introduced in DMD v .123. static array intializations: struct Two { int i; } static Two[12] Twos; // this works static Two[12] Twos = []; // this does not
May 13 2005
"Andrew Fedoniouk" <news terrainformatica.com> wrote in message news:d63cpa$1oa$1 digitaldaemon.com...I've updated Harmonia SVN Workaround of bug introduced in DMD v .123. static array intializations: struct Two { int i; } static Two[12] Twos; // this works static Two[12] Twos = []; // this does notWhat is the second version supposed to do?
May 13 2005
In fact I have a table of styles for each tag type Some entries there are initialized for default values (As you know, some tags have no visual representation) So my static style table looks like: static DocStyle[Tag.max] = [ Tag.TD: { .... }, Tag.TABLE: { .... } ... ]; And if I not list *all* array elements there I am getting error. Moreover - example from Arrays section in D documentation will not compile too: <quote> Static Initialization of Static Arrays int[3] a = [ 1:2, 3 ]; // a[0] = 0, a[1] = 2, a[2] = 3 </quote>struct Two { int i; } static Two[12] Twos; // this works static Two[12] Twos = []; // this does notWhat is the second version supposed to do?
May 13 2005
Bad timing, I won't be able to get back to working on this for awhile (I'm involved in the election), sorry.
May 14 2005