Information about Xbase
xBase is the generic term for all programming languages that derive from the original dBASE (Ashton-Tate) programming language and database formats. These are sometimes informally known as dBASE "clones". There are indicators that there was a non-commercial predecessor, although most clones are based on the dBASE commercial product.
The 'x' means the various flavors, such as dBASE, (dBXL/Arago) QuickSilver, Clipper, FoxPro, xBase++, and xHarbour. As of this writing (April 2006), the following are commercially available: Visual FoxPro is available from Microsoft, Recital from Recital Corp., xBase++ from Alaska Software, Clipper, Visual Objects (Windows 32) and Vulcan.NET from GrafxSoft, Flagship from multisoft GmbH, dBase from dBASE Inc., xHarbour Builder from xHarbour.com Inc.. Some free versions are also available, like: CLIP, the Harbour Project and xHarbour.
A developer community support for xBase that is focused mainly on Clipper, FoxPro, [x]Harbour, and xBase++ can be found here: Oasis Web Site. A comprehensive list of communities related to Visual FoxPro can be found here.
Starting around 1987, an effort began to create some sort of standard for the dBASE programming language syntax, since there were an increasing number of "clone" software products that mimicked dBASE. However, each of these products had its own unique set of supported language features and syntax. As such, it was often very difficult to move code developed with one dBASE-like product to run in another one. (This was in contrast to older programming languages such as C or COBOL where due to published official standards, carefully developed code could possibly be run in a wide range of software environments.) Ashton-Tate, however, maintained that everything relating to dBASE was proprietary, and had even filed lawsuits against several such "clone" software vendors. This gave rise to the creation of the generic term "xBase" meaning "dBASE or dBASE-like" (A suggested name that narrowly failed was "*base", and some wanted it spelled "X-base") Once Borland acquired Ashton-Tate in mid 1991 (and was apparently required to drop the lawsuits as an anti-trust related condition of the merger), such standardization efforts were given new life. An ANSI committee was officially formed, and began regular meetings in 1992. Marc Schnapp was the first chairman, and the first meeting was held at the Jet Propulsion Laboratory in Pasadena, California which was essentially the birthplace of dBASE II a number of years before. The group met on a regular basis in a variety of locations over the next few years, and representatives from most major vendors participated. But despite lip service from all the vendors on the need for a standard, no one seemed willing to change their product syntax to match that of a competitor.
In 1993, Sybex, Inc. [computer books] published the Xbase Cross Reference Handbook, by Sheldon M. Dunn, a cross reference of the most commonly used xBase languages at that time -- dBASE III+, dBASE IV, FoxPro for DOS, FoxPro for Windows, FoxPro for Macintosh and Clipper 5.1. At 1352 pages and 5.1 pounds shipping weight, the Cross Reference was hardly a handbook, but it provided the xBase community with an up-to-date, all-in-one reference manual, and addressed one of the major documentation problems that the community was facing. The software companies had decided to break their manuals into sections, separating commands from functions, etc., and splitting the [previous] manual into two or three different manuals, and the community was left trying to figure what-was-what and which manual to keep close at 'hand'. 1993 was pivotal for the xBase community because, as previously noted, Ashton-Tate had earlier sold dBASE as well as the rest of their product line to Borland and Microsoft had purchased FoxPro from Fox Software. Borland had also purchased QuickSilver to get a foot up the development ladder for a dBASE version for Windows [then 3.1]. In 1994, Borland launched dBase V for Windows and dBASE V for DOS before selling the dBASE name and product line to dBase Inc.
In recent years there seems to be a renewed interest in xBase, mostly because of a number of open source, portable, xBase implementations (listed above), and the scripting applicability of the language. While newer desk-top database tools are optimized for mouse usage, XBase has always been "keyboard friendly", which helps make scripting and meta-programming (automating the automation) easier. Meta-programming generally does not work as well with mouse-oriented techniques because automating mouse movements can require calculating and processing of screen coordinates, something most developers find tedious and difficult to debug. XBase is one of the few table-oriented scripting languages still available.
As of this writing (April 2006) xBase is available and aggressively expanded, on practically any available platform, including scripting environment such as HTML clients, ASP Servers, Windows Scripting Host, and self contained Interpreter.
The 'x' means the various flavors, such as dBASE, (dBXL/Arago) QuickSilver, Clipper, FoxPro, xBase++, and xHarbour. As of this writing (April 2006), the following are commercially available: Visual FoxPro is available from Microsoft, Recital from Recital Corp., xBase++ from Alaska Software, Clipper, Visual Objects (Windows 32) and Vulcan.NET from GrafxSoft, Flagship from multisoft GmbH, dBase from dBASE Inc., xHarbour Builder from xHarbour.com Inc.. Some free versions are also available, like: CLIP, the Harbour Project and xHarbour.
A developer community support for xBase that is focused mainly on Clipper, FoxPro, [x]Harbour, and xBase++ can be found here: Oasis Web Site. A comprehensive list of communities related to Visual FoxPro can be found here.
Starting around 1987, an effort began to create some sort of standard for the dBASE programming language syntax, since there were an increasing number of "clone" software products that mimicked dBASE. However, each of these products had its own unique set of supported language features and syntax. As such, it was often very difficult to move code developed with one dBASE-like product to run in another one. (This was in contrast to older programming languages such as C or COBOL where due to published official standards, carefully developed code could possibly be run in a wide range of software environments.) Ashton-Tate, however, maintained that everything relating to dBASE was proprietary, and had even filed lawsuits against several such "clone" software vendors. This gave rise to the creation of the generic term "xBase" meaning "dBASE or dBASE-like" (A suggested name that narrowly failed was "*base", and some wanted it spelled "X-base") Once Borland acquired Ashton-Tate in mid 1991 (and was apparently required to drop the lawsuits as an anti-trust related condition of the merger), such standardization efforts were given new life. An ANSI committee was officially formed, and began regular meetings in 1992. Marc Schnapp was the first chairman, and the first meeting was held at the Jet Propulsion Laboratory in Pasadena, California which was essentially the birthplace of dBASE II a number of years before. The group met on a regular basis in a variety of locations over the next few years, and representatives from most major vendors participated. But despite lip service from all the vendors on the need for a standard, no one seemed willing to change their product syntax to match that of a competitor.
In 1993, Sybex, Inc. [computer books] published the Xbase Cross Reference Handbook, by Sheldon M. Dunn, a cross reference of the most commonly used xBase languages at that time -- dBASE III+, dBASE IV, FoxPro for DOS, FoxPro for Windows, FoxPro for Macintosh and Clipper 5.1. At 1352 pages and 5.1 pounds shipping weight, the Cross Reference was hardly a handbook, but it provided the xBase community with an up-to-date, all-in-one reference manual, and addressed one of the major documentation problems that the community was facing. The software companies had decided to break their manuals into sections, separating commands from functions, etc., and splitting the [previous] manual into two or three different manuals, and the community was left trying to figure what-was-what and which manual to keep close at 'hand'. 1993 was pivotal for the xBase community because, as previously noted, Ashton-Tate had earlier sold dBASE as well as the rest of their product line to Borland and Microsoft had purchased FoxPro from Fox Software. Borland had also purchased QuickSilver to get a foot up the development ladder for a dBASE version for Windows [then 3.1]. In 1994, Borland launched dBase V for Windows and dBASE V for DOS before selling the dBASE name and product line to dBase Inc.
In recent years there seems to be a renewed interest in xBase, mostly because of a number of open source, portable, xBase implementations (listed above), and the scripting applicability of the language. While newer desk-top database tools are optimized for mouse usage, XBase has always been "keyboard friendly", which helps make scripting and meta-programming (automating the automation) easier. Meta-programming generally does not work as well with mouse-oriented techniques because automating mouse movements can require calculating and processing of screen coordinates, something most developers find tedious and difficult to debug. XBase is one of the few table-oriented scripting languages still available.
As of this writing (April 2006) xBase is available and aggressively expanded, on practically any available platform, including scripting environment such as HTML clients, ASP Servers, Windows Scripting Host, and self contained Interpreter.
External links
- [news:comp.lang.clipper Clipper Newsgroup]
- GrafX Software
- Vulcan.NET Xbase language for Microsoft .NET
- NTK Project, WIN32 Gui Framework for (x)Harbour, backward compatible with Clipper and Clip4Win.
- Xbase ( & dBASE ) File Format Description
- Xbase Appreciation
Topics in database management systems (DBMS)
| |
|---|---|
|
Concepts Database Database models Database storage Relational model Distributed DBMS ACID Null Relational database Relational algebra Relational calculus Database normalization Referential integrity Relational DBMS Primary key, Foreign key, Surrogate key, Superkey, Candidate key | |
|
Objects Trigger View Table Cursor Log Transaction Index Stored procedure Partition |
Topics in SQL Select Insert Update Merge Delete Join Union Create Drop Begin work Commit Rollback Truncate Alter |
| Implementations of database management systems | |
|
Types of implementations Relational Flat file Deductive Dimensional Hierarchical Object oriented Object relational Temporal XML data stores | |
|
Database products Object-oriented (comparison) Relational (comparison) |
Components Query language Query optimizer Query plan ODBC JDBC |
A programming language is an artificial language that can be used to control the behavior of a machine, particularly a computer. Programming languages, like natural languagess, are defined by syntactic and semantic rules which describe their structure and meaning respectively.
..... Click the link for more information.
..... Click the link for more information.
dBase was the first widely used database management system (DBMS) for microcomputers, published by Ashton-Tate for CP/M, and later on the Apple II, Apple Macintosh, UNIX[1], VMS[2]
..... Click the link for more information.
..... Click the link for more information.
Ashton-Tate (Ashton-Tate Corporation) was a US based software company best known for developing the popular dBASE database application. Ashton-Tate grew from a small garage-based company to become a multinational corporation with software development centers spread across
..... Click the link for more information.
..... Click the link for more information.
dBase was the first widely used database management system (DBMS) for microcomputers, published by Ashton-Tate for CP/M, and later on the Apple II, Apple Macintosh, UNIX[1], VMS[2]
..... Click the link for more information.
..... Click the link for more information.
Clipper is a computer programming language that is used to create software programs that originally operated primarily under DOS. Although it is a powerful general-purpose programming language, it was primarily used to create database/business programs.
..... Click the link for more information.
..... Click the link for more information.
IDE: English, German, Spanish
Runtime: Above, French, Chinese, Russian, Czech, Korean
Status: Maintenance mode
Genre: Database Programming language
License: Microsoft EULA
Website: msdn.microsoft.
..... Click the link for more information.
Runtime: Above, French, Chinese, Russian, Czech, Korean
Status: Maintenance mode
Genre: Database Programming language
License: Microsoft EULA
Website: msdn.microsoft.
..... Click the link for more information.
XBase++ is an object oriented programming language which has multiple inheritance and polymorphism. It is based on the XBase language dialect and conventions.
..... Click the link for more information.
External links
- XBase++ web page
..... Click the link for more information.
xHarbour is a free (GPL + exception supporting commercial applications) multi-platform (DOS, Microsoft Windows, Linux (32,64), Unix (32,64), Mac OS X) extended Clipper compiler, offering multiple GT (Graphic Terminals), including console drivers, GUIs (free such as HWGui, MiniGUI
..... Click the link for more information.
..... Click the link for more information.
IDE: English, German, Spanish
Runtime: Above, French, Chinese, Russian, Czech, Korean
Status: Maintenance mode
Genre: Database Programming language
License: Microsoft EULA
Website: msdn.microsoft.
..... Click the link for more information.
Runtime: Above, French, Chinese, Russian, Czech, Korean
Status: Maintenance mode
Genre: Database Programming language
License: Microsoft EULA
Website: msdn.microsoft.
..... Click the link for more information.
Clip compiler is a multi-platform (for both Linux and Windows(Cygwin)) Clipper programming language compiler with many additional features and libraries (for gtk, fivewin, netto, MySQL, ODBC, cti, tcp, gzip, Interbase, Oracle, Postgres), which is quite fast, has support for
..... Click the link for more information.
..... Click the link for more information.
Harbour is a free software compiler for the xBase superset language often referred to as Clipper (the language that is implemented by the compiler CA-Clipper).
Harbour is a cross-platform compiler and is known to compile and run on MS-DOS, Microsoft Windows, OS/2 and Linux.
..... Click the link for more information.
Harbour is a cross-platform compiler and is known to compile and run on MS-DOS, Microsoft Windows, OS/2 and Linux.
..... Click the link for more information.
xHarbour is a free (GPL + exception supporting commercial applications) multi-platform (DOS, Microsoft Windows, Linux (32,64), Unix (32,64), Mac OS X) extended Clipper compiler, offering multiple GT (Graphic Terminals), including console drivers, GUIs (free such as HWGui, MiniGUI
..... Click the link for more information.
..... Click the link for more information.
IDE: English, German, Spanish
Runtime: Above, French, Chinese, Russian, Czech, Korean
Status: Maintenance mode
Genre: Database Programming language
License: Microsoft EULA
Website: msdn.microsoft.
..... Click the link for more information.
Runtime: Above, French, Chinese, Russian, Czech, Korean
Status: Maintenance mode
Genre: Database Programming language
License: Microsoft EULA
Website: msdn.microsoft.
..... Click the link for more information.
Metaprogramming is the writing of computer programs that write or manipulate other programs (or themselves) as their data or that do part of the work during compile time that is otherwise done at run time.
..... Click the link for more information.
..... Click the link for more information.
A database management system (DBMS) is computer software designed for the purpose of managing databases. Typical examples of DBMSs include Oracle, DB2, Microsoft Access, Microsoft SQL Server, PostgreSQL, MySQL, FileMaker and Sybase Adaptive Server Enterprise.
..... Click the link for more information.
..... Click the link for more information.
database is a structured collection of records or data that is stored in a computer system so that a computer program or person using a query language can consult it to answer queries. The records retrieved in answer to queries are information that can be used to make decisions.
..... Click the link for more information.
..... Click the link for more information.
A data model is not just a way of structuring data: it also defines a set of operations that can be performed on the data. The relational model, for example, defines operations such as select, project, and join.
..... Click the link for more information.
..... Click the link for more information.
flat file database describes any of various means to encode a data model (most commonly a table) as a plain text file.
..... Click the link for more information.
Unordered
Unordered storage typically stores the records in the order they are inserted, while having..... Click the link for more information.
The relational model for database management is a database model based on predicate logic and set theory. It was first formulated and proposed in 1969 by Edgar Codd with aims that included avoiding, without loss of completeness, the need to write computer programs to
..... Click the link for more information.
..... Click the link for more information.
A distributed database management system is a software system that permits the management of a distributed database and makes the distribution transparent to the users. A distributed database is a collection of multiple, logically interrelated databases distributed over a computer network.
..... Click the link for more information.
..... Click the link for more information.
ACID (Atomicity, Consistency, Isolation, Durability) is a set of properties that guarantee that database transactions are processed reliably. In the context of databases, a single logical operation on the data is called a transaction.
..... Click the link for more information.
..... Click the link for more information.
Null is a special marker used to indicate that a data value is unknown in the Structured Query Language (SQL). Introduced by the creator of the relational database model, Dr. E.F.
..... Click the link for more information.
..... Click the link for more information.
A relational database is a database that conforms to the relational model, and refers to a database's data and schema (the database's structure of how that data is arranged).
..... Click the link for more information.
..... Click the link for more information.
Relational algebra, an offshoot of first-order logic, is a set of relations closed under operators. Operators operate on one or more relations to yield a relation. Relational algebra is a part of computer science.
..... Click the link for more information.
..... Click the link for more information.
The relational calculus refers to the two calculi, the tuple relational calculus and the domain relational calculus, that are part of the relational model for databases and that provide a declarative way to specify database queries.
..... Click the link for more information.
..... Click the link for more information.
Database normalization is a technique for designing relational database tables to minimize duplication of information and, in so doing, to safeguard the database against certain types of logical or structural problems, namely data anomalies.
..... Click the link for more information.
..... Click the link for more information.
referential integrity. In this example, there is a foreign key (artist_id) value in the album table that references a non-existent artist — in other words there is a foreign key value with no corresponding primary key value in the referenced table.
..... Click the link for more information.
..... Click the link for more information.
A relational database management system (RDBMS) is a database management system (DBMS) that is based on the relational model as introduced by E. F. Codd. Relational databases are the most common kind of database in use today (assuming one does not count a file system as a database).
..... Click the link for more information.
..... Click the link for more information.
In relational database design, a unique key or primary key is a candidate key to uniquely identify each row in a table. A unique key or primary key comprises a single column or set of columns.
..... Click the link for more information.
..... Click the link for more information.
In the context of relational databases, a foreign key is a referential constraint between two tables.[1] The foreign key identifies a column or a set of columns in one (referencing) table that refers to a column or set of columns in another (referenced) table.
..... Click the link for more information.
..... Click the link for more information.
This article is copied from an article on Wikipedia.org - the free encyclopedia created and edited by online user community. The text was not checked or edited by anyone on our staff. Although the vast majority of the wikipedia encyclopedia articles provide accurate and timely information please do not assume the accuracy of any particular article. This article is distributed under the terms of GNU Free Documentation License.
Herod_Archelaus