coordinamento di Andrea de Prisco Future Basic 3.0 di Raffaello De Masi

Aneddotistica delle intro- tramontare o cadere. Lui è ri- duzioni degli articoli del De masto lì, pronto a una nostra Masi a parte, non si può chiamata, quando l'abbaglia- negare che la vita sia ben mento di amori più cocenti e più divertente di qualsiasi per questo forse più passeg- barzelletta. Se avessimo geri si fosse quietato. sempre lo spirito di guarda- Già, venti anni fa c'era an- re, dal punto di vista umori- che il BASIC, anzi, diciamoci stico, i mille fatti d'ogni la verità, c'era solo quello. I giorno, ci ritroveremmo, la soliti snob di turno ci faceva- sera, ad essere stati prota- no notare la nostra povertà gonisti di un film in 3D, intellettuale, osannando la Dolby Stereo, che, visto purezza semantica del Pascal nella giusta ottica, "Pane, o la versatilità del Cobol. Ci amore e fantasia" o "Totò, davano degli spaghettari, dei Peppino e la malafemmi- cialtroni, dei sedicenti cono- na" sarebbero, al confron- scitori di linguaggi; e forse to, telenovela di terz' ordi- era vero, ma loro non erano ne. da meglio. Poi è arrivato il Stasera sono uscito presto dallo stu- rullo compressore in un lin- dio; faceva un freddo cane, nonostante guaggio "serio" come il C, il riscaldamento e ho deciso di fare che ha fatto piazza pulita di quattro passi per riscaldarmi, Casa mia tanti voci concia manti al è un po' fuori del paese, giusto vicino al vento, e tal pregevoli rappre- fiume, che oggi è ridotto a un rigagnolo sentanti di cotanta congerie estivo ma che, quando perde la pazien- di sapienti è sparita pratica- za, d'inverno si trasforma in una massa mente nel nulla. impetuosa d'acqua. Con il cappello cal- Eppure il BASIC non è morto; cato in testa e le mani sprofondate nelle ci ha creduto e oggi uno tasche ho fatto il giro della favolosa dei più potenti ambienti, a ragione Atripalda (non è che ci voglia molto, una steso a tutte le applicazioni Microsoft, mezz'ora o poco più), a girovagare tra i è proprio quel cui nessuno, vicoli della parte vecchia, a ritrovare ri- all'inizio, credette. Onore al merito, ec- cordi di ragazzo, quando in quello stes- Alla colo divenuto davvero un ambiente so fiume si andava a catturare, con un completo di sviluppo, altro che linguag- barattolo di latta sforacchiato, e "cc6re ricerca di un tempo gio per principianti. 'e paletta", i girini per i non nativi, o si E Mac? Beh, la mela non poteva es- andava a inventare un'improvvisata par- perduto sere da meno. Ed ecco rinascere, dopo tita a pallone "sotto 'e teglie", un foro Cosa si prova a ritrovare un vecchio qualche anno di silenzio, la terza versio- boario circondato da tigli secolari che, amico? Qualcuno con cui si sono con- ne di un linguaggio che ha accompa- manco a dirlo, oggi non esistono più. E divisi, molti anni fa, divertimento e sfi- gnato questa macchina dalla sua nasci- le grida di quelle partite pomeridiane de, risultati e proponi menti? E tutti ta. Siamo di fronte alla versione 3 di estive, da cui si ritornava fradici di sudo- quelli che, come me, hanno vissuto Future BASIC. re, con un pallone semisgonfio e la l'era pionieristica della microinformatica Chi ha buona memoria ricorderà che preoccupazione di non scalciare, in quel- un vecchio e caro amico lo hanno avu- Future BASIC non si è chiamato sem- lo spazio aperto, qualche" margherita" to, un amico che non ci ha mai abban- pre così. All'inizio era ZBasic, e racco- rinsecchita, mi hanno riaccompagnato a donato, affettuoso e servizievole, forse glieva, sotto lo stesso tetto, tre diverse casa, caldo dentro come dopo un bagno non elegante, ma sincero. E quest'ami- versioni, dedicate al Mac, all'MS-DOS e ai tropici. Insomma, con il piacere di co ci ha accompagnato in tutti questi al TRS-80 (lo ricordate?). Un volumetto aver ritrovato un amico dimenticato. anni, vedendo astri e meteore sorgere dignitoso e pienissimo d'informazioni

184 MCmicrocomputer n. 205 - aprile 2000 ArdtMo Com,.sllione ViSti Altro Aiuto 21:15 F6"3 Reletlse 1.5 Documents • 6 element1 ~ 1 H. disponIbIli IO.Jemenll~ llKdt3ponlbt11

li rlpts Stert Htre futureB •• I,";, RuEdU2,13 Generetor t1el'll9'r& OtbU99'r Il" .•. et1enllli PrOQrem Generetor Gest.lt.eppI2.7.8 to Pn:l9rem With fB";' .•.•r'ion " contenuto del pac- Un ambiente di chetto, con FBasic3 e ~ . HoI, l'innumerevole serie di futureMStCl1 ~ Mecllbrerlu utilitv e documenti di sviluppo in piena regola ~CDn$tentt corredo. L'esperienza di più di quindici anni non è certo cosa da poco; e in questa • versione 3 si vede come i progettisti di raccoglieva una se- questo linguaggio abbiano messo a ~ zione iniziale e tre fB";' Edltor(3 1.5) frutto il lavoro di tanti anni per raggiun- appendici, destina- gere i risultati più avanzati. Se, ai tempi te ai comandi inevi- d'oro, ZBasic poteva stare su un floppy tabilmente differen- e il manuale in una tasca, oggi occorre ti per le tre piat- un CD e di manuale cartaceo, in osse- taforme. Scopo più quio ai più recenti (e nefasti) trend non o meno dichiarato del produttore era ta cerchia di affezionati utenti che lo si parla neppure più; basta un file, per quello di garantire una buona compatibi- hanno continuamente supportato e buona misura generato utilizzando lità e traducibilità tra sorgenti redatti per hanno prodotto pregevoli applicazioni un'applicazione scritta e compilata in questa o quella piattaforma. realizzate con esso. E non c'è da mera- FBasic, per realizzare una documenta- Poi, giunti alla versione 5 dello vigliarsi della cosa, vista la raffinatezza zione che complessivamente mette in- ZBasic, le cose cambiarono; la versione del linguaggio e la grande eleganza del- sieme alcune migliaia di pagine. TRS non aveva certo più alcuna ragione la sua architettura. Giunto alla versione Già, perché proprio di ambiente di di esistere, mentre la versione PC fu li- 3, dopo una scomparsa dalle scene di sviluppo si può parlare. Una volta il cenziata a un altro produttore, Paladin, circa sei anni, ha che ne tentò la rianimazione e l'aggior- oggi, come sem- namento per qualche anno, prima di pre, tutte le carte filo Edlt Commond Projocl Wlndow Scripts Aleco per ottenere di a.ct.GUll sparire nell'oblio. Rimase la versione llM,...... :lo(43 per , che, per l'occasione, nuovo quel succes- chponlb11\ • Claek Globol. File cambiò nome, passando al Future BA- so che tempi più SIC. E la scelta si rivelò giusta e propi- favorevoli e periodi zia, visti poi i risultati. più pionieristici gli •• Ucrlobles

Future Basic ha resistito, negli anni, hanno, nel passato 'Flog for .,., o( ~ S"3 'Sc:Mlwl.iz. basandosi su una neppure tanto ristret- decretato. · •.•il"lÒC* .iz. 'cl ipping reelangle 'Su.-l X laoollon (or 'Slarl Y laoollon (or 'Aadh,1S (Cf" ~lno file Edlt (ommlni! Project WhMI..... Scrtpts Aiuto 21:19 O ==:-::'!IlIIIIIlIlI==l:".!ImlClect.GUll I!!ll!l · • •• TI_ ,..Iat..d Dala lIMNurrlbtor':lof4:! EJI[] 01" gRTOlclobur' 'Real-tl •• Old Hour- DI" gRTOIl$1ln 'Real-li •• Old Minute ~(j,;l~lh 'FICIQ for end af pr'

_ TiM ,..Iated Dala .-3

M •••.•••

DI" fOldb.r 'Recal-li_ Old Hal.r DI" ljlFlTOId1ln 'AeiGI-ll_ Old "',..,.l. DI" roldSee 'Real-li_ Old s.c::oncl

filo Edlt Comm••• d ProjoCI Wln_ Sc~. AIuto 1 • 2 Cl Qect.Ml\fN it,nn- f ~~ lm.....,...,.:lof2 .•' • • ••• • ~II • '-••••.-'L-"'-_-- •••-uw-,-iiiE'it-·) ORF1t Tlo:ciUrr ) ..., Tick.&

..F1I.n.nu • I NIIIDI CUJ6E ..J.OQOUlt"ldcMi J).Iltlt_ - I I F1t Bui hA.lindottUlodtl./11"lCbI rHIE ..J:,lodt"'ll"lCbl ;Sc:n-Il - 95cr'~-20 . • _ Endaf Globol. Fl l. ~ - QScr~-OO

au.. FORlDI.DR ..B IoekCa Ior CfI.L lIfDCC(I.JIlI JI'llleGolOif' TEXT ..c:OI.rlr, 1 O O

P'U", '(5, 20 w Dat. PRI", '<5, 40 • TI •• : PRI", '<5, &O -l1ou:n X : ::::::PRIHT:~~:'(5, ~~~::s-~90), wnous. y :, .' L'editor in azione; si F1t OrowC I o<:kF cx:. Future BASIC 3 - release 1.5 noti la separazione dei I Fn Or"awCladc. commenti, l'evidenzia- BII 8ELB:T zione delle variabili e BII '" delle funzioni, la ge- Staz Software Inc. •• OlalOC)E'*"t stione visuale della Leìsure T,me Drive,3 struttura. UXIL 01" GialogE •.••.• l.DIQI0910 DlamondHead, MS39525-3215 UICfL AI OlalogE •..••• l D,alo9E..-,l .DlfI.lJ8

MCmicrocomputer n. 205 - aprile 2000 185 ~ file Edtt Command Project Wlndow §cripts Aiuto 21:23

O *7 j Ootk.MAIN _. 'EJ~ L_••_- __ :2~_.(_26_7 •••------~----

~fl

Basic era linguaggio per principianti, lil debugger in azione, giusto giusto per costruirsi quelle quat- con le diverse chiama- tro routine; era poi interpretato, aveva i te che permettono di numeri diriga e si "sparava" certe dosi "isolare" le ricerche in base al tipo di struttura

di GOTO che lèvati. E invece oggi i nu- 01" db$ da verificare. db$ ~ ,1lIh • + tt:Xt' t l) meri non ci sono più, ZBasic è modula- au. 1Bl.OSm

fUe Ed" Command Project Window Scripts Aiuto 21:24 ~ \l8 • rile Edit Command Project Wlndow Scripts Aiuto 21:2~ ~ \l8 • Oock./lMIN (lock.MAIN EJlr:I ~-'@ Pftfe,.nu~s ~ ----- 1!3 IL [J "Preferences - .. --- -. > 8 W ••• ,"",,,,I- v•. , I ~ I FNMtnu FiJts I (mrv . ~Di~IDIlUgly •.• Compiltr FNMtnu I Fi," I Entrl,t I . 90(1 ~fK '-- f5( Cob'indlnt ••••••s Zoom'W'indo",.w... D,n ob;p~:ISourc.Code -I Source Code D,n-- <04 Font:!MoniCO r s.ltcttdgr~k: ••.• inv~tt

~ File Ed't Command Project Wlndow Scrlpts Aiuto 21:~ 'Il f!!l • file Ed't Command Project Wlndow SCrlPts Aiuto 21:25 'Il \l8 • Oock.MAIN •• Clock.MAIN

. 6Jlr:I - fu Pn!ferences 8 L 6)10 - .- .. ~ Preferences E .. ,8 rontlDilpllo.tl~ Yw • c~ 1'"_ "...... • . Font I D\splto,l D8ut I Il,,. I ~iltr I Rlt1IM I filH I Entrv . •••(1(. , '- o.(.,tt App1k.ltionre- Ire-3 App~non I ."'- Pop-iJprntflU"P,,",,' D'. D,n ~ ;. r "n- "x ••••••••T.Xl••. ;. IX loc.I1FJr4 IX•.••••• IXIXR\rot_oa__ l5C Toollox",. •••..• "CAU" IX D.fFJr4 '- '- IX•.•.••'" D,n D,n r ...11crwCMckBASCt.M,. :.s. lX~sttrnffl IX•...~ IX""••.• ~ '- Flo.Ur~ po",t dml:ion b forortdbv : r"/" ti" "'" IX Puc.l~ IXHo ••••• ~ G«wo)(FN l>If.,tt(non-pr-ojKt)nII'lt ••.• : FBll '- (i rOf#' rLIt. rUt. D,n (s.r.)

186 MCmicrocomputer n. 205 - aprile 2000 Object font Size Styte Aiuto

gelemenll - IIKdl:sponiblll

"TUe" 1"" "[dit" _IEd_it _

"Open" >:IOp=e=n_=.=_ "Undo" :::1 Un:::d:::O::::::::::::= ObJect fant Size Style Aiuto "Claie" I:=c,=o,=e===: "SelectAII" ~ls-ele-c-tA-Il-~ "S4ve" I~s.=v=e==~ ~.:=..:=:=.:= ..:=:=.:=.:::::;. ~ "Font" IFont "Seve Ai.,." ISave Ai... __ ...._..__ .__ ._ ...__ ._ .._ "Paue Setup_" I Page Setup_ "Slze" I Size "'"Prlnt"" I>:Prl=n=t_=.= -;:::=_-:::::=_-:::::=_-:::::=_-.:::; IQuit "Style" I_styl_e _

PGPROUSH 1M n.-se of 1MH mtnU it_ lo cMI ••.. m •• ifTt stoould ~ ~orNl~'1\I h~ SpKffiI: procd.rt. Ex.-p}t: Iftht -p. StIUf'._," '--=--' ::7u:.~~:::::;;;lJlJ:-p·Sttup.,,-mtnlJTttm,PGvin I cencel)

Program Generator è oggi giunto alla versione 4. 15; si tratta di un otti- mo generatore di cadi .. ce, capace di produrre sorgenti compatti e atti .. mizzati. Conclusioni del programmatore; Ecco un "old one" che ritorna alla esiste la possibilità grande; ormai la programmazione è di- di autocolorazione ventata merce sempre più rara, ma per dei comandi e dei coloro che sanno realizzare, dal nulla le commenti, delle loro applicazioni, semplici o complesse chiamate al che siano, FBasic 3 potrà dare le più ToolBox e di altre ampie soddisfazioni possibili. parole chiave spe- Un ambiente articolato e disponibile, ciali. Il codice sor- anche se a volte complesso, non deve gente viene auto- far paura a chi affronta, per la prima vol- maticamente rientrato a seconda delle ottimizzazione del codice, è possibile ta la programmazione. strutture adottate, opzione nuova, linee scegliere (e cambiare all'istante, alla bi- Il BASIC è il linguaggio ideale per co- lunghe possono essere "spezzate" sogna) la codifica di destinazione del minciare, e lo è sempre stato; ma se usando un carattere di collegamento compilato che verrà realizzato (68K, una volta si credeva, anche a torto, che speciale. PPC o FAT) per destinarlo al tipo di poi per forza di cose si dovesse passare L'ambiente adotta particolari avverti- macchina su cui verrà utilizzato. a idiomi più complessi, oggi non è più menti d'errore per strutture non com- così. piete o regolari, ed è stato introdotto il Pur nell'immenso deserto che oggi è cosiddetto" block remark", che racco- divenuto quello che una volta era un fo- glie diverse linee di commento senza la Il compilatore e l'editor ro di scambi, una palestra di allenamen- necessità di contrassegnarle una per to mentale e logico di grande efficacia, i una. L'editor stesso ha la capacità di se- di progetti rari attrezzi di questo esercizio sono og- lezionare (ed eventualmente eseguire Il compilatore è a due passate, ma gi sempre più potenti. E il BASIC, con riferimenti incrociati) variabili e funzioni rapido ed efficiente; per compilare un Visual Basic in ambiente PC e questo locali, etichette, procedure, strutture di sorgente di cinquemila righe utili abbia- eccellente FBasic in ambiente Mac san- runtime e di ToolBox, e metodi. Il codi- mo impiegato circa sei secondi. Ma ci no dare lustro a una disciplina, ''l'ars ce sorgente può essere "segnato" con preme porre l'attenzione sulla presenza programmandi" un po' decaduta, ma bookmark, ed è possibile maneggiare di un debugger migliorato rispetto alla non per questo priva di emozioni e di blocchi di testo spostandoli a piacimen- versione precedente, pur buona, e so- soddisfazioni. to non solo nella finestra, ma in diffe- prattutto sulla nuova versione del E Macintosh, con questo nuovo renti strutture del progetto stesso. Program Generator, il generatore di pro- gioiello, sa farlo alla grande, rinnovando Grande aiuto al programmatore è la getti nato circa una diecina di anni fa e i fasti di tanti anni fa, quando tutti sape- possibilità di inserire nel sorgente im- che oggi giunge alla versione 4. vano masticare un linguaggio di pro- magini; l'uso principale di questa fun- Si tratta di un pacchetto originale ca- grammazione o almeno leggere un sor- zione è legato essenzialmente ai com- pace di creare, dal nulla, applicazioni gente. E caso ha voluto che questo fa- menti, che potranno contenere, ad complete quasi del tutto agendo con scicolo di MC abbia ospitato anche una esempio, screenshot esplicativi dello mouse e menu. L'ambiente è agile e di prova di un linguaggio C. Oggi è tutto sviluppo del programma. Sempre dedi- facile gestione, anche se non del tutto bell'e fatto, ma perché non rispolverare, cato ai professionisti è una sezione di intuitivo, e produce codici compatti e di per i più vecchi, antichi ricordi e abitudi- script già pronti, che permettono di in- sicura compilazione. Numerosi sono gli ni, e per i più giovani, provare a capire serire nel codice servizi e comandi utili esempi presenti e il manuale, una spe- cosa c'è dietro a un prodotto bell'e fat- (si tratta, generalmente, di funzioni del cie di gigantesco tutorial di un esempio, to, certo eccellente, ma farina di un al- tipo LONG FN); e, giusto nell'ottica di offre numerosi spunti di riflessione. tro sacco? t:i5

MCmicrocomputer n. 205 - aprile 2000 187