Script Engine interface for multiple languages

Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

Reexamination Certificate

active

06275868

ABSTRACT:

FIELD OF THE INVENTION
This invention relates to a script engine interface that enables host applications to support disparate scripting languages from multiple sources and vendors, and that allows details of the script engines (language, syntax, persistent format, execution model, etc.) to be implemented independently of the host application. The interface also allows the host application to discover which script engines are available on the host machine. Thus any application can easily support any suitably implemented scripting language desired by the user.
PROBLEM
In the present software technology, there are two types of software components: scripting languages and applications. A user writes programs in a scripting language that automate functionality exposed by the host application. For example, a user might write a script in Visual Basic for Applications™ (VBA) to automatically create a chart using the graphics functions of Microsoft Excel.
However, under the current technology, each language engine is tightly coupled to a particular host application using proprietary interfaces that are different for every application. This means that users have no choice about which scripting engine to use with their application. They must use the language that was specifically designed for and included with the application, which is not necessarily the best language for their particular purposes. Similarly, scripting engine providers have a limited market for their products because they are unable to make their language engines interoperate with existing applications, due to the fact that the interfaces to those applications are proprietary, unpublished, and different for every application.
SOLUTION
The scripting engine interface of the present invention overcomes these problems and provides an advance in the art by introducing the capability to interconnect any suitably written application or server with any scripting language. The implementation of the script engine itself (language, syntax, persistent format, execution model, and the like) is left entirely to the vendor, and the script engine need not come from the same vendor as the host application.
The scripting engine interface design implements this capability using a set of interfaces, the two most important ones being IActiveScriptSite (implemented by the host application) and IActiveScript (implemented by the language engine.)
Together, these interfaces allow a host application to inform a script engine about the objects that can be scripted and to define the scripts that the engine should execute, either immediately or in response to user actions such as mouse clicks.
The scripting language engine interface redefines the handshake that is required between scripting engines and applications in a manner not previously done. Unlike past script engine interfaces, which define a unique and proprietary way of hooking up to an application, the interface described here provides a universal hookup mechanism that is simple and direct. This allows application vendors to design applications that can easily be scripted using any language desired by users, simply by exposing an object model for automation, supporting the interfaces to host script engines, and loading scripts into those engines. Similarly, language vendors can define language engines which will hook up to any suitably written application, without having to know the details of that application. Language vendors, application vendors, and end users all benefit from the increased choice and interoperability.


REFERENCES:
patent: 5432940 (1995-07-01), Potts et al.
patent: 5475843 (1995-12-01), Halviatti et al.
patent: 5669000 (1997-09-01), Jessen et al.
patent: 5745738 (1998-04-01), Ricard
patent: 5768510 (1998-06-01), Gish
patent: 5854930 (1998-12-01), McLain, Jr. et al.
patent: 5857201 (1999-01-01), Wright et al.
patent: 6038590 (2000-03-01), Gish
Dilascia and Stone, “Sweeper,”Microsoft Interactive Developer, vol. 1, No. 1, pp. 16-52 (1996).
Box, D., “Say Goodbye to Macro Envy With Active Scripting,”Microsoft Interactive Developer, 7pp. (Feb. 1997).
Pleas, K., “Visual Basic Script,”Microsoft Interactive Developer, pp. 55-63 (Spring 1996).
Brockschmidt, K., “OLE Automation and Automation Objects,”Inside OLE, Second Ed., Chapter 14, pp. 635-730 (1995).
Brockschmidt,K., “OLE Automation Controllers and Tools,”Inside OLE, Second Ed., Chapter 15, pp. 731-760 (1995).
Microsoft Corporation, “Working With Batch Programs,”MS DOS 5.0 User's Guide&Reference, Chapter 10, pp. 225-244 (1991).
Wall, L. et al., “An Overview of Perl,”Programming Perl, Chapter 1, pp. 1-34 (1996).
Rahmel, Dan, “Comparing JavaScript and VBScript,” DBMS, pp(9). Oct. 1996.*
Kaufman, Saunders, et al., “Teach yourself ActiveX programming in 21 days,” Sams Publishing, pp(19). Nov. 1996.*
(no author given) “Inside Macintosh—Interapplicaton Communication,” Addison-Wesley, Chapters 1, 7, 8 and 10, 1993.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Script Engine interface for multiple languages does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Script Engine interface for multiple languages, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Script Engine interface for multiple languages will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2457778

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.