Newsgroup: it.comp.macintosh
Titolo: real basic..

Ciao a tutti,  una domanda per le mele mature: qualcuno di voi usa real
basic ? 
come vi sembra? e la pubblicizzata portabilità del codice con win e linux ?
connessione con basi dati ? ecc. ecc. ?
ho scaricato il SDK di apple ma per scrivere i programmi che servono a me
mi pare mostruso... io vengo dal delphi /win di qualche anno fa e
apparentemente mi sfagiola meglio realbasic
ciao
(A)
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it


| |._/|_|\__/\__/\__/ | *Non e' bello cio' che e' bello,
|        /_/ /_/      |  figurarsi cio' che e' brutto.

 apparentemente mi sfagiola meglio realbasic
Intendi dire ObjectiveC + Cocoa?
Peccato. ObjectiveC è un bel linguaggio (anche se IMHO ormai è
sorpassato da Python o da Ruby, per esempio per la mancanza dei
namespace).
Oppure davvero puoi usare Python o Ruby + Qt o altra libreria grafica di
tua scelta, non ultimo Cocoa.
Poi ad ognuno il suo, my two cents.
-- 
blog:  
http://www.akropolix.net/rik0/blogs
 | Uccidete i filosofi,
site:  
http://www.akropolix.net/rik0/
      | tenetevi riso e
forum: 
http://www.akropolix.net/forum/
     | bacchette per voi.

 apparentemente mi sfagiola meglio realbasic
E quali sarebbero i programmi che servono a te?
Ho testato RealBasic tempo fa e mi ha dato l'impressione di essere
(similmente a VB su Win) una buona soluzione per lo sviluppo rapido e
semplificato di applicazioni di piccole dimensioni.
Obj-C, Cocoa, Qt, etc.. si rivolgono a sviluppatori più esigenti (e
intransigenti), con una conoscenza di base avanzata o comunque
disponibili ad affrontare una curva di apprendimento più impegnativa.
Linguaggi di scripting come Python e Ruby sono ottime soluzioni
intermedie: linguaggi potenti e puliti ma meno immediati di RealBasic
sotto alcuni aspetti (ad es. la realizzazione di GUI).
Un buon compromesso per te potrebbe essere Java con un'IDE tipo
NetBeans: tutto free, multiplatform, con un livello di complessità che
puoi gestire a tuo piacimeno e un mare di doc/tutorials e
quant'altro...

 quant'altro...
Java non č mai un buon compromesso :-P
-- 
Lawrence - 
http://www.oluyede.org/blog
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier

 Java non è mai un buon compromesso :-P
...eh eh... sono anch'io allergico a Java ma cercavo di essere
"policitally correct" ;-)

 quant'altro...
Insomma... Java ha un livello di complessità con tendenza ad esplodere
in ogni momento :)
Su NetBeans sono d'accordo, le GUI sono semplici e tutto. Ma Java è un
linguaggio inutilmente complicato per molte cose.


 
Qualche tempo fa ho avuto più o meno le tue stesse esigenze (anch'io 
pasticciavo con Delphi) e  e cercavo un sostituto o qualcosa che gli 
somigliasse. Di Realbasic non ne ho sentito parlare un gran bene, non tanto 
in quanto "basic", proprio in quanto Realbasic. Comunque non l'ho mai 
provato.
Trovai questa alternativa, sempre visuale, con un suo linguaggio 
(transcript), ma non ho più approfondito per mancanza di tempo. Chiesi anche 
informazioni sul NG, ma mi sa che lo usano in pochi. Prometteva bene come 
approccio visuale, sul linguaggio sottostante trovai quasi niente, se non 
quello che c'era nel loro sito.
Si chiama "Revolution" e lo trovi qui:
http://www.runrev.com/
 
-- 
"Sono quel che sono"
Braccio di Ferro

 
http://www.runrev.com/
 
beh tra i due linguaggi preferisco di gran lunga il basic di rb.
-- 
www.malcom-mac.com/blog
software development for Mac/Win
nemo - cocoa newsgroups reader for macintosh

 brevissimo tempo.
Beh immediati non credo, non interface builder. Per quanto ormai ci
lavori quotidianamente da anni non riesco a definirlo immediato, non per
qualcuno alla prime armi almeno.


 connessione con basi dati ? ecc. ecc. ?
Una figata colossale
Ciao :D
-- 
Ely
Thank you! Namaste! Good Luck!

 del programmatore della domenica specializzato in batchfiles.
tutto questo, a te, due settimane fa? :)


 del programmatore della domenica specializzato in batchfiles.
grandi cose i batchfiles. :)
-- 
Yoda of Borg am I! Assimilated shall you be! Futile resistance is, hmm?

 beh tra i due linguaggi preferisco di gran lunga il basic di rb
Non li conosco nessuno dei due, non ho più fatto in tempo ad approfondire il 
mio iniziale interesse... era solo per dargli un'alternativa a quanto già 
postato.
Però quel "transcript" mi lasciò parecchio perplesso, soprattutto quando 
tutte le ricerche di Google mi rimandavano allo stesso sito della casa madre. 
Mancavano anche dei testi di riferimento, dei manuali, se non ricordo male.


 qualcuno alla prime armi almeno.
Io invece lo reputo semplicemente il miglior GUI builder con la
possibile eccezione di quello di visual studio. E non sono certo l'unico
a pensarla in questa maniera.


 Mancavano anche dei testi di riferimento, dei manuali, se non ricordo male.
Il transcript non è altro che l'evoluzione del linguaggio di scripting
di Hypercard e poi di Metacard, più che sconosciuto direi dimenticato.
Testi di riferimento ce ne sono pochi ma ce ne sono, sono cartacei e si
acquistano come qualsiasi altro manuale.
Lo trovo molto più rapido del basic, sia come scrittura che come curva
di apprendimento, però li ho studiati in momenti diversi e l'uno con
l'esperienza di base dell'altro, quindi non saprei dire se la mia
impressione è solo tale.
Oggi ho acquistato Revolution approfittando di uno sconto, l'unica pecca
che gli rimprovero è di costare troppo in UE rispetto agli USA
(considerato che è software europeo).
-- 
Per contattarmi:
http://formmailto.com/saltydog

 Una figata colossale
Se posso dire la mia piccolissima esperienza ...
Ho fatto qualcosina alla veloce con RB una interfaccia per OSX circa 3
anni fa per collegarsi ad un registratore di cassa Sweda attraverso la
seriale ( classica dei vecchi Mac ) ed utilizzando la KeySpan ... poi
"ho tentato" di riutilizzarlo per altre cose, ma non sono per niente
soddisfatto SOPRATTUTTO sulla questione DB ... sì certo in giro si
trova di tutto, ma la mia era una necessità ... potermi interfacciare
con MS SQL e i driver che offrono ( a pagamento fra l'altro ... ) non
ti fanno andare più in la di qualche query di visualizzazione, se devi
interagire ( come dio comanda ) con il DB ( sto parlando di MS SQL )
... allora escono i limiti di RB.
Se non ci sono obblighi allora la scelta aumenta ed è abbastanza
utilizzabile ... ma ormai non lo uso più ... non mi piace e non fa
quello che cerco ...
Proprio ieri mi è arrivata la 2.d edition di Python in a Nutshell di
Alex Martelli, e questa volta VOGLIO mettermi come si deve e imparare
Python, credo e spero che faccia al caso mio.
saluti a tutti

 Python, credo e spero che faccia al caso mio.
Fa un po' al caso di tutti, anche se non tutti lo sanno :)


 Python, credo e spero che faccia al caso mio.
Sicuramente. Secondo Amazon la mia copia è in giro per il mondo


 Python, credo e spero che faccia al caso mio.
temo che il Martelli non sia il testo migliore per *imparare* il Python.
-- 
Ay que mal los dedos...

 Secondo Amazon la mia copia è in giro per il mondo
Anche la mia .-)
Da quando ho visto che è stata spedita NON hanno fatto più nessun
aggiornaento ... e mi è arrivato 1 giorno prima rispetto alle
previsioni ...
L'importante è che sia arrivato sano ... se me lo avessero cnsegnato
oggi ... con tutta l'acuq che a buttato stanotte/stamattina ... temo
proprio che sarebbe arrivato ... MOLTO umido ...
vedrai che arriva presto! :-)
salù

 in ogni momento :)
E non è bello per questo? se non fosse che la VM fa cagare sandali, lo
userei al posto del c o del linguaggio macchina, a morte i mangiatori di
quiche.
-- 
niuno

 quiche.
Che senso ha la tua asserzione?


 temo che il Martelli non sia il testo migliore per *imparare* il Python.
Effettivamente il Nutshell non č un testo per principianti assoluti ma
se hai una buona dimestichezza con la programmazione ce la puoi fare.
Determinazione ragazzo mio, determinazione :D


 tutto questo, a te, due settimane fa? :)
Tutto questo a me ogni volta che oso dire che il basic e' un linguaggio
di programmazione (ma no! Serve a imparare! Ma no! Al massimo puoi farci
dei piccoli batch! Ma no! I programmi poi non funzionano! Ma no! C'e'
solo sul commodore 64! Ma no! Lo dicono tutti i veri esperti! Ma no! Il
<linguaggio azteco a scelta> E' MEGLIO!) .-D


 grandi cose i batchfiles. :)
Yessah. Con un po' di codici escape si riusciva a simulare un programma
vero, con tanto di schermate pseudografiche .-)
E, si', ho dovuto *anche* specializzarmi in batchfiles .-D
(Che, ovvio, non sono programmi ma soltanto sequenze di istruzioni per
comandare un computer 8-D)


 ... allora escono i limiti di RB.
O forse escono i limiti delle librerie. Come puo' essere "limitato" un
linguaggio che non fa altro che spedire comandi a una libreria *nella
sua lingua*?
Come dicevo piu' su o forse in un altro thread, dopo 4 giorni di
ricerche non ero riuscito a trovare una libreria SQLite, ne' per PC, ne'
per Mac, che non mi richiedesse di installare nuove carissime versioni
dell'OS (sul Mac) o versioni claudicanti e poco piu' che beta di vari
linguaggi (sul PC). Alla fine l'unico era RB con la sua libreria
gratuita e integrata nel pacchetto demo, gratuito pure lui.
Se ho una lamentela su RB sono due .-D:
1) costa un botto;
2) in Italia e' distribuito da un branco di spammer: mi tocca ordinarlo
in Germania.
Poi non so con MS SQL, ma con SQLite (che comunque conosco solo per
averci lavorato la settimana scorsa) non vedo possibilita' di fare altro
che "qualche query", cioe' leggere, e scrivere. A *quello* serve un
gestore di db: le elaborazioni si fanno con un linguaggio vero.
In teoria per il lavoro che dovevo fare sarebbe bastato un interprete
SQLite e un uso smaliziato del SELECT annidato; in pratica e' meglio
lasciar perdere: nessuna affidabilita', sintassi ballerina, controllo
sulla macchina vicino allo zero.


 Che senso ha la tua asserzione?
Rilassati amico.
-- 
niuno

 Fa un po' al caso di tutti, anche se non tutti lo sanno
Farebbe.
Ma non tutti quelli che hanno bisogno di sviluppare una semplice
applicazione hanno il tempo e la voglia di studiare da zero un
linguaggio all purpose del livello di Python, mettere insieme tutte le
varie componenti che servono a produrre un'interfaccia grafica decente,
affrontare scelte davanti a più alternative possibili.
Spesso si ha bisogno di un ambiente di sviluppo rapido, facile e pronto
all'uso come fosse un programma da ufficio, altrimenti non si
spiegherebbe nemmeno l'esistenza di PythonCard (che pure richiede la
conoscenza di Python) e simili.
Insomma, è un discorso di praticità, si può essere disposti a pagare in
termini economici ed etici.
La persona che ha postato la richiesta originaria parlava di Delphi e
IMHO si potrebbe anche inquadrare nella figura che ho descritto.
Tu sei programmatore, conosci diversi linguaggi e ammetterai di essere
in una posizione privilegiata dal punto di vista delle basi e della
capacità di apprendimento; devi anche capire che c'è una varietà di
esigenze e di disponibilità (da medie a minime) estremamente più vasta
rispetto al modello del programmatore professionista o aspirante tale.
A volte uno dice "vorrei imparare a programmare" ma in realtà ha solo da
risolvere specifici problemi.
Del resto, se la realtà non fosse così variegata, se non ci fosse gente
che è disposta a pagare piuttosto che risolvere con le proprie forze un
problema, i programmatori penso sarebbero tutti filosofi squattrinati.
A proposito di "pagare", sono convinto che ci siano delle spese minime
da affrontare prima di acquisire un'esperienza comparabile con la tua
nel campo della programmazione (immagino che sia quasi inevitabile
pagare tasse, libri, bollette, magari qualche software e forse ancora
altro). Anche il produrre una semplice applicazione con Python potrebbe
essere monetizzato e questo andrebbe messo in conto quando si
confrontano le alternative.


 Rilassati amico.
Guarda che ho solo chiesto cosa stai cercando di dire. Non ho
semplicemente capito.


 problema, i programmatori penso sarebbero tutti filosofi squattrinati.
Vale lo stesso discorso con qualsiasi tipo di professione.


 Fa un po' al caso di tutti, anche se non tutti lo sanno :)
:-)))
Avrei preso più che volentieri anche la prima edizione, ma visto che
ormai doveva uscire la seconda ... prendere per prendere ... parto con
il 2.4 .-)
Ora non mi resta che mettermi sotto! :-)
E cominciare a "sgonfiare" su iclp :-)))
salù


Ma di programmazione ... *non* ... credo di essere proprio a digiuno
... non voglio sopravvalutarmi, ma non volevo un testo di quelli
terra-terra ... i cicli, ricorsione ecc ecc ... programmazione ad
oggetti, eventi ... ecc ecc ... so cosa sono ... il mio obiettivo
IMPARARE python ... poi nei post a cui ho partecipato mi piace come
Alex spiega le cose ed non aspettavo altro che uscisse questa edizione.
saluti

 abbiano uno spazio in un mercato?
C'è un equivoco di fondo, non li considero programmatori veri e propri
ma non penso nemmeno che si improvvisino tali; sì, ritengo giusto che
abbiano uno spazio, uno spazio che non è quello del programmatore puro.
Ci sono molte sfumature tra il bianco e il nero, l'errore è sempre e
solo quello di non riconoscere i diversi ambiti di applicazione delle
diverse capacità.
E comunque come giustamente dici tu il mercato alla fine non premia le
scelte sbagliate.
Se faccio multimedia e conosco a menadito il Lingo, non ho forse diritto
di lavorare anch'io? Devo farmi da parte e consigliare al mio posto
qualcuno con delle buone basi di C? Non avrò il diritto di definirmi
programmatore, ma paragonarmi ad un cancro del mercato mi pare
eccessivo.
Comunque il mio messaggio precedente era fortemente influenzato dal
fatto che ho appena speso un botto per acquistare il mio nuovo RAD,
dovrò pure giustificarmelo in qualche modo no? :-)


 a pensarla in questa maniera.
spe siamo in due ovviamente, ma non credo sia intuitivo come quello di
realbasic, o almeno l'accoppiata xcode+ib non può, per forza di cose,
rivaleggiare con rb. che poi per persone con più esperienza rb sia un
giocattolo non ho niente da obiettare, ma per quanto l'ho usato fa bene
il suo sporco compito....anche se le ultime versioni dell'ide sono
parecchio lente (l'ultima decente su win è 2005, su mac dobbiamo
scendere alla 5.5).


 dovrò pure giustificarmelo in qualche modo no? :-)
Ahahaha :-)


 gestore di db: le elaborazioni si fanno con un linguaggio vero.
Perfettamente daccordo.
Ma la mia esigenza era di fornire un tool di amministrazione a distanza
che si interfacciasse via rete o web e modificare ( inserimento,
cancellazione, modifica ) il DB da cui un sito prelevava le varie parti
per costruire le pagine, una sorta di amministrazione web.
Il limite è venuto fuori quando ho "tentato" di "uploadare" le
immagini ... ho risolto poi con un web server, ma non era quello che
volevo quindi ho abbandonato RB ed ho fatto il tool di amministrazione
via Browser che anche se non è la migliore delle scelte ha sopperito
perfettamente alle esigente di quel momento.
Amministrare a distanza ( piattaforma indipentente ) i dati di un sito
web.
Ora VOGLIO imparare python e man mano portare quello che ora sto
facendo anche su peecee TUTTO su Mac .-)
salù

 volevo
Mai avuta questa esigenza, ma mi pareva che fosse ben messo anche quanto
a telecomunicazioni. In tempi abbastanza remoti avevo letto di
applicazioni web, news e mail sviluppate in RB - non so con quale
risultato .-D


 PHP è considerato un programmatore.
Il problema e' che anche chi sa usare un qualunque cugino del C e'
considerato programmatore a prescindere dalle schifezze che produce
(spesso credendosi dio in persona perche' sa usare le parentesi).
In compenso chiunque usi uno dei linguaggi maledetti (quelli leggibili,
insomma) e' considerato un idiota altrettanto a prescindere.
Come dire che le mie patate sono migliori delle tue perche' le vendo in
franchi svizzeri.


 scendere alla 5.5).
Peraltro dove la troverei la 5.5? Non la vendono più mi pare.


 E non è bello per questo? 
Il fatto che la complessità possa aumenti in modo incontrollato?
In genere no, a meno che uno non venga pagato ad ore.


 il 2.4 .-)
Infatti hai fatto bene. Che la seconda edizione l'ho in ordine anche io,
anche se temo arriverà in settembre.


 confrontano le alternative.
Certo. Il vantaggio di Python è che è estremamente immediato.


 previsioni ...
Dove lo hai comprato? Quanto ci ha messo? Nel caso cancello l'ordine e
lo rifaccio da te.


 gestore di db: le elaborazioni si fanno con un linguaggio vero.
SQLite è appunto lite. Un db relazionale normale ti aspetti che supporti
transazioni, joint varie, stored procedures e chi più ne ha più ne
metta. E ti aspetti che il driver SQL le supporti. 
Tipicamente è considerata buona pratica fare fare quanto più possibile
al DB. Le sue funzioni sono testate e collaudate, il codice applicativo
che stiamo scrivendo invece è da testare e collaudare: costa molto meno
usare tutto quello che il DB offre. 
D'altra parte chiediti perchè si spendono svariati milioni per Oracle e
non si usa tutti SQLite.


 Alex spiega le cose ed non aspettavo altro che uscisse questa edizione.
Infatti secondo me per un programmatore minimamente skillato il Nutshell
è il non plus ultra. Certo, per un principiante assoluto meglio altri
testi.
Il migliore che ho sfogliato è "Learning To Program" di Pine (ma è su
Ruby).


 Ma questo lo offre Python!
Non c'č verso, continui a volare troppo alto.
Se Python nasce per i non programmatori ha fallito il suo scopo, non č
paragonabile ad un programma da ufficio, si tratta di un linguaggio di
programmazione con tanti strumenti separati da conoscere e percorsi
diversi da seguire, se vuoi farlo funzionare.


 Peraltro dove la troverei la 5.5? Non la vendono più mi pare.
no infatti ma era l'unica dove se dovevi fare qualcosa non dovevi
maledire tutto il team di sviluppo. ora è lentissimo sia in rosetta che
no... e il fatto che non abbiano ancora tirato fuori una release UB è
davvero una cosa oscena.
La notizia che la prossima major release sia basata su cocoa è buona
cosa ma spero che facciano grossi passi sull'IDE. Però vabè in fondo
pazienza per quel che lo uso potrei avere ancora la 3.


 diversi da seguire, se vuoi farlo funzionare.
per le gui su mac ub che c'č?


 lo rifaccio da te.
L'ho pre-ordinato su 
amazon.com
 il 29 giugno, doveva essere disponibile
nella prima settimana di luglio, ma facendo il preordine si risparmiava
ancora qualcosa.
Alla fine spedizione compresa è costato 34euro ( spesi MOLTO bene :-)
... )
Come tempistiche sono stati perfettamente di parola, io ho scelto la
più lunga 15gg dal momento in cui era disponibile perchè oltre che
costare meno, non avrei avuto assolutamente tempo ... ora cercherò man
mano di ritagliarmelo ... :-)
Dal web-tracking è stato spedito il 20 luglio con consegna il 3
agosto, è arrivato il 2 prima di mezzogiorno.
Spero di esserti stato utile .-)
saluti

 per le gui su mac ub che c'è?
Dicevo che ho appena preso Revolution.


 insomma) e' considerato un idiota altrettanto a prescindere.
Potremmo azzardare che chiunque abbia usato un PC è un esperto in Italia
(basta vedere la quantità di iscritti a informatica all'università :P)


 risultato .-D
Immagino ...
salù

 In genere no, a meno che uno non venga pagato ad ore.
Ah! perchè nessuno ricorda la bibbia del vero programmatore.
-- 
niuno

 diversi da seguire, se vuoi farlo funzionare.
Visto che è tutt'oggi usato da moltissim "non-programmatori" nei campi
più diversi, la tua affermazione mi pare alquanto ridicola. Non solo, ma
sei la prima persona che conosco che dice una cosa del genere.
Inoltre, con la possibile eccezione di Ruby, non mi viene in mente un
altro linguaggio altrettanto facile da imparare.


 ancora qualcosa.
Ok. Allora non vale. Se anche me lo facessi mandare dagli Yankee invece
che dagli inglesi non credo avrei vantaggi. Aspetto e basta. :)


 risultato .-D
Che non ce ne è in giro praticamente neppure una. Tra l'altro Malcom
aveva riportato una notizia abbastanza interessante, ovvero che
un'applicazione da lui scritta in RB la aveva dovuta abbandonare perchè
terribilmente lenta.
Ora in se e per se Basic non è computazionalmente più lento di altri
linguaggi (leggere: gli interpreti basic in genere pur non essendo
velocissimi hanno comunque performances adeguate alla maggior parte dei
casi / il compilato generato a partire da sorgenti .. etc etc etc).
Mi viene il dubbio che RB in particolare sia poco efficiente nella
gestione di roba di rete. Il che spiegherebbe anche perchè nessuno o
quasi lo usa per tali scopi.
L'ultima ipotesi è che la colpa fosse di Malcom, ma allora verrebbe da
chiedersi come mai in ObjectiveC le cose che fa funzionino egregiamente.
Comunque visto che è in questo stesso thread, spiegherà lui stesso dove
ha trovato il problema.


 Ah! perchè nessuno ricorda la bibbia del vero programmatore.
Sono scherzi da bar, in effetti, più che una bibbia.


 (considerato che è software europeo).
Se non ricordo male eri uno dei pochi che mi avevi risposto, a suo tempo, 
quando chiesi informazioni a riguardo.
-- 
"Sono quel che sono"
Braccio di Ferro

 possibile al DB.
Era un approccio invalso nelle vecchie applicazioni two-tier (ed era 
sbagliato anche allora), ma oggi avviene esattamente il contrario.
Ciao, Emanuele.
-- 
What does VISTA mean?
Viruses, Infections, Spyware, Trojan horses & Adware.

 altro linguaggio altrettanto facile da imparare.
Beh, questo forse può essere dovuto ad una tua lacuna, essendo
programmatore esperto in più linguaggi ti riesce probabilmente difficile
calarti nei panni di un principiante della programmazione.
Il basic io lo trovo già molto più semplice, ma sono io stesso
influenzato dal fatto di averci programmato fin dagli albori (su Apple
//e e su C=64); comunque c'è decisamente di meglio. Il Transcript ha una
sintassi molto semplice, vicina per certi versi al Pascal, anzi è molto
più vicino al linguaggio naturale (quello umano intendo); a parte il
discorso sulla sintassi, la compilazione al volo impedisce di fare
errori, solleva l'autore dal preoccuparsi della maggior parte delle
regole e gli consente di concentrarsi sullo scopo; nell'ambiente di
sviluppo si lavora direttamente con le mani sugli oggetti e in pieno
contatto con la realtà, visto che le routine funzionano mentre le
scrivi; si vedono passare tutti i messaggi relativi agli eventi, puoi
intercettarli e modificarli al volo come se stessi giocando col meccano
o coi lego.
Per la mia piccola esperienza il pitone è tutta un'altra cosa, nemmeno
lontanamente paragonabile; probabilmente è proprio come dici tu... è una
roba da scienziati.
Transcript è semplice e potente, Revolution è comodo e rapido.
Ma se tu non hai provato un linguaggio è difficile che ti venga in
mente; è altrettanto difficile che riesca io a spiegartelo, non ho la
caratura tecnica per comunicare a certi livelli. Magari leggi un po' di
documentazione ufficiale se trovi il tempo, sta tutto a portata di mano
(e io questo proprio non riesco a considerarlo un difetto).


, suddivisa
tra pubblicazioni cartacee acquistabili, articoli sul sito e sulla
newsletter, materiali scaricabili vari e soprattutto la documentazione
online cui si accede scaricando la demo del prodotto e registrandola
gratuitamente. Tutto questo è comunque un corollario non indispensabile
quando consideri che la documentazione presente nella demo è
perfettamente sufficiente a conoscere a fondo tutte le caratteristiche
del linguaggio oltre che dell'ambiente di sviluppo.
Il testo cartaceo di riferimento per andare a fondo è da sempre
"Software at the Speed of Thought" di Dan Shafer, nelle sue varie
edizioni che seguono l'evoluzione di Revolution.


 <linguaggio azteco a scelta> E' MEGLIO!) .-D
in effetti in questo thread è la tendenza maggiore :P
-- 
Ely
Thank you! Namaste! Good Luck!


| |._/|_|\__/\__/\__/ | *Non e' bello cio' che e' bello,
|        /_/ /_/      |  figurarsi cio' che e' brutto.

 sbagliato anche allora), ma oggi avviene esattamente il contrario.
Whew. Per un attimo il mio mondo si era capovolto .-D


 o coi lego.
VLM! (cioe' "inppn yn zreqn!") .-D
Vuoi dire che anche li' puoi modificare i programmi *mentre* girano?
Questa e' in assoluto una meraviglia, mi era piaciuta gia' alla
presentazione di xcode.


 Vuoi dire che anche li' puoi modificare i programmi *mentre* girano?
"With most low-level development tools, and even high-level tools like
dtksh and Tcl/Tk that lack Integrated Development Environments (IDEs),
every time you have to change the user interface or scripts of an
application, you have to stop running the application, make the change,
and then restart it from the beginning to see the changes. Even worse is
that with low-level languages (like C/C++/Java/BASIC), you have to wait
for a compilation phase to complete before you can restart the
application.  Since most changes are made to areas in an application
that require several actions to get to, the developer must execute those
actions over and over again while developing and debugging the
application. This process is an enormous waste of time, and takes most
of the fun out of developing applications.
Revolution has the very unusual ability to save all of this tedious
restarting and navigation through the interface to get to the part under
development. Instead, the developer can make changes to the layout or
scripts in an application while that application is running. This saves
enormous amounts of development time, and allows productivity unmatched
by any other language or development environment."


 sbagliato anche allora), ma oggi avviene esattamente il contrario.
Puoi ampliare un po' il discorso? Mi interessa. 
S.
-- 
Stefano Rodighiero      |  
http://larsen.perlmonk.org
mailto:
lar...@perl.it
   |  Italian Perl Mongers: 
http://www.perl.it

 sbagliato anche allora), ma oggi avviene esattamente il contrario.
No. Mi dispiace, ma ci sono un sacco di cose che *deve* fare il db.
O vuoi venirmi a dire che è meglio farsi le transazioni a mano?
Dimmi anche che db usi, tanto per capire se effettivamente la cosa può
avere senso (non tutti hanno un supporto decente per tutto).
Poi magari ci facciamo anche l'integrità referenziale. Tanto è stato
anche detto da un capoccia di un noto database che le foreign keys non
servono a nulla...
[ che poi per assurdo con molti framework a che livello vengano fatte le
cose al programmatore non interessa... penso a Rails e al fatto che
comunque molti vincoli sono gestiti a livello di codice, ancora una
volta ampiamente testato, o eventualmente a livello di db, ma comunque
per chi scrive l'applicativo soprastante la cosa è irrilevante. ]


 that with low-level languages (like C/C++/Java/BASIC)
Huh? Il BASIC un linguaggio low-level?


 BASIC un linguaggio low-level?
È tutto relativo... :-P


 presentazione di xcode.
Guarda che è assolutamente standard come cosa. Lo puoi fare sia in
Python che in Ruby per dirne uno. Ed in effetti lo puoi fare da circa...
boh, tipo 12 anni e passa. Anche in Perl dovresti poterlo fare, anche se
non è pratica molto comune.
Smalltalk a sua volta aveva questa caratteristica anche nei primi anni
80 eh... 


 restituire i dati da qualche comando.
Non esiste il concetto di "estensione"? "libreria"? Perchè piuttosto che
passare il controllo all'OS, lanciare un altro processo, gestirsi tutto
il passaggio dei dati... insomma, non sono del tutto sicuro che sia il
modo migliore.



Confermo!
Come segnalato precedentemente in un mio post, ma potete anche andare a
vedere sul newsgroup interessato ( realbasic ... non ricordo ... ) ho
proprio visto i limiti dei driver ODBC e di RealBasic proprio
interfacciandomi ad un DB.
Il DB in oggetto è MS SQL e TUTTO è fatto sul DB tramite Stored
Procedure ... l' UNICA cosa che doveva fare l'applicativo ... era
passare i dati ... al resto pensava il DB ( quindi gestione dei
conflitti, blocco in scittura se aperta in lettura e viceversa ... )
che ... per il mio modesto parere è un gran comodità.
Certo bisogna scrivere del gran codice anche sul DB, ma Vi garantisco
che il tempo "perso" per fare la varie SP si recupera in un attimo
quando si realizza l'applicativo, perchè ormai è fatta ... inoltre se
succede qualcosa, si sa subito dove intervenire e mettere le mani,
voglio una colonna in più? aggiungo alla SP ... l'applicativo NON
cambia ... comodo no?
Dove ho visto i limiti? "tentanto" di passare una immagine ... non c'è
stato verso! ne con il codebase64 ne con "truschini" di terze parti ...
una volta arrivata alla SP e messa in un campo non veniva visualizzata
correttamente oppure dava direttamente un errore SQL ...
saluti


Questa comparazione è basata sulla teoria dei "Function Points".
"A function point is a unit of measurement to express the amount of
business functionality an information system provides to a user."
I vecchi Basic come Language Level stavano attorno al 3. 3.25 il GW
BASIC per dire. C stava attorno a 2.5. Ma già C++ arriva a 6.
Un vecchio Python di quasi 10 anni fa era già 15, però. E il linguaggio
Python si è evoluto *tantissimo* da allora.
Objective C invece fa 12.
Il più recente BASIC dell'epoca arrivava ad 11 (parliamo del VB). Per
inciso la misurazione a Function Point è assolutamente inadatta a
misurare un linguaggio come VB: VB prende un buon punteggio non tanto
per la sua capacità di *linguaggio*, quanto per la libreria di MS.
In pratica probabilmente usando gli stessi criteri ma applicati ad un
altro insieme di problemi test avrebbe fatto "molto peggio". Perchè dico
questo? Guarda tutti i linguaggi della famiglia Visual come fanno
punteggi alti: Visual C++  per dire arriva a 9.5 e come *linguaggio* non
cambia dal C++, solamente ha la libreria di MS dietro.
Questo cosa vuole dire? Vuole dire che misurare l'espressività di un
linguaggio attraverso questo sistema è abbastanza impreciso. Linguaggi
DSL o giù di li prendono punteggi spaventosi, e vabbè e "ambienti" con
una libreria molto buiseness oriented "scalano" le classifiche.
Diciamo che la cosa ha in se validità solo sui linguaggi "puri", in cui
vedi la capacità del linguaggio di esprimere effettivamente concetti in
meno linee di codice. Oppure avrebbe validità se per i "linguaggi" puri
facessero la misurazione usando le librerie comunemente disponibili (per
questo vedi C++ prende 6 e VC++ prende 9.5, solo perchè la libreria del
C++ standard è un sottoinsieme -- beh, all'epoca non era nemmeno vero,
diciamo che aveva intersezione non nulla -- con quella di VC++, ma nella
comparazione non venivano considerati componenti abbastanza comuni nella
programmazione C++).
Come linguaggio BASIC è chiaramente indietro. Perchè per quanto a te
sembri "alto livello", in realtà astrae pochissimo.
L'unica vera astrazione che hai è sulla manipolazione di stringhe (che
sono un tipo di dato loro). Non puoi creare "oggetti" (no, i record non
sono oggetti, sono struct, una cosa di livello inferiore). E dovresti
avere anche gli array come tipo di dato direi in quasi tutte le
implementazioni.
Ma questo per un linguaggio di alto livello è la base. Il minimo
sindacale e offrono in effetti tutti molto ma molto di più.


 cambia ... comodo no?
Quello che penso intendesse dire Emanuele (adesso ho capito), è che
questo approccio non è estremamente comune. Non più.
Io invece pensavo al fatto che volesse un DB liscio che non facesse
quasi nulla.
Nella programmazione agile, il db è considerato un "dettaglio
implementativo". E se buona parte dell'applicazione (tramite stored
procedures) gira nel DB, evidentemente questo non è più del tutto vero.
Le stored procedures io le trovo comode *esclusivamente* per alcuni
problemi di integrità referenziale (ma sono generalmente piccole cose).
Per il resto con un buon uso del pattern MVC, è sufficiente scrivere
bene il Model.
Il resto dell'applicazione lavora *esclusivamente* con i modelli, che
astraggono completamente il db.
Come dicevo altrove però per le cose banali non è affatto scomodo fare
si che se le gestisca il db. 


 Sono scherzi da bar, in effetti, piů che una bibbia.
IO l'ho sempre presa molto sul serio.
-- 
niuno


Ovviamente nel db implemento anche gli indici e mi avvalgo pure di tutte 
le ottimizzazioni (peraltro trasparenti) messe in atto dal server, tipo 
l'ottimizzazione genetica delle query, ma tutto questo non ha alcuna 
valenza semantica, perciò direi che è irrilevante per la nostra discussione.
Poi è *ovvio* che vada sfruttato il supporto transazionale offerto dal 
db-server (laddove presente), ma questo non richiede di implementare 
alcunché a livello di db, in quanto il controllo delle transazioni è 
esposto all'esterno dall'interfaccia SQL del server (tra l'altro le 
transazioni fanno parte dello standard SQL).
(Questa era più che altro una risposta a Mac Osten, col quale forse non 
ci eravamo capiti).
In sostanza si può dire che il db-server dovrebbe essere usato come 
"server sql", nel senso *letterale* del termine, cioè come un mero 
esecutore di istruzioni SQL (quindi anche istruzioni DDL), senza alcuna 
logica "nascosta" (che potrebbe essere implementata nei trigger ad esempio).
(In pratica, se ho capito bene, è proprio quello che diceva Biggo, col 
quale mai e poi mai avrei pensato di potermi trovare d'accordo ;-)
Questo dal punto di vista dell'ORM, mentre dal punto di vista 
dell'utente l'astrazione è ancora maggiore: l'SQL neanche dovrebbe 
essere contemplato, e il db dovrebbe essere riguardato come un semplice 
set di classi con proprietà di persistenza (poi in pratica questa si 
rivela un'impostazione un po' troppo estrema, e per le query più 
complesse ogni ORM permette di inviare SQL raw al db-server, ancorché 
opportunamente incapsulato in opportuni metodi, in modo da non sporcare 
il "codice principale").
Spero di aver "ampliato" a sufficienza ;-)
In ogni caso fammi sapere cosa ne pensi (se non andiamo troppo OT, 
altrimenti se ne riparla in canale, quando prima o poi ci beccheremo).


 [...]
OK, perfetto.
Hai colto nel segno anche prima che inviassi la mia risposta, mi 
complimento ;-)


 meno linee di codice.
Ah, ok. Quanto bisogna scrivere per far apparire una scritta sul video
in C? Quante parentesi, quanti include, quante definizioni prima di
poter vedere "hello world" sullo schermo?
Ma finche' continuerai ad accendere il commodore per farti un'idea di
cos'e' il basic, dubito che riusciremo a capirci. La demo di RB e'
gratis e dura abbastanza da farsi un'idea.


 Guarda che è assolutamente standard come cosa.
Pensare che alla presentazione di xcode me l'avevano messa li' come una
cosa eccezionale. Sara' standard ma io non ho ancora avuto il piacere di
incontrarla.


 modo migliore.
Mica passo il comando all'OS uscendo dal programma, eh. Come in
applescript uso shell script, in RB usero' il comando corrispondente. Se
c'e' una libreria usero' quella, se c'e' una funzione di sistema usero'
quella. Non vedo il problema, e soprattutto non vedo perche' si debba
sempre ipotizzare che in basic le cose si facciano in modo diverso e
piu' astruso rispetto agli altri linguaggi.


 poter vedere "hello world" sullo schermo?
Il C è di bassissimo livello.
-- 
Lawrence - 
http://www.oluyede.org/blog
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier

 quale mai e poi mai avrei pensato di potermi trovare d'accordo ;-)
Ecco: il lavoro sporco al db e quello raffinato al programma .-D
Poi e' vero che non c'e' modo di sapere se funziona finche' non ti
connetti al database, quindi meno comandi astrusi e meno autonomia gli
si da' meglio e'. Certo che se SQL mi permette di avere i dati gia'
ordinati non sto li' a scrivere codice, glielo faccio fare e basta.


 incontrarla.
In Python si possono provare delle porzioni del codice perché
l'interprete può anche funzionare in modalità interattiva, dando i
comandi via CLI, ma mi pare che si tratti di un comportamento opzionale
piuttosto che standard e credo che sia ben diverso dal lavorare con le
mani in pasta direttamente nella finestra dell'editor: il Transcript
viene compilato in tempo reale mentre lo si scrive e questa
caratteristica credo sia praticamente ineguagliata per efficienza e
trasparenza.


 Il C è di bassissimo livello.
Lo so. Ma guarda che con "C" intendo tutti i vari modelli e modellini e
subcuginetti. Quei linguaggi li' pieni di parentesi, insomma.


 subcuginetti. Quei linguaggi li' pieni di parentesi, insomma.
Son linguaggi diversi


 problemi di integrità referenziale (ma sono generalmente piccole cose).
Attenzione però.
Per l'integrità referenziale, sono sufficienti le chiavi esterne.
Se per implementare un vincolo di integrità referenziale sei costretto a 
scrivere codice server-side, probabilmente hai un db denormalizzato 
(quasi sicuramente stai violando già la 1a forma normale).


 IO l'ho sempre presa molto sul serio.
Allora dimmi la tua. 10 programmatori diversi hanno per lo meno 15
bibbie diverse a seconda di età, formazione etc etc etc.


 incontrarla.
Perchè non programmi ne in Python ne in Ruby.
Ma ribadisco... negli anni 80 si poteva già fare.


 trasparenza.
Negli anni 80 lo faceva anche Smalltalk, oggi un qualunque linguaggio
interpretato se usato all'interno di un qualche IDE/editor etc fa queste
cose. Non vedo la magia.


 gratis e dura abbastanza da farsi un'idea.
Ad essere sincero in VB ci ho programmato un po' (anche più di quello
che avrei voluto).
Non riesco a farti un corso di aggiornamento di ingegneria del software
in 4 post per dirti quello che manca a BASIC.
Potrei farti vedere invece quali compiti "tipici" in Ruby sono banali
nel modo più assoluto, ma c'è pieno di esempi la rete.


 complimento ;-)
Mi hanno aggiustato la sfera di cristallo. ;)


 piu' astruso rispetto agli altri linguaggi.
Perchè nemmeno in BASIC si fa come hai detto tu che si fa. Non
necessariamente e non se si è saggi.


 (quasi sicuramente stai violando già la 1a forma normale).
Sfortunatamente non sempre si ha controllo completo sui DB :(
E ci sono diverse persone che credono che "ottimizzando" a modo loro
migliorino le cose. 
E fortunatamente io non sono il DBA. E ancora più fortunatamente certe
cose non devo più farle :)


 cose
Ma Transcript č compilato, non interpretato.


 bibbie diverse a seconda di età, formazione etc etc etc.
Esiste un'unica bibbia, miscredente.
Cmq adesso la cerco.
-- 
niuno

 Procedure ... 
Allora non hanno sviluppato un'applicazione REALbasic.
Hanno sviluppato un'applicazione "Microsoft SQL Server" (e probabilmente 
neanche se ne sono accorti).
Auguri ;-)
Ciao, Emanuele.