dlASE IVCompiler 2 -  · di Valter Di Dio..... Borland dlASE IVCompiler 2.0 per Dos r-"LU on...

4
di Valter Di Dio .................. Borland dlASE IV Compiler 2.0 per Dos r-" on è passato nemmeno un anno LU dalla comparsa del compilatore ((originale» per dBASE che ecco pronta la versione 2.0. Le novità sono sia sostanziali che estetiche. Non es- sendo nel frattempo cambiato il dBASE IV le novità del compilatore non si nota- no subito; anzi credo che, a parte la nuova interfaccia, pochi scoprirebbero da soli le differenze. Invece il fatto che il numero di versione sia passato diret- tamente da 1. O a 2. O dovrebbe imme- diatamente avvertire il lettore attento che non si tratta di un semplice ritocco; il compilatore è stato modificato com- pletamente e il risultato si tocca con mano al primo uso. L'installazione La scatola contiene tre dischetti ad alta densità, un manuale d'uso (piccolis- simo), una guida rapida di riferimento (comodissima) e una copia del Langua- ge Reference del dBASE IV (pesantissi- ma). I tre dischetti contengono quasi cinque mega di materiale in forma com- pressa che diventano nove una volta terminata l'installazione. Durante la fase 224 di installazione sul disco rigido ci devo- no essere almeno 14 mega di spazio li- bero. Due sole le domande cui si deve rispondere: in quale directory vogliamo che sia messo il compilatore (di default \BDCOMP) e quale tabella dei codici estesi vogliamo usare (di default quella del DOS installato) Si deve fare attenzione solo a que- st'ultima domanda; infatti i programmi scritti con la tabella 437 non funzionano su macchine con quella 850, e vicever- sa. Si può comunque istruire il compila- tore affinché utilizzi una differente ta- bella al momento di generare il codice eseguibile. Il miglior sistema per ignora- re questo problema resta comunque quello di non usare caratteri maggiori di 127 per i nomi delle variabili o delle pro- cedure. Terminata l'operazione di installazio- ne conviene eseguire subito il program- ma DRIVERS che in pratica non è altro che un file ZI P autoestraente con i dri- ver per 68 tra le principali stampanti. Alla fine dell'installazione, tra gli altri, troverete i file DBC del compilatore, BDL del linker e BDS della nuova inter- faccia oltre alle librerie per il modo a 16 dBASE IV Compiler 2.0 Produttore e distributore: Borland Italia srl Via Cassanese 224 - Palazzo Leonardo - 20090 Segrate (MI) Prezzi (IVA esclusa]: dBASE Compiler 2.0 Lit.699.000 Upgrade dal compilatore, dal Run Time o da qualsiasi versione di dBASE Lit. 349.000 Nota: per i primi tre mesi chi acquista una nuo- va copia di dBASE IV riceverà il dBASE Compi- ler 2.0 in omaggio. bit e quelle per lavorare, sulle macchine dal 386sx in poi, a 32 bit. Principali novità Sicuramente la novità principale, al- meno dal punto di vista dell'utente, è il modo a 32 bit che consente sulle mac- chine 386 e successive di incrementare notevolmente la velocità di esecuzione. La Borland dichiara che in pratica si può avere anche un raddoppio delle presta- zioni dato che, gestendo l'indirizzamen- to esteso, non è più necessario l'acces- so alla memoria a segmenti. Natural- mente si deve essere certi che poi l'utente abbia una macchina con alme- no un 386sx; il codice a 32 bit non fun- ziona infatti sui 286 né sugli 8088/86 Altra novità sicuramente ben vista è la riduzione del 50% dello spazio occu- pato dal programma eseguibile (.EXE); oltre al minor spazio occupato sul disco, una riduzione del codice significa anche una maggior velocità di caricamento del programma e un minor carico del traffi- co sulle reti. Per il programmatore le novità più in- teressanti (quelle che rendono la vita più facile, per intendersi) sono la nuova interfaccia a menu e l'opzione di compi- lazione "Automatica" che permette di fare a meno della MAKE. In pratica, se si attiva questa possibilità, sia il compi- latore che il linker cercano, a partire dal programma "Main" tutti i moduli richia- mati e, se sono stati modificati li ricom- pila no, altrimenti viene linkato il vecchio object. Il programma MAKE (che faceva esattamente la stessa cosa) viene la- sciato per quei casi in cui si debbano ri- compilare dei moduli che non vengono esplicitamente chiamati dal programma. Ancora per il programmatore è stata implementata la possibilità di creare dei moduli di libreria (.BDO) runtime; prima questo era possibile solo parzialmente e li si dovevano comunque linkare. Con i nuovi moduli .BDO molte funzionalità possono essere preparate una volta per tutte e poi distribuite insieme agli ese- guibili; ad esempio si possono predi- sporre librerie per la gestione delle stampanti, della rete o per la presenta- zione dei dati. File di formati, etichette, MCmicrocomputer n. 138 - marzo 1994

Transcript of dlASE IVCompiler 2 -  · di Valter Di Dio..... Borland dlASE IVCompiler 2.0 per Dos r-"LU on...

Page 1: dlASE IVCompiler 2 -  · di Valter Di Dio..... Borland dlASE IVCompiler 2.0 per Dos r-"LU on èpassato nemmeno un anno dalla comparsa del compilatore ((originale» per dBASE che ecco

di Valter Di Dio..................

Borland

dlASE IV Compiler 2.0per Dos

r-" on è passato nemmeno un annoLUdalla comparsa del compilatore((originale» per dBASE che ecco

pronta la versione 2.0. Le novità sonosia sostanziali che estetiche. Non es-sendo nel frattempo cambiato il dBASEIV le novità del compilatore non si nota-no subito; anzi credo che, a parte lanuova interfaccia, pochi scoprirebberoda soli le differenze. Invece il fatto cheil numero di versione sia passato diret-tamente da 1. O a 2. O dovrebbe imme-diatamente avvertire il lettore attentoche non si tratta di un semplice ritocco;il compilatore è stato modificato com-pletamente e il risultato si tocca conmano al primo uso.

L'installazioneLa scatola contiene tre dischetti ad

alta densità, un manuale d'uso (piccolis-simo), una guida rapida di riferimento(comodissima) e una copia del Langua-ge Reference del dBASE IV (pesantissi-ma). I tre dischetti contengono quasicinque mega di materiale in forma com-pressa che diventano nove una voltaterminata l'installazione. Durante la fase

224

di installazione sul disco rigido ci devo-no essere almeno 14 mega di spazio li-bero. Due sole le domande cui si deverispondere: in quale directory vogliamoche sia messo il compilatore (di default\BDCOMP) e quale tabella dei codiciestesi vogliamo usare (di default quelladel DOS installato)

Si deve fare attenzione solo a que-st'ultima domanda; infatti i programmiscritti con la tabella 437 non funzionanosu macchine con quella 850, e vicever-sa. Si può comunque istruire il compila-tore affinché utilizzi una differente ta-bella al momento di generare il codiceeseguibile. Il miglior sistema per ignora-re questo problema resta comunquequello di non usare caratteri maggiori di127 per i nomi delle variabili o delle pro-cedure.

Terminata l'operazione di installazio-ne conviene eseguire subito il program-ma DRIVERS che in pratica non è altroche un file ZI P autoestraente con i dri-ver per 68 tra le principali stampanti.

Alla fine dell'installazione, tra gli altri,troverete i file DBC del compilatore,BDL del linker e BDS della nuova inter-faccia oltre alle librerie per il modo a 16

dBASE IV Compiler 2.0

Produttore e distributore:Borland Italia srlVia Cassanese 224 - Palazzo Leonardo - 20090Segrate (MI)Prezzi (IVA esclusa]:dBASE Compiler 2.0 Lit.699.000Upgrade dal compilatore, dal Run Time o daqualsiasi versione di dBASE Lit. 349.000Nota: per iprimi tre mesi chi acquista una nuo-va copia di dBASE IV riceverà il dBASE Compi-ler 2.0 in omaggio.

bit e quelle per lavorare, sulle macchinedal 386sx in poi, a 32 bit.

Principali novitàSicuramente la novità principale, al-

meno dal punto di vista dell'utente, è ilmodo a 32 bit che consente sulle mac-chine 386 e successive di incrementarenotevolmente la velocità di esecuzione.La Borland dichiara che in pratica si puòavere anche un raddoppio delle presta-zioni dato che, gestendo l'indirizzamen-to esteso, non è più necessario l'acces-so alla memoria a segmenti. Natural-mente si deve essere certi che poil'utente abbia una macchina con alme-no un 386sx; il codice a 32 bit non fun-ziona infatti sui 286 né sugli 8088/86

Altra novità sicuramente ben vista èla riduzione del 50% dello spazio occu-pato dal programma eseguibile (.EXE);oltre al minor spazio occupato sul disco,una riduzione del codice significa ancheuna maggior velocità di caricamento delprogramma e un minor carico del traffi-co sulle reti.

Per il programmatore le novità più in-teressanti (quelle che rendono la vitapiù facile, per intendersi) sono la nuovainterfaccia a menu e l'opzione di compi-lazione "Automatica" che permette difare a meno della MAKE. In pratica, sesi attiva questa possibilità, sia il compi-latore che il linker cercano, a partire dalprogramma "Main" tutti i moduli richia-mati e, se sono stati modificati li ricom-pila no, altrimenti viene linkato il vecchioobject. Il programma MAKE (che facevaesattamente la stessa cosa) viene la-sciato per quei casi in cui si debbano ri-compilare dei moduli che non vengonoesplicitamente chiamati dal programma.

Ancora per il programmatore è stataimplementata la possibilità di creare deimoduli di libreria (.BDO) runtime; primaquesto era possibile solo parzialmentee li si dovevano comunque linkare. Coni nuovi moduli .BDO molte funzionalitàpossono essere preparate una volta pertutte e poi distribuite insieme agli ese-guibili; ad esempio si possono predi-sporre librerie per la gestione dellestampanti, della rete o per la presenta-zione dei dati. File di formati, etichette,

MCmicrocomputer n. 138 - marzo 1994

Page 2: dlASE IVCompiler 2 -  · di Valter Di Dio..... Borland dlASE IVCompiler 2.0 per Dos r-"LU on èpassato nemmeno un anno dalla comparsa del compilatore ((originale» per dBASE che ecco

Ecco come si presenta la nuova finestra di lavoro del compilatore in modalitàShell

Le opzioni di compilazione si attivano con dei semplici check-box. ~

OVERVIEW

dBASE IV COMPILER 20

rapporti, schede e Query possono esse-re incluse in un'unica libreria BOO. An-che i file di preprocesso (OPP) vengonoadesso compilati con estensione BOO.

È stato infine aggiunto il supportoper otto differenti formati di data tra cui,ovviamente, quello italiano.

La ShellForse il programmatore esperto non

si dimostrerà eccezionalmente colpitodalla shell grafica, ma l'utente medioapprezzerà senz'altro la praticità di ave-re in un'unica finestra l'editor, il compi-latore, il linker e il debugger (quest'ulti-mo solo se si possiede il dBASE IV).Sempre dalla shell è immediato ed in-tuitivo attivare gli switch di configurazio-ne sia del compilatore che del linker edaltrettanto semplice è definire le direc-tory di lavoro, i file da compilare e i no-mi da assegnare agli eseguibili

Tutto quello che deve fare l'utentemedio per compilare un suo program-ma in dBASE IV o dBASE III è setta re ilbottone di AutoCompile, aprire il pro-gramma principale, o comunque il pro-gramma che poi chiamerà tutti gli altri,e poi scegliere "build ali" dal menu"compile". In una nuova finestra com-pariranno le informazioni che il BOC staemettendo durante la fase di compila-zione, poi quelle del linker (BOL) edeventualmente i messaggi di errore conla linea del codice che lo ha generato.

In caso di errore non si deve fare al-tro che aprire con l'editor una nuova fi-nestra (peccato che non lo faccia da so-lo) e correggere il .PRG che ha creatoproblemi, salvarlo e rifare la compilazio-ne. I comandi dell'editor sono stati scel-ti in modo da seguire quelli dell'Editcontenuto nel Oos 5 e quindi sono unavia di mezzo tra quelli WordStar e quellidi Windows: i comandi di navigazionesono del WS, quelli di gestione dei bloc-chi usano invece le varie combinazioni

MCmicrocomputer n. 138 - marzo 1994

shift-ins, shift-del, ecc. Usando la shell,in pochissimi minuti, si otterrà un codi-ce eseguibile pronto per essere distri-buito. Il linker crea di default un codicecompresso; cioè che non contiene le li-brerie di runtime che vanno distribuite aparte; se volete invece che queste ven-gano linkate in un unico eseguibile ba-sta andare nel menu Opzioni del Linkere setta re lo switch "standalone".

La semplicità d'uso della shell è taleche è veramente difficile fare errori. Leuniche cose da verificare con un mini-mo di attenzione sono la configurazionedelle opzioni sia del compilatore che dellinker. Tutte le configurazioni scelte dadentro la shell vengono automatica-mente salvate in un file apposito e nonmodificano quelle contenute nei file diconfigurazione del compilatore e dellinker. Questo significa che potete tran-quillamente avere due set di configura-zioni, uno per quando lavorate con lashell e uno per quando lanciate la com-pilazione, o il link, direttamente dallacommand line del Oos.

La configurazioneUn intero capitolo è dedicato ai file di

configurazione (Config.dbl. ma per una

Tabella prestazionidBASE IV Compiler v. 2.0

- Crea 16 o 32 bit .EXE-Compatibile al 100% con dBASE III

PLUSe dBASE IV- AutoCompile e AutoLink intelligenti- Accesso a 4 Giga Byte di memoria- Permette applicazioni single-user in

ambiente multiuser- Supporta vari livelli di password- Gestisce archivi crittografati- Gestisce le transazioni- Non necessita di licenza né di una co-

pia del dBASE

trattazione migliore è preferibile rifarsial manuale del dBASE IV. Il file di confi-gurazione serve a definire una quantitàincredibile di parametri prima dell'avviodi una procedura. Ad esempio vi si defi-niscono i colori da utilizzare, il formatodella data, la presenza e la posizionedell'orologio e, importantissimo, lestampanti e i font.

Il file di configurazione permette dipersonalizzare un programma eseguibi-le senza bisogno di ricompilarlo. Se adesempio un utente sostituisce unastampante ad aghi con una laser Post-Script basta variare una sola riga delConfig.db per aggiornare l'applicazione.

L'uso e la distribuzioneCome già accennato l'uso del compi-

latore è quasi immediato, a patto peròche l'applicazione sia già correttamentefunzionante sotto dBASE IV o OBIII. Amio avviso, comunque, non è consiglia-bile acquistare il solo compilatore vistoche, oltre al debugger, ci sono moltissi-me cose che non si possono fare dallaShell. Ad esempio il compilatore nongestisce i file .PRS di SQL che vannoprima convertiti in OBO da dentro aldBASE IV. Se comunque avete già delleapplicazioni in dBASE e non pensate disvilupparne delle altre, il compilatore vipermetterà di trasformarle in veloci e si-curi programmi eseguibili. La praticitàdell'eseguibile sta infatti, oltre che nellamaggiore velocità e nella minore occu-pazione di spazio su disco, nel fatto chenon essendo presente il sorgente è pra-ticamente impossibile, per l'utente, lamodifica, anche accidentale, dei pro-grammI.

La distribuzione di un programmacompilato è molto semplice; se è statorealizzato con il linker in modalità" stan-dalone" basta distribuire l'eseguibile e,ovviamente, gli archivi, gli indici, le vi-ste, ecc., se invece è stato linkato

225

Page 3: dlASE IVCompiler 2 -  · di Valter Di Dio..... Borland dlASE IVCompiler 2.0 per Dos r-"LU on èpassato nemmeno un anno dalla comparsa del compilatore ((originale» per dBASE che ecco

Da Vulcan a dlASE IV

OVERVIEW

dBASE IV COMPILER 2.0

"compact" si devono aggiungere le li-brerie di runtime: DBASE.RES e, a se-conda del modo di compilazione utilizza-to, DBASE16.RTL o DBASE32.RTL ri-spettivamente a 16 o a 32 bit. Nel casoil vostro codice utilizzi SOL le librerie dadistribuire diventano DBASE16S.RTL eDBASE32S.RTL. La distribuzione di co-dice compact, invece di quello "standa-Ione", permette di risparmiare spaziosul disco nel caso che le applicazioni in

Era il lontano 1981; lontano relativamen-te, certo: alcuni dei nostri lettori all'epocanon avevano ancora imparato a leggere escrivere, per altri i computer erano quellecose sferraglianti e piene di luci ammiccantiche nei film di fantascienza sputavano le ri-sposte su un nastro di carta, e questa stes-sa rivista vedeva la luce solo a settembre.Di sicuro, per l'informatica personale si trat-tava quasi degli albori: i PC IBM sarebberoarrivati l'anno successivo, il Macintosh do-veva aspettare ancora tre anni. I sistemioperativi erano tutti a 8 bit e si chiamavanoUCSD, HDOS, COSMOS, FLEX,CP/M; mol-ti computer addirittura non li avevano pro-prio, come ad esempio l'Apple Il e il PetCommodore che utilizzavano un Basic este-so per sopperire alla loro mancanza.

Eppure nella primavera di quel lontano1981 usciva la prima pubblicità del dBASE Il(come molti sapranno non è mai esistito undBASE l, il nome fu scelto per dare l'impres-sione che il prodotto fosse già maturo). Gira-va, all'inizio, sotto CP/M e solo l'anno suc-cessivo fu portato sotto il nuovo MS-Dosper divenire subito il principale standard nelformato dei database.

Ma ripartiamo un attimo da diversi anniprima e da un nome: l'anno era il 1975 e ilnome Wayne C. Ratliff.

Wayne lavorava per la Martin MariettaCorp. di Pasadena, California, e il nome diquesta città dovrebbe immediatamente farpensare al più prolifico e interessante labora-torio di tutta la storia americana: il Jet Propul-sion Laboratory. Per conto della Martin Ma-rietta, Wayne stava sviluppando un databasedi supporto per le operazionia terra della son-da Viking (che avrebbe raggiunto Marte nel1976). Il programma si chiamava MFILE e,per quanto fosse in sostanza un database,non aveva in realtà nessuno degli attributiche oggi chiediamo a questi prodotti.

La stagione del football stava per iniziaree,come accade spesso in molti posti di lavoro,Wayne ed alcuni ingegneri del JPL avevanomesso su un gruppo per fare un po' di scom-messe. Wayne non era molto addentro algioco del football e così si mise ad elaboraredelle statistiche sulle stagioni precedenti esulle partite in corso. Dopo poche settimaneil pavimento di casa sua era completamentecoperto dai giornali del lunedì, al punto cheera impossibile andare in giro e ancor menocapireiqualcosadi tutti quei numeri. Essendo

226

dBASE siano più di una; infatti i moduli"compact" possono condividere un'uni-ca libreria, mentre quelli standalonecontengono ciascuna la propria copia.

Le librerie sono liberamente distribui-bili e quindi l'utente finale non deve ac-quistare nulla, nemmeno nel caso diuso in rete!

Le utilityInsieme al compilatore e alla MAKE

vengono forniti altri quattro programmi.I primi due, PMINFO e RMINFO, ser-

vono per testare le capacità del compu-

un programmatore decise che questo era la-voro per un computer.

Non avendo idea di quali fossero i dati si-gnificativi, Wayne decise che il programmaavrebbe dovuto essere molto flessibile inmodo da lasciare libero il campo alla speri-mentazione. Nel 1975 sviluppare un pro-gramma significava perforare una granquantità di schede, poi darle in pasto ali'ela-boratore, attendere che questo lo compilas-se, lo linkasse e infine che lo eseguisse. Illavoro del computer durava in genere pochisecondi, ma l'attesa del proprio turno pote-va anche durare ore se non giorni. Per que-sta strada sarebbero passate diverse stagio-ni prima che il programma fosse pronto. Di-menticato quindi il football, affascinato dalfilm 2001 e, naturalmente, da HAL 9000,Wayne si dedicò per alcuni mesi ad un pro-gramma che fosse in grado di comprendereil linguaggio corrente. Spese in questo tem-po e denaro acquistando libri sul linguaggio,sull'intelligenza artificiale, sul calcolo deipredicati e sulla gestione dei database. Allaprima occasione sfruttò le conoscenze ac-quisite per scrivere un programma che, gra-zie all'algebra di G. Spencer Brown, era ingrado di risolvere calcoli proposizionali ope-rando sui dati meteorologici mandati a terradalla sonda Viking, che nel frattempo era at-terrata su Marte. In quell'occasione Waynescoprì gli indici B-tree e alcune tecniche diricerca binaria.

Era ormai il 1976 e un amico mostrò aWayne il suo nuovo «giocattolo»: un micro-computer IMSAI 8080. Wayne rimase lette-ralmente impressionato dalla potenza di cal-colo di quel piccolo computer. Comprò im-mediatamente un kit e passò il mese di no-vembre col saldatore in mano. Ci volle un an-no prima che il computer fosse completa-mente funzionale; otto mesi solo per farsispedire un floppy disk e altri mesi ancora peravere un sistema operativo e un editor chefunzionasse col resto della macchina. A quelpunto si rese conto che i microcomputer era-no del tutto simili ai loro cugini più grandi:certo erano limitati, ma ancoraper poco.

Durante i periodi di tempo in cui Waynenon lavoravaal computer stava ancora rimu-ginando al suo progetto di un database;l'idea era di qualcosa di semplice come MFI-LE, che fosse relazionalecome suggerivanoalcuni articoli di David Kroenke e natural-mente che girasse nei 48K del suo compu-

ter nella gestione del Protect Mode edel Real Mode. Insieme ai file Virtual.txte Perform.txt aiutano a migliorare laconfigurazione del proprio computer inmodo da avere a disposizione il massi-mo delle prestazioni che l'hardware puòsupporta re.

Le altre due, dSPLIT e dJOIN servo-no, rispettivamente, a spezzare un fileeseguibile in segmenti della dimensio-ne desiderata e, successivamente, a ri-comporli. Sono indispensabili per tra-sportare eseguibili di grosse dimensionisenza dover ricorrere allo scomodoBackup/Restore del MS-Dos.

ter. AI JPL avevano un database che rispon-deva alle prime due ipotesi, il JPLDIS; sitrattava di un database semirelazionale concomandi in un linguaggio simile all'inglese.Wayne decise che si sarebbe ispirato alJPLDIS per la sua creatura.

Nel gennaio 1987 cominciò a scrivere uninterprete semplificato dei set di comandidel JPLDIS usando direttamente il linguag-gio assembler de1l'8080. Il Basic lo attiravaper la sua semplicità e potenza, ma non sa-rebbe mai riuscito ad infilarlo in soli 48K(molti dei quali oltre tutto occupati dal siste-ma operativo). Il sistema operativo era il PT-DOS, visto che il CP/M non era ancoraemerso.

Il 29 gennaio 1978, all'incirca a mezzanot-te, nacque il formato DBF: i primi comandiche seguirono furono CREATE, DISPLAY,APPEND ed EDIT. Nel giro di un mese ilprogramma aveva abbastanza primitive daessere usabile: il nome era Vulcan! Nel me-se seguente a Vulcan vennero aggiunte al-tre capacità derivate da JPLDIS, in particola-re l'aritmetica BCD e il calcolo in virgola mo-bile.

Poi il disastro: il floppy disk si ruppe e civollero tre mesi per averlo indietro riparato.Nell'attesa del ritorno del floppy drive Way-ne fece molti piani. Nell'aprile del 1978 misea punto uno schema denominato "total par-sing", che però non venne mai implementa-to in Vulcan; David Fulton fece esattamenteuna cosa simile quando aggiunse la pre-compilazione per aumentare le prestazionidel suo FaxBase.

AI ritorno del floppy drive Wayne decidedi allontanarsi dal modus operandi del JPL-DIS perché questo non permetteva di modi-ficare le variabili una volta assegnate e nonpossedeva i comandi per eseguire dei cicli(ad esempio DO WHILE); persino leIF..THEN..ELSE erano limitate ad un solocomando.

Così prende a prestito comandi un po' datutti i linguaggi del momento: INPUT e"?"dal Basic, DO WHILE dal Fortran, ACCEPTdal Cobol e altri simili. Fu sorprendente ladifferenza che questi nuovi comandi impres-sero Vulcan. Divenne subito una cosa viva,chi lo usava poteva imprimere al linguaggiola propria volontà: poteva scrivere program-mi dentro Vulcan! JPLDIS non aveva maiavuto niente di simile, Vulcan era proprioquello che Wayne desiderava.

Il disastro colpì ancora nella primavera del'79 quando il floppy si ruppe nuovamente.Dopo i soliti tre mesi per la riparazioneWay-ne invitò a casa sua Jeb Long, un program-

MCmicrocomputer n. 138 - marzo 1994

Page 4: dlASE IVCompiler 2 -  · di Valter Di Dio..... Borland dlASE IVCompiler 2.0 per Dos r-"LU on èpassato nemmeno un anno dalla comparsa del compilatore ((originale» per dBASE che ecco

Conclusioni

Come scrissi nella prova del dBASEIV (MCmicrocomputer n. 131) il puntodi forza del dBASE sta nella gran moledi applicativi esistenti e nella possibi-lità di compilare lo stesso identico pro-gramma che sta girando in modo in-terpretato. Non dover cambiare nem-meno una riga nel passaggio tra inter-prete e programma eseguibile autono-mo significa poter fare un debug sulcampo utilizzando tutta la potenza, laflessibilità e la trasparenza dell'inter-prete e poi, una volta eliminati i bug,

matore del JPL, per fargli vedere Vulcan;questi fu immediatamente colpito dalle pos-sibilità commerciali di un simile prodotto so-prattutto dentro al JPL stesso.

Ma il PTDOS stava lasciando il posto alpiù giovane CP/M (il predecessore dell'MS-Dos) così Wayne, per garantirsi un mercatopiù ampio, dovette convertire Vulcan al nuo-vo sistema operativo. Più tardi, sempre nel1979, il JPL acquistò da Wayne una licenzamultipla per l'uso di Vulcan: fu il primo clien-te. Il JPL usò Vulcan intensamente e propriodagli ingegneri del JPL arrivavano continua-mente suggerimenti e avvisi di bug. Propriosu richiesta del JPL Vulcan fu modificato perrenderlo più simile al JPLDIS che loro sape-vano già utilizzare.

Una sera Sta n Brin,un utente assiduo,raccontò a Wayne del nuovo programmachiamato DataStar della MicroPro. Si tratta-va di un data manager a tutto schermo,all'opposto di Vulcan che era a riga di co-mando. Vulcan era divertente, ma non reg-geva al confronto con un prodotto della Mi-ero Pro, gli stessi che avevano creato e sta-vano vendendo il mitico WordStar.

Pochi giorni dopo Wayne era al lavoro peraggiungere dei comandi a tutto schermo.Vennero modificati l'EDIT, l'APPEND e l'IN-SERT in modo da utilizzare una maschera vi-deo chiamata FMT. In seguito all'FMT ven-ne aggiunto il comando "@". Nello stessoperiodo Wayne decise di implementare gliindici e visto che aveva qualche esperienzacon i B-tree incluse un metodo di indicizza-zione trasparente basato proprio su di essi.

Le vendite di Vulcan cominciavano ad an-dare bene. In nove mesi Wayne vendette61 copie del programma. Certo se oggi unodei grossi produttori vendesse solo 60 pac-chetti anche in una sola ora avrebbe seriproblemi commerciali; a quel tempo inveceera un risultato discreto. Senonché, tra ilmatrimonio e il lavoro a tempo pieno al JPL,le ore dedicate a Vulcan stavano diventandotroppo poche. Nell'estate del 1980 si dove-va prendere una decisione: o lasciar perdereVulcan o metter su un sistema commercialecon tanto di ufficio vendite e marketing.

Nel frattempo la Harris Computer di Ft.Lauderdale (Florida) rivendicò la paternitàdel nome Vulcan che loro stavano usandoper un sistema operativo. Anche se Waynecredeva che in tribunale l'avrebbe spuntatadecise che cambiare nome: era preferibilead una causa da 100.000 dollari.

Dopo un po' di telefonate con dei tizi chesi chiamavano Hai Pawluk e Hai Lashlee sidecise un incontro al quale partecipò, oltre a

MCmicrocomputer n. 138 - marzo 1994

compilare un'applicazione "standalo-ne" e consegnarla al cliente, o tenerlaper sé sfruttando la maggior velocitàdell'eseguibile.

Il fatto che il compilatore sia dellaBorland significa da un canto la garan-zia di esperienza e capacità dimostra-ta con compilatori ben più potenti ecomplessi, dall'altro la sicurezza chequalsiasi futura implementazione deldBASE non vanificherà il lavoro finorasvolto.

L'offerta del compilatore in omaggioa chi acquista una nuova copia di dBA-SE IV nei primi tre mesi e lo sconto

Wayne ed ai due, un certo George Tate.Questi videro un demo di Vulcan e dopoqualche giorno decisero di prendere i dirittidi distribuzione per un anno. Seduti nell'uffi-cio di George (il suo garage). Wayne e gliHai cominciarono a pensare al nome delprodotto, al suo lancio pubblicitario e al no-me della società. Hai Lashlee, un genio dellapubblicità di Beverly Hills, creò tutto in unsol colpo: "dBASE /I vs. the Bilge Pump" -by Ashton-Tate! Dal momento che si cam-biava nome si decise anche di aggiungerequalche cosa al prodotto. Venne miglioratala gestione degli overlay, venne aggiunto ilcomando"@" e furono sostituiti i B-treecon i più efficienti B*-tree.

AI JPL Wayne stava intanto insegnandoad usare Vulcan ad una studentessa: Ca-rolyn. In realtà, senza che lo sapesse lei sta-va già usando dBASE Il. Nel frattempoGeorge stava già andando in giro a presen-tare dBASE Il a varie ditte e società. E feceil miracolo. Moltissimi infatti scoprirono perla prima volta le potenzialità di dBASE Il.

Le vendite ufficiali iniziarono nel febbraiodel 1981 e così iniziò l'era d'oro (in ogni sen-so) dall'azienda. George, Hai e Wayne conti-nuarono per tutto l'anno a presentare il pro-dotto e a metter su la struttura commercialedella Ashton-Tate. Verso la fine del 1981Wayne da solo non bastava più per lo svilup-po del prodotto e altri programmatori si ag-giunsero a lui; il primo fu Jeb Long che mo-dificò la gestione dello schermo per suppor-tare i 52 caratteri per riga dell'Osborne, edin seguito convertì il codice da 8080 a 8086per potersi introdurre nel mondo dei PCIBM. A lui seguirono Jim Rowe, Scott Me-sch, John Gainsborough e Perry Lawrenceche lavorarono soprattutto alla nuova versio-ne in C.

Verso la metà del 1982 Wayne lasciò laMartin Marietta per dedicarsi a tempo pienoal dBASE (dove per tempo pieno si deve in-tendere 16 ore al giorno per sette giorni allasettimana). Il risultato fu la versione 2.5 emolte idee per il dBASE 111.

Nei primi mesi del 1983 Wayne scopreche la Ashton-Tate gli nascondeva parte deidiritti che gli spettavano e che metteva ilcopyright A-T a molte cose che in realtà era-no sue. Per farla breve, la Ashton-Tate si ac-cordò con Wayne per lo sviluppo di dBASEsotto Unix per conto della AT& T, ma questavolta avrebbero acquistato da lui tutti i diritti.Wayne ottenne comunque di entrare nellasocietà con il titolo di vice presidente.

Più tardi, sempre nel 1983, la Microriminiziò una campagna pubblicitaria puntata su

OVERVIEW

dBASE IV COMPILER 20

per chi già possiede una qualsiasi ver-sione di dBASE sta a dimostrare l'inte-resse della Borland su questo prodot-to; interesse che mi è stato diretta-mente confermato dagli stessi respon-sabili dello sviluppo del dBASE.

Il prezzo del compilatore, soprattut-to se si tiene conto che è possibile di-stribuire tutte le applicazioni che sivuole senza alcuna royalty, è assoluta-mente giustificato. ~

un prodotto che avrebbe fatto scompariredBASE, si chiamava R:BASE. La Ashton-Ta-te era in difficoltà e Wayne propose un com-pleto restyling del prodotto e iniziò lo svilup-po del dBASE 111;era il 14 giugno del 1984.Il team di sviluppo composto da sei pro-grammatori (Jordan Brown, Alistair Dallas,John Gieselman, Jeb Long, Chip Morton eJim Rowe) aveva lavorato 16 ore al giornoper quattro mesi consecutivi; uno sforzo in-credibile, se si considera anche che il dBA-SE 111era relativamente esente da bug.

Mentre il team continuava lo sviluppo delsuccessivo dBASE 111PLUS, Wayne tornò alsuo passatempo preferito: la comprensionedel linguaggio naturale. Ma non senza getta-re le basi di quello che gli sarebbe piaciutofosse il dBASE IV, nel quale avrebbe volutoinserire i risultati dei suoi studi. Ma GeorgeTate morì nell'agosto del 1984 e Wayne nonsi trovò mai più bene con la nuova direzione,tanto che nel 1986, dopo un anno e mezzodi inutili lavori se ne andò via.

La Ashton-Tate non si riprese mai com-pletamente dalla morte del suo fondatore enel 1989 il dBASE IV arrivò sul mercato nonsolo in ritardo ma, cosa ancora più grave,pieno di bug, tanto da costringere la societàad annunciare per il 1990 una nuova versio-ne priva di errori.

La storia finisce, o meglio ricomincia, nel1991 quando la Borland si fonde con quelche rimaneva della Ashton-Tate (ma forse èpiù corretto dire che la assorbì). L'arrivo del-la Borland ha dato un nuovo impulso allo svi-luppo e immesso nuova linfa nel progettodBASE dapprima con la versione 2.0 deldBASE IV, poi nel 1993 con il compilatore eoggi, primavera del 1994, con la stupefacen-te versione per Windows.

Quest'ultima, dal prossimo rilascio, intro-duce gradualmente i programmatori dBASEal mondo degli oggetti e della programmazio-ne visuale, pur consentendo una completacompatibilità all'indietro del codice e del mo-do di lavorare tradizionale. La completa unifi-cazione a basso livello con Paradox (dBASE eParadox possono infatti liberamente leggerel'uno i file dell'altro) e l'integrazione di database esterni via SOL rendono il modernodBASE uno strumento potentissimo di lavorosoprattutto in ambiente client-server, chesarà lo scenario aziendale tipico dei prossimianni. In quest'ottica dBASE consente di man-tenere l'investimento preesistente in terminidi programmi e programmatori, consentendoad entrambi una facile migrazione al nuovomondo della programmazione ad oggetti sot-to Windows. ~

227