I decided to rewrite the Domaintalk proposal and
the develop a Math Domain document. To do it correctly I had to
use LaTeX which I have not used in decades. But it was worth the
effort because it gave me more ideas about how to implement the
Math Domain and it produces PDF files. I do not want to clutter
this email area, nor your in baskets, so those that would like to
see the document and provide comments which I welcome and need.
Please reply to email account and I will send you a return email with
three attachments: Domaintalk.pdf, MathDomainSpec.pdf and Mapping
to Smalltalk Code.htm.
bw |
I received the following comment:
My interest is in understanding the utility of such a proposal
in enterprise context viz: say in Banking
Can Domain driven DSL provide a plausible power user interface
for Banking apps driven primarily by UI screens and backend
processes.
MathsDomain specially may have an appeal in that direction.
I responded: My concept of Domaintalk is that it would not be limited to one particular platform, but used on a wide range of platforms; in you example both for the PC, tablet, workstation and mainframe or server, maybe even phones. Its use would be open ended, limited only by the users' imagination. A simple example should suffice to convey my meaning, while not a domain per se, Digitalk's Smalltalk/V used a global dictionary to open up the OS2 and Windows APIs to the programmer, even allowing the user to extend the APIs made available; moreover, all of the OS specific attributes, like handles, were made available. Something that was not available in ObjectWorks and I am not sure is available int Pharo. If domains were added to Pharo, then I am sure someone working on the Pharo internals (VM) could make the OS APIs available and provide a means to add new ones. Such a domain would not even require exposure of the OS attributes of the window because the programmer could simply create their own windows. A word of caution, this would mean that use of that OS specific domain would limit the application to that specific platform; however, that is something that I am willing to live with, in fact, it is something I desire, then I could give the application user the UI that they expect, the one that matches their platform. I can see where a banking application could benefit from the SQL Domain and the Math Domain decimal class and methods, I recall the heavy use of the decimal data and instructions in the IBM mainframes. I can even envision a domain that wrapped the windowing API that made it more usable, so that someone could create another domain that used that domain to add a language that would make window creation easier, either a graphical window builder (similar to the WindowBuilder application of Smalltalk/V) or a scripting type language. The term banking congers up many things to me, of course there is the standard banking account transaction processing, but there also the investment side of the business and other backroom analytical functions. I believe that application for all those diverse requirement could benefit from Domaintalk. For about thirteen year I was the head of computer departments with multimillion dollar IBM MVS mainframes. One thing that I could count on was that when I took over a new department I would find a staff that though that programs always had bugs the they would need to fix. I always seemed that 40% of my programming resources was spend fixing bugs. (Just like the ObamaCare web site.) I established the policy that programmers created bugs, not programs, and implemented step to eliminate all bugs, including having the heads of projects that had bugs meet with me each morning for a very uncomfortable meeting. I took about six months to get the level of bugs down to an acceptable level, about 5%, and mostly in programs scheduled for replacement. So I am well aware of what is required for an enterprise quality application. One reason I want Domaintalk is that, I have observed that, code that is not readable lends itself to errors. Another observation is that when the syntax of a language is stretched beyond its intended use, it become unreadable. I apologize for the lengthy response and I look forward to your response, and answer to the DSL question. BW |
Free forum by Nabble | Edit this page |