Da anni lavoro in Delphi/Firebird in ditta, e sento l’esigenza di
integrarlo con un linguaggio non compilato, al quale demandare alcune
procedure (tipo tutte quelle che prevedono invio dati via internet ecc).
Ottimo ambiente Delphi, ma l’uso dei componenti per internet tipo ad
esempio gli Indy, fa cascare le braccia, sia perchè sono complessi, sia
perchè sono sempre incompatibili con le versioni precedenti.
Vi chiederei alcune cose:
mi consigliate un ambiente RAD per Ruby. Ad esempio le wxRuby le ho
installate, però io venendo da Delphi sento la mancanza di un gui
grafico con cui costruire i frames. Io lavoro in Windows,
necessariamente usando già Delphi …
se è possibile trasformare in eseguibile un .rb. Ad esempio supponete
di voler fare una criptazione / decriptazione secondo le vostre esigenze
e la fate in Ruby. Mica volete dare a giro il codice di come si fa a
decriptare … ebbene, questo .rb, si può renderlo un .exe e chiamarlo
da un’altro .rb (ovviamente recuperandone i risultati del calcolo)
quando serve la decriptazione?
un’altra cosa analoga alla precedente. Supponete di avere un .exe che
si serve per calcolare una cosa. Ora voi volete eseguirlo da un .rb e
recuperare il risultato del calcolo che il .exe deve fare, e usarlo nel
ruby per fare altre cose. Io pensavo, o scrivo il risultato del .exe in
un file e lo leggo da ruby … oppure come posso fare? se chiamo un .exe
da ruby, l’esecuzione dello script ruby attende la fine del .exe o va
avanti?
questa è veramente banale: come faccio per eseguire un .rb dentro
un’altro .rb? cioè
if scelta #eseguo pippo.rb
else #eseguo poldlo.rb
end
che metto al posto di #eseguo?
ultima domanda: un mio amico programmatore da molti anni si è
entusiasmato a ruby, però mi ha detto “ci sarà mica sotto qualche
fregatura? sembra tutto troppo bello …”. Voi che dite? è un onesto
dubbio … che aspetti un po’ negativi o non esaltanti ci sono in Ruby?
o in altre parole, quali sono i suoi difetti posto che ogni cosa ha
pregi e difetti e la perfezione è molto difficile averla.
Ok grazie di tutto. Buona programmazione a tutti.
XarYo
ultima domanda: un mio amico programmatore da molti anni si è
entusiasmato a ruby, però mi ha detto “ci sarà mica sotto qualche
fregatura? sembra tutto troppo bello …”. Voi che dite? è un onesto
dubbio … che aspetti un po’ negativi o non esaltanti ci sono in Ruby?
o in altre parole, quali sono i suoi difetti posto che ogni cosa ha
pregi e difetti e la perfezione è molto difficile averla.
Per le altre domande ti risponderà chi ne sa di più di me.
Per questa, ti posso dire che Ruby è… lento!
se è possibile trasformare in eseguibile un .rb. Ad esempio supponete
di voler fare una criptazione / decriptazione secondo le vostre esigenze
e la fate in Ruby. Mica volete dare a giro il codice di come si fa a
decriptare … ebbene, questo .rb, si può renderlo un .exe e chiamarlo
da un’altro .rb (ovviamente recuperandone i risultati del calcolo)
quando serve la decriptazione?
in generale si, proprio il codice per criptazione / decriptazione e’
quello
che dovrebbe sempre essere pubblico e disponibile, perche’ la sicurezza
della cifratura non deve dipendere dalla segretezza dell’algoritmo e
perche
tutti gli algroritmi di cifratura per essere ritenuti validi devono
passare
lo scrutinio della comunita degli esperti, ed infatti tutti quelli usati
correntemente lo sono (pubblici), dunque non c’e’ motivo per tenerlo
segreto
(a meno che non parliamo di snake-oil crypto Snake oil (cryptography) - Wikipedia )
Eh beh, lo so che non può essere lesto come un compilato però
sinceramente mi aspettavo di peggio, proprio vendendo da Delphi, in
generale mi aspettavo performance molto peggiori.
Ciao Luca, si in effetti è snake-oil (non sapevo si chiamasse così!) nel
senso che è criptatura/decriptatura di dati per il gestionale della
ditta, sicchè non ho interesse a mostrare la criptatura. I sorgenti del
gestionale ovviamente sono privati e non pubblici, sicchè mi basta una
criptazione semplice ma oscura, lo so, in barba a quanto direbbe la
corretta teoria della criptazione che tu dici.
Comunque, allora, ho un .exe che calcola ad esempio un ‘casfe322’ come
risultato finale, cioè una stringa insomma. Ora, come faccio da Ruby a
prendere tale stringa? c’è un modo diretto per prendere il risultato di
un .exe dentro uno script ruby senza ricorrere a files .txt di scambio?
Per il resto, ho usato Ruby solo per applicazioni web con Rails o per
piccoli script e quindi non so rispondere alle tue altre domande con
cognizione di causa.
Posso solo dirti che come ide uso emacs -t /dev/tty, ma non credo sia
quello che hai in mente :-), e che per trasformare Ruby in exe in
effetti sembra esserci qualcosa. Il primo link ritornato da Google è http://www.erikveen.dds.nl/rubyscript2exe/
Comunque, allora, ho un .exe che calcola ad esempio un ‘casfe322’ come
risultato finale, cioè una stringa insomma. Ora, come faccio da Ruby a
prendere tale stringa? c’è un modo diretto per prendere il risultato di
un .exe dentro uno script ruby senza ricorrere a files .txt di scambio?
On gio, 2008-02-21 at 12:15 +0100, giovanni lion wrote:
print stringa
Son curioso facci sapere!
Funziona perfettamente!!!
Ho fatto un mio .exe in Delphi, una Console Application, cioè un .exe da
dos per intenderci e gli ho fatto semplicemente stampare una stringa,
che poi può essere il risultato di una elaborazione qualsiasi.
Chiamandolo con la pipe davanti con open, come hai visto tu, riprendo
perfettamente la stringa da ruby.
Favoloso, questo è oro colato! specialmente per me che voglio
integrare .exe fatti in delphi, è realmente ottimo.
Capisco che Ruby è famoso per Rails, però da quel poco che sto provando,
lo trovo formidabile anche per lavorare integrandolo con
applicazioni .exe per intenderci …
un’altra cosa analoga alla precedente. Supponete di avere un .exe che
si serve per calcolare una cosa. Ora voi volete eseguirlo da un .rb e
recuperare il risultato del calcolo che il .exe deve fare, e usarlo nel
ruby per fare altre cose. Io pensavo, o scrivo il risultato del .exe in
un file e lo leggo da ruby … oppure come posso fare? se chiamo un .exe
da ruby, l’esecuzione dello script ruby attende la fine del .exe o va
avanti?
Se l’eseguibile fornisce le informazioni su stdout, le puoi recuperare
facilmente:
s = ‘/path/to/eseguibile.exe’
(dove al posto dell’apice c’e’ l’apice rovesciato)
questa � veramente banale: come faccio per eseguire un .rb dentro
un’altro .rb? cio�
if scelta #eseguo pippo.rb
else #eseguo poldlo.rb
end
On Sun, Feb 10, 2008 at 12:09 AM, xaryo [email protected] wrote:
[cut]
Per le altre domande ti risponderà chi ne sa di più di me.
Per questa, ti posso dire che Ruby è… lento!
le potenzialita’ del linguaggio non lo costringono alla lentezza,
quindi non considererei questo punto come un difetto
bai, bau e miao
–
it will be a hard life
one without reward, without remorse, without regrets
a path will be placed before you
the choice is your alone
do what you think you cannot do
and you will find out who you are
#b.rb
puts ‘Questo è lo script b, dove non ho nessuna variabile’
puts ‘Ora chiamo a.rb, dovrei vedere poila variabile “totale”’
#chiamo l’altro script
esegui a.rb
puts totale
Ecco, dicevo, come faccio per vedere la variabile “totale” che è
istanziata in a.rb dentro lo script b.rb?
Per il resto, ho usato Ruby solo per applicazioni web con Rails o per
piccoli script e quindi non so rispondere alle tue altre domande con
cognizione di causa.
Capisco
Posso solo dirti che come ide uso emacs -t /dev/tty, ma non credo sia
quello che hai in mente :-),
Eh no :-), avrei in mente un qualcosa tipo Boa per Python per
intenderci, c’é per Ruby?
mi consigliate un ambinte RAD per Ruby. Ad esempio le wxRuby le ho
installate, per� io venendo da Delphi sento la mancanza di un gui
grafico con cui costruire i frames. Io lavoro in Windows,
necessariamente usando gi� Delphi …
non ne conosco nessuno. di solito uso kate o jedit, ma non si possono
disegnare le form come vorresti fare tu.
questa � veramente banale: come faccio per eseguire un .rb dentro
un’altro .rb? cio�
cmd = open(‘|comando’)
status = cmd.gets
cmd.close
questo esegue “comando” e legge quello che ritorna in “status”
system "ciccio"
questo esegue il comando “ciccio”
ultima domanda: un mio amico programmatore da molti anni si �
entusiasmato a ruby, per� mi ha detto “ci sar� mica sotto qualche
fregatura? sembra tutto troppo bello …”. Voi che dite? � un onesto
dubbio … che aspetti un po’ negativi o non esaltanti ci sono in Ruby?
o in altre parole, quali sono i suoi difetti posto che ogni cosa ha
pregi e difetti e la perfezione � molto difficile averla.
è lento, non supporta l’unicode, è difficile localizzare le
applicazioni.
On gio, 2008-02-21 at 12:15 +0100, giovanni lion wrote:
print stringa
Son curioso facci sapere!
Funziona perfettamente!!!
Ho fatto un mio .exe in Delphi, una Console Application, cio� un .exe da
dos per intenderci e gli ho fatto semplicemente stampare una stringa,
che poi pu� essere il risultato di una elaborazione qualsiasi.
Chiamandolo con la pipe davanti con open, come hai visto tu, riprendo
perfettamente la stringa da ruby.
Favoloso, questo � oro colato! specialmente per me che voglio
integrare .exe fatti in delphi, � realmente ottimo.
Capisco che Ruby � famoso per Rails, per� da quel poco che sto provando,
lo trovo formidabile anche per lavorare integrandolo con
applicazioni .exe per intenderci …
Ciao e grazie molte Giovanni!
XarYo
Io ho avuto problemi nel catturare l’output o nel settare l’input di
programmi sotto windows usando ruby.
Per esempio se si vuole controllare il risultato di una compilazione,
dove un exe lancia a sua volta altri exe, ho usato un file batch e una
pipe.