Re: AbiWord for Macintosh


Subject: Re: AbiWord for Macintosh
From: Scott Kovner (kovner@austin.rr.com)
Date: Sat Feb 05 2000 - 00:14:07 CST


Hi all,

Wow, all of a sudden there's about 20 Mac AbiSource messages. I guess I
should say something, since I tried to help organize this effort a month ago
then dropped out of sight.

Abiword does compile on Macintosh as Robert Sievers said. Then it hits some
asserts due to stubbed out code, since some things are not initialized. It
should be a straightforward task to hit each of the individual run time
failures and fill in the code, but it will take some time.

I had hoped to put more time into the project. I ordered the latest
CodeWarrior version so I could export the project file in XML format, since
that seemed so much more AbiSource friendly. While waiting for the compiler
to arrive, I learned that my friend and project partner at my real job
resigned from the company I work for, leaving me with a ton of work. This
was right after I received the permissions to do AbiSource check-ins. As a
result, I did no further AbiSource work.

I am heartened and enthusiastic that so many people are now eager to
continue. I myself am almost caught up with my duties at my real job and I
hope I can resume contributions. I will be out of town for part of next
week, but I will try to do what I can when I get back.

In the meantime, if anyone has any trouble getting a clean compile, I will
try to help. I can do any check-ins you need. I will myself try to compile
the latest source base tomorrow.

On the topic at hand...

I agree with pretty much everything Joe Chan says in his message. I further
add that almost every argument in favor of PowerPlant can be made in favor
of using pre-packaged class libraries on the other platforms. Yet the
Windows Abiword XAP files are written directly on top of the raw Win32 API,
so there is precedent for the more low level approach.

My Mac OS GUI experience predates PowerPlant. I've used the Think Class
Libraries, MacApp, and the raw Toolbox calls too. AbiWord's architecture
fits the raw Toolbox better than it does any class library I've used. Some
APIs are designed to encapsulate, others are designed to be encapsulated.
The Toolbox is designed to be put under a framework, and PP is designed to
be pervasive throughout the entire code base. This leans heavily toward
using the Toolbox.

In looking at the code, the most important thing to keep in mind is to keep
the abstractions clean. The goal should be that if we write in PowerPlant,
and we need to move frameworks later, nothing in the wp directory should be
affected, because it will all just use the framework we created in xap.

on 2/4/00 9:05 PM, Joe Chan at firstian@bellatlantic.net wrote:

> Hi all,
>
> Sorry to be absent from AbiWord activities for so long, but within
> the last month, I've become the only Mac developer in my company and
> I'm flooded with 3 projects at the same time :(. It going to be tough
> for a while.
>
> As far as the PP discussion goes, I brought up this point with Bob
> and I have actually looked at the code, this is what I noticed:
>
> - The source of AbiWord basically adheres to the Mozilla C++ guide,
> which means no MI, no exceptions, no templates and so on. What this
> means is that it is uncertain how exception safe the code base is. PP
> relies heavily on exception, so there may be some problem.
>
> - I actually started an LDocApplication derived class for AbiWord,
> and from what I can tell, AbiWord already has a framework in place to
> deal with events, mouse, etc., and some work will have to be done to
> merge that with PP mechanisms.
>
> - Since AbiWord already has its own framework, making the Mac port
> basing on PP will make it drastically different from that of all
> other platform.
>
> - One big problem with the AbiWord framework is that it does not take
> into account AppleEvents, scriptability and recordability. PP solves
> most of the infrastructure problems in one fell swoop. Implementing
> the AEOM on top of PP is quite a breeze compared to doing it from
> scratch.
>
> This is not to say it will be a bad idea to use PP: I'm a big fan of
> PP and have used just about every class in PP and found it to be one
> of the most elegant frameworks that I've seen. But we have a large
> mismatch in the styles of the two frameworks and merging them isn't
> going to be easy. As far as I can see, we can't really easily divide
> up the tasks until someone is done merging the two of them.
>
> Just some thoughts.
>
>
>> At 18:28 -0600 2/4/00, Jeffrey J Barbose wrote:
>>> At 6:28 PM -0600 2/4/00, Bryan Prusha wrote:
>>>> That's good. I'm all for exploring our options. I just wonder if
>>>> that's necessarily part of the game plan for AbiWord. Could somebody
>>>> enlighten me as to wether AbiWord embedability may become a priority in the
>>>> future?
>>>
>>> i'm not saying that it's a priority now. i'm simply saying that it's
>>> another benefit to using PowerPlant.
>>>
>>> add to that:
>>>
>>> -- many people already know and use PowerPlant
>>> -- there are already contributed archives for PowerPlant
>>> -- no need to rewrite all the boilerplate stuff
>>> -- it's object oriented instead of structural.
>>> -- in the shorter term, PowerPlant will be fully Carbonized.
>>
>> Perhaps I'll be in a better position to discuss this once I've
>> downloaded the source and taken a look at it. I must admit I'm afraid I
>> wouldn't be able to submit if everything were based on PowerPlant since I
>> haven't learned it and don't really plan to. I'm defenitely a Toolbox API
>> developer. I guess the question is when does "many people know PowerPlant"
>> become "most people know PowerPlant"? Perhaps we're already at that point.
>> That's why I wanted to hear about everybody's interestes and experience.
>
> I don't see learning PP will really be a large obstacle. One very
> good thing about PP is that it is so modular, you can learn it one
> piece at a time and still be quite productive. A lot of the nitty
> gritty Toolbox level design that has nothing to do with your app's
> functionality is already done and well debugged. I can argue that it
> will be faster to learn PP while you are coding than to do it from
> scratch from Toolbox calls (that's how I did my first app :). Really,
> PP is so close to the Toolbox, the learning curve isn't as steep as
> it seems. And don't forget, you can always ask! To answer your
> question, I actually haven't met a Mac developer who hasn't at least
> casually use PP.
>
>> ---------------------------------------------------
>> Bryan Prusha Wolfram Research, Inc.
>> Coding is life. The rest is just 1's and 0's.
>
> Joe Chan
>
>
> Joe Chan
> --------
> -----BEGIN PGP PUBLIC KEY BLOCK-----
> Version: PGPfreeware 6.5.2 for non-commercial use <http://www.pgp.com>
>
> mQGiBDe8TdIRBADR1G+rGMcNayp+Q3SMo74j56XHGn/ZXGo0FnoE3yUHgK/NKxwb
> p95z+VOvr3c8UY0B/jzdPKZ8OOIXnwJjrEfP7ADHnLChPupBpFspxdjv5FBkD1lB
> r9cWjAAw1kJKt7VcxBYST8mODDTbLALsaCWgEfmEAN1VsLnrDJaDxhi9PwCg/2KQ
> SnEvns0illSizQuFBAw3CJUEAJq9vPLH7JLSfPjag0HKZUv1ZBlerZpP+dZ1y21R
> /Bw1Kr5ztTXO0q/yYCUMGB+gEfRWuQB5zVttmEl9cGImIzuffyj2sCRqcblnekqv
> 4GZ2L+wT+aX5eDWq5oEWq04Ks//peC/hnWI4qZc/LX7+OvUDdPa16d4Qq9Zv7vJU
> mR/3BAC0MTKUgtAcbaewwoj00LM2g5RS6fugKWJpBJmSSOg5z3etU8X1RmUr66VS
> VSfUI+I6LHBiVaBPM9233suzUVpuZ0W+3xyuoqe04lIYylPA96eiy9+J61aYuWRR
> LMzIrg+ugbEQdxpvvVLLGw6RYiznF+203g5WY5X+k4Con+PXmLQkSm9lIENoYW4g
> PGZpcnN0aWFuQGJlbGxhdGxhbnRpYy5uZXQ+iQBLBBARAgALBQI3vE3SBAsDAgEA
> CgkQ+DQ8p+Q01tyX+ACdElO5P3EZ/wVLLDxBx3O6WybKOV8AmQEtJ1eTdvXzTPvq
> UX4JTCcj9qtDuQMNBDe8TdIQDADMHXdXJDhK4sTw6I4TZ5dOkhNh9tvrJQ4X/faY
> 98h8ebByHTh1+/bBc8SDESYrQ2DD4+jWCv2hKCYLrqmus2UPogBTAaB81qujEh76
> DyrOH3SET8rzF/OkQOnX0ne2Qi0CNsEmy2henXyYCQqNfi3t5F159dSST5sYjvwq
> p0t8MvZCV7cIfwgXcqK61qlC8wXo+VMROU+28W65Szgg2gGnVqMU6Y9AVfPQB8bL
> Q6mUrfdMZIZJ+AyDvWXpF9Sh01D49Vlf3HZSTz09jdvOmeFXklnN/biudE/F/Ha8
> g8VHMGHOfMlm/xX5u/2RXscBqtNbno2gpXI61Brwv0YAWCvl9Ij9WE5J280gtJ3k
> kQc2azNsOA1FHQ98iLMcfFstjvbzySPAQ/ClWxiNjrtVjLhdONM0/XwXV0OjHRhs
> 3jMhLLUq/zzhsSlAGBGNfISnCnLWhsQDGcgHKXrKlQzZlp+r0ApQmwJG0wg9ZqRd
> QZ+cfL2JSyIZJrqrol7DVelMMm8AAgIMAJLPNVeljyMBP3OllfS9Q2nODxuZOb8a
> 4gsBxGefkj0v6YvjrEOI1CxwtUs8O8lJ6dpGF04bWkhKUVCujL9bMkVvVCsBTcxV
> nriook9GZ65Oc1lnexX/utzJ1+/rY2dQVnjGGxKFsFd3ubxGpa7ek+Cu+Ggh51jd
> HD0Bg1kar7VqUSxWZv6LlOLRcJmQCpY7Ld2g974NOVhDpFyv1o6B9q8kbuhkVO8l
> 8TV91jrGYmtwKF26sLKtKmenBg6yh/zpbtAfnlGacBc5SkIY79F+YWu1aA8hbl4f
> zcwd9vCLYKowN81b/MI7taJkKlVHCelVZDeO+/hOpe249TNpgzvPDUXybNYcuaxS
> TvrxlflSx1ksQxQ2gADS1db54IYTkpJX9kxlVnSnI7veRZxSe5AX5bxoTzGdl09z
> kNJoXMU+Ml9NdpiGVifIlMGqUgmbNkeYtgZGJdsd5r3a4eg9Q2+447L33C5eOONA
> zh5Whha3p1o7L4lXyDDIM1XlC4WkS2YT44kARgQYEQIABgUCN7xN0gAKCRD4NDyn
> 5DTW3HdjAKDuRkTcwm/TH7sGvmw3LNlSkQVBjgCgk5JUTrOAzwDq6oLEi4bBy/4U
> FcI=
> =LoER
> -----END PGP PUBLIC KEY BLOCK-----

Scott Kovner | "The big boys, they all got computers."
kovner@austin.rr.com | --Don Henley



This archive was generated by hypermail 2b25 : Sat Feb 05 2000 - 00:13:06 CST