TweetFollow Us on Twitter

November 92 - Blueprint-and OODL Framework

Blueprint-and OODL Framework

Howard Oakley

MCL's need…

Although Macintosh Common Lisp (MCL) 2.0 provides a lot of classes which make the development of applications straightforward, many of those using it feel the need for a more complete application framework, perhaps with the functionality of MacApp. So, at the time that the OODL SIG was starting to get going, some of us gathered electronically and are conspiring to build such an application framework, named "Blueprint" by Jeff Alger (a co-conspirator).

MCL has good window/view, dialog and dialog item classes, the latter in particular having been extended to provide almost every form of control and widget known to man, and menus are also well catered for. However, an examination of the class heterarchy (see the diagram on the facing page) with MacApp eyes shows that there are many gaps, particularly in command handling, printing and documents. In truth some of the classes which look attractive are in fact very shallow-for instance, the Application class arrived during the late development stage of MCL 2.0, and really handles AppleEvents and nothing else.

Discussion in the info-mcl mail group and elsewhere has suggested that the lack of a thorough application framework may be one of the major factors limiting the number of products developed with MCL, and we are all agreed that we would rather see the MCL development team spending their time making version 2.1 even better, rather than trying to design and build Blueprint too. So, it was a natural community project for those in the new OODL SIG to work on.

... IS dylan's gain

The other target platform at which we are aiming is Dylan, of course. We believe that having a solid but efficient and compact application framework coded in Common Lisp will be a good foundation for when copies of Dylan start to arrive amidst APDA's soluble packing chips. In case you have still not read a copy of Apple's initial language definition for Dylan, at least in its first incarnation its syntax is strongly Lisp (although there are hints that additional 'more popular' syntaxes will also be supported in the future).

A future with Dylan has some serious consequences on Blueprint's design. There is already a massive and highly sophisticated application framework for Common Lisp systems, the Common Lisp Interface Manager (CLIM). This is currently offered for other platforms at version 2.0, but is still in its previous version for MCL. None of us conspiring to Blueprint would wish to be seen to attempt to subvert or compete with CLIM, which is – and should remain – the standard cross-platform framework for Common Lisp. However, it is by no means small, and it does not quite enable the development of applications fully compliant with the Apple Human Interface Guidelines. Blueprint will be much smaller and must be oriented at providing those developing true stand-alone Macintosh applications in MCL or Dylan with full compliance with the guidelines.

Another significant application framework used in the Common Lisp world is Garnet, which has recently been made available in the public domain. However, even though Garnet is rather leaner than CLIM, it is still large and does not use the Common Lisp Object System (CLOS), the current (and now draft ANSI) OOP system for Common Lisp. This would clearly not be tenable when we are promoting MCL as an OODL!

PROGRESS

This summer has seen active discussion of a number of major design issues. We are agreed that from the outset, Blueprint will support fully factored applications. However, there was a malicious rumor circulating to the effect that trying to achieve this in MCL 2.0 would prove a problem; following some preliminary work, I can now confirm that not only is it possible, but it seems considerably easier than in MacApp or any of the 'mainstream' compiled languages.

Others within our informal group have been looking at architectural issues, and I am delighted that Jeff Alger has his Solution Based Modeling hat on, and is making sure that whatever we do will work well with the Goldstein and Alger approach to development, as well as having a sound basis. With a surprisingly large number of renegades from a MacApp past, I am confident that we will end up with a framework which is practical as well as theoretically proper-and lean, mean and purposeful.

Another area of general agreement is that Blueprint will be available in source code, and essentially free and without runtime licensing cost through OODL SIG. Our group has the benefit of many great minds, and our aspirations are high. If you feel that you can make a contribution-particularly if you can write good Common Lisp, as it is in 'implementors' that we are weakest-please mail me. n

NOTE: 'Blueprint' is but a working name, and no claim is made for it as a trade mark.

 
AAPL
$561.28
Apple Inc.
+0.00
GOOG
$614.11
Google Inc.
+0.00
MSFT
$29.75
Microsoft Corpora
+0.00
MacNews Search:
Community Search:
view counter

view counter
view counter
view counter
view counter
view counter
view counter
view counter
view counter

Domino! Review
Domino! Review By Jason Wadsworth on May 21st, 2012 Our Rating: :: CLASSIC WITH FRIENDSiPhone App - Designed for the iPhone, compatible with the iPad Play dominoes with friends online in this social gaming title.   Developer: Flyclops | Read more »
Juggernaut: Revenge of Sovering Review
Juggernaut: Revenge of Sovering Review By Kevin Stout on May 21st, 2012 Our Rating: :: MINI-GAME-FULUniversal App - Designed for iPhone and iPad Juggernaut: Revenge of Sovering is an RPG with great graphics and Infinity Blade-like combat.   | Read more »
Sheep Up! Review
Sheep Up! Review By Rob Rich on May 21st, 2012 Our Rating: :: BAA-BAA-BOUNCEUniversal App - Designed for iPhone and iPad Who knew something as simple as a change in perspective could make such a big difference?   | Read more »
Uncover the Lost Levels in Where’s My Wa...
Fans of Disney Mobile’s hit game Where’s My Water - both the free and paid version – have a lot to be happy about. Disney just added iCloud support for cross-device game synching, and lots of new levels. | Read more »
Scotland Yard Review
Scotland Yard Review By Rob Rich on May 21st, 2012 Our Rating: :: A RELENTLESS PURSUITUniversal App - Designed for iPhone and iPad Whether avoiding detectives or tracking a master criminal, Scotland Yard makes for a good time.   | Read more »
iHeartRadio Hits Major Subscriber Milest...
It seems like just yesterday that radio giant Clear Channel announced the launch of their new music streaming app iHeartRadio.  A few months later the company announced the first annual iHeartRadio Music Festival, bringing in big name acts like Jay-Z, Coldplay and Lady Gaga to perform.  Talk about a way to get your app out there! | Read more »
Bug Assault Review
Bug Assault Review By Lisa Caplan on May 21st, 2012 Our Rating: :: GREAT FOR KIDSUniversal App - Designed for iPhone and iPad Bug Assault brings a fun new control mechanic to this Bug Zapper sequel.   | Read more »
King Pong Takes Crowdsourcing To The Nex...
It seems like every developer nowadays is using Kickstarter as an excuse to work on that pet project they have been kicking around for the last decade.  However, every once in a while someone wants to try something very different, to work towards the betterment of the medium.  Developer App-Different is looking to do just that with the launch of... | Read more »
Jake Escapes HD Review
Jake Escapes HD Review By Kevin Stout on May 21st, 2012 Our Rating: :: SHORT GAMEiPad Only App - Designed for the iPad Jake Escapes HD is a window-jumping action game with humorous thief, Jake.   | Read more »
Put Your Child In The Story With It’s Me...
Parents know that the iPad is a fantastic resource of storybook style apps, ideal for young children. They’ve probably already read the tale of Peter Pan to their kids, either through an app or through a traditonal book. So what makes It’s Me! Peter Pan stand out? It allows kids to get right inside the action. Parents are able to customize the app... | Read more »
All contents are Copyright 1984-2010 by Xplain Corporation. All rights reserved. Theme designed by Icreon.