[jawsscripts] Re: advantages of object oriented over procedural API, plus Gw Fs Scripting methodology question.

  • From: Jamal Mazrui <empower@xxxxxxxxx>
  • To: jawsscripts@xxxxxxxxxxxxx
  • Date: Mon, 4 Aug 2008 12:34:55 -0400 (EDT)

I also meant to address the issue of OO being harder to learn.  I do not
think that is the case with the OO of COM, which as mentioned, does not
have the amount of power, and associated complexity, of a complete OO
model.  I truly think that anyone who can learn JAWS scripting can also
learn COM OO style coding -- in fact, many JAWS scripts already use this
style after a call to CreateObject.

By the way, since VBScript is a farily dynamic language, one script GW has
developed provides an immediate window environment, similar to that of VB6
or Python.  One can type expressions and immediately hear their results
before entering them into a script to be run.

Jamal

 On Mon, 4 Aug 2008, Jamal
Mazrui wrote:

> Date: Mon, 4 Aug 2008 12:17:56 -0400 (EDT)
> From: Jamal Mazrui <empower@xxxxxxxxx>
> Reply-To: jawsscripts@xxxxxxxxxxxxx
> To: jawsscripts@xxxxxxxxxxxxx
> Subject: [jawsscripts] Re: advantages of object oriented over procedural
>     API, plus Gw Fs Scripting methodology question.
>
> Hi Geoff,
> The Window-Eyes API is object oriented in the manner of COM,
> e.g., like the Microsoft Word, Excel, Outlook, or Internet Explorer object
> models.  COM is not a complete OO approach, e.g., classes are not
> inheritable, but it does make coding easier because related elements are
> grouped together such as the properties, methods, and events of an object.
> Compared to the OO of COM, I think a procedural API can generally do the
> same things by passing a handle to an object as the first parameter of a
> method.  So, the OO nature of the WE APIis not so much an advantage
> technically as with the organization it brings, which helps in
> distinguishing concepts, seperating namespaces, and remembering syntax,
> since OO consciously uses similar names for similar methods or properties
> of different objects (polymorphism).  For anyone familiar with the Word or
> IE object models, imagine if there was no hierarchy of objects, but just a
> long list of methods for the whole API -- it would be more difficult to
> work with!
>
> Regarding advantages of the JAWS API, it does have a type of inheritance
> of script and function names, whereby an application can redefine a
> routine with the same name, and then choose to call the default version or
> not (actually, the next version with the same name that is up a level in
> the hierarchy).  WinEyes does not have this.  JAWS functions can have
> optional parameters, which VBScript (the most common WinEyes scripting
> language) functions cannot.  JAWS offers an integrated development
> environment via Script Manager, whereas WinEyes requires an editor that is
> not customized to WinEyes scripting.  In my opinion, this is the most
> significant advantage that JAWS scripting still has over WinEyes
> scripting.
>
> Addressing some points others have raised, VBScript is more of an open
> source language than the JAWS scripting language, which is truly
> proprietary (only FS uses it).  VBScript is freely available and can be
> run by various hosts including the Windows Script Host, Internet Explorer,
> and Microsoft Outlook.  One will find many more free tutorials and
> examples on the web that use VBScript compared to JAWS script.  Although a
> WinEyes script can be encoded, none of the 80 or so currently available on
> the GW web site, including ones developed by the company, are encoded.
> Its source code is released under a BSD license.  It is unclear what
> license FS intends for its scripts, but given its propensity to litigate,
> I doubt it is the permissive BSD license (freely modify the code as long
> as the original source is acknowledged but not used to promote the
> modified version).
>
> The WinEyes scripting engine hosts two languages internally, just like the
> Windows Script Host:  VBScript and JScript.  I think the WinEyes security
> model is clearly stronger than the JAWS one.  A user can decide not to
> permit any script to run that has not ben explicitly allowed in advance.
>
> Feel free to ask further questions.  I welcome other opinions as
> well.  I do prefer the JAWS keyboard interface, so have developed a
> WinEyes script package called Homer Layout to emulate most JAWS keys,
> while also incorporating functionality unique to WinEyes.
>
> Regards,
> Jamal
>
>  On Mon, 4 Aug 2008, Geoff Chapman wrote:
>
> > Date: Mon, 4 Aug 2008 02:44:28 +1000
> > From: Geoff Chapman <gch@xxxxxxxxxxxxxxxx>
> > Reply-To: jawsscripts@xxxxxxxxxxxxx
> > To: jawsscripts@xxxxxxxxxxxxx
> > Subject: [jawsscripts] advantages of object oriented over procedural API,
> >      plus Gw Fs Scripting methodology question.
> >
> > Regarding Jamal's post of last week concerning some of the advantages he 
> > currently saw and listed
> > with the current window eyes Scripting implementation over the Fs current 
> > offering, I have a question from another scripter not onlist to ask here, 
> > plus one of my own.
> > First my friend's question:
> >
> > Aside from just being yet another way to think about the
> > problem at hand, what is the true advantage of object-oriented approaches 
> > in this environment?  In other words, what can you do in an object-oriented 
> > system, that you can not do procedurally.
> >
> > And, now for my question:
> >
> > Jamal, once again thinking of both scripting approaches as you know them, 
> > and as they stand right now, would you care to comment as to whether, in 
> > your view, the scripting model that fs has in place with jaws right now,
> > holds, any, current pluses/a dvantages at all right now, either of 
> > tightness of integration or procedurally,
> > over the current gw model?
> > with all it's caveats?
> > Thanks very much.
> >
> > geoff c.
> >
> >
> >
> > __________ 
> > View the list's information and change your settings at
> > //www.freelists.org/list/jawsscripts
> >
> __________ 
> View the list's information and change your settings at
> //www.freelists.org/list/jawsscripts
>
__________ 
View the list's information and change your settings at 
//www.freelists.org/list/jawsscripts

Other related posts: