Italian community of Lazarus and Free Pascal

Programmazione => Lazarus e il web => Topic aperto da: xinyiman - Ottobre 14, 2014, 12:55:05 pm

Titolo: Da pascal a php
Inserito da: xinyiman - Ottobre 14, 2014, 12:55:05 pm
Ciao ragazzi, una bella novità

http://www.wascal.net/pas2php/

converte il pascal in php, qui c'è anche il 3d ufficiale

http://forum.lazarus.freepascal.org/index.php/topic,26061.msg159981/topicseen.html

Sembra una bella idea carina
Titolo: Re:Da pascal a php
Inserito da: Stilgar - Ottobre 15, 2014, 08:48:34 am
I pacchetti da scaricare sono solo in windows?
Non ho controllato a fondo. Ma non ho visto distribuzioni diverse ;)

Stilgar
Titolo: Re:Da pascal a php
Inserito da: xinyiman - Ottobre 15, 2014, 01:43:32 pm
In tutta onestà non lo so, mi sono ripromesso di analizzarlo appena arrivo ad una quadra per android!
Titolo: Re:Da pascal a php
Inserito da: SB - Aprile 29, 2021, 06:23:48 pm
Qualche novità su Pas2Php?
Il progetto sembra abbandonato e gli esempi non si compilano nemmeno.
Ho visto che recentemente xinyiman aveva chiesto informazioni sul forum ufficiale, ma lo hanno rimandato all'autore.

Mi potrebbe interessare per provare a trasformare in php programmi CGI scritti in Pascal
Avrei il limite di hosting a basso costo che consente solo php

Mi sarebbe passata per la testa anche l'idea di ricorrere direttamente a PasTree, ma non trovo documentazione

Titolo: Re:Da pascal a php
Inserito da: xinyiman - Aprile 29, 2021, 09:26:20 pm
Io ho rinunciato. Scrivo direttamente in php e pace. Però se riesci a farlo funzionare facci sapere come.
Titolo: Re:Da pascal a php
Inserito da: SB - Maggio 01, 2021, 09:02:14 am
Con una piccola correzione si riesce a compilare, ma l'esecuzione dà errore anche su file semplici. Probabilmente è disallineato rispetto alla libreria PasTree inclusa in Lazarus
Mah, probabilmente la soluzione migliore è scrivere direttamente in PHP.
Certo che fare le Pascal Server Pages non sarebbe male  ;)
Titolo: Re:Da pascal a php
Inserito da: xinyiman - Maggio 01, 2021, 02:22:26 pm
Io al momento sto scrivendo un progetto per scrivere microservizi web in sintassi Pascal. L'utente nomorelogic tempo fa aveva scritto una cgi apache per interpretare codice Pascal
Titolo: Re:Da pascal a php
Inserito da: Stilgar - Maggio 01, 2021, 09:47:48 pm
@SB
Di preciso cosa vorresti fare?
Un modulo apache o un connettore apache -> qualche cosa?




Stilgar
Titolo: Re:Da pascal a php
Inserito da: SB - Maggio 02, 2021, 10:24:30 am
Il problema è usare servizi di hosting a basso costo. Se fossi disposto a spendere qualche centinaio di euro all'anno per un server virtuale che mi gestisco come voglio il problema non si porrebbe.
Ho già il mio framework e i miei eseguibili CGI Pascal funzionanti che al momento riesco a usare come dll Windows con Asp.net
Però così sono vincolato ad un hosting particolare, col rischio che mi blocchino il caricamento di codice nativo
Le alternative sono quasi tutte Linux con php o qualche altro linguaggio di scripting
Speravo (pia illusione) di riuscire a convertire almeno una parte consistente del codice in php per fare la migrazione.
Però, tornando coi piedi per terra, effettivamente la cosa sarebbe alquanto improbabile se non altro perchè dovrebbero essere convertite anche le librerie Pascal.
Titolo: Re:Da pascal a php
Inserito da: Stilgar - Maggio 02, 2021, 02:28:12 pm
... l'idea dei cgi non è posi così sbagliata sui server a basso costo.


Se li compili per linux, credo tu abbia buona possibilità di cambiare provider.




Stilgar
Titolo: Re:Da pascal a php
Inserito da: SB - Maggio 02, 2021, 03:02:37 pm
Ho provato a spulciare le caratteristiche di vari servizi di hosting, ma nessuno nomina cgi eseguibili
Quando parlano di eseguibili tutti intendono gli script  ::)
Credo che non si fidino ad avere qualcosa che non possono visionare
Titolo: Re:Da pascal a php
Inserito da: Stilgar - Maggio 02, 2021, 03:26:12 pm
...
Dai, c'è da capirli.
Gli spari giù un while true che gli sega i processori, poi possono ....? ::)


Stilgar
Titolo: Re:Da pascal a php
Inserito da: DragoRosso - Maggio 02, 2021, 11:55:54 pm
Non si possono installare (o lanciare) componenti di tipo exe, dll, COM (ActiveX) o simili che non siano preinstallate dal provider per i servizi di hosting. Questo per qualsiasi piattaforma.

Non sono riuscito a trovare nessuno che lo consentisse, in alcuna parte del mondo. Ho risolto, tempo fà .. ora non è più in funzione, semplicemente dedicando un vecchio pc e proiettandolo su internet sulla ADSL aziendale (aziendale tra virgolette, era quella di casa) con un DDNS.

Feci diversi programmi di gestione, tipo inserimento chiamate di manutenzione, gestione remota di linee, qualche piccolo lavoro con REST.

Usavo Intraweb a quel tempo.

In alternativa, se si vuole spendere ci sono dei bei server virtuali a noleggio.

Ma, ritengo, che oggi non sia quel giorno... ;D

Ciao
Titolo: Re:Da pascal a php
Inserito da: DragoRosso - Maggio 03, 2021, 12:11:51 am
Ah, per chi è curioso, a questa pagina c'è l'offerta per server FISICI di Aruba. Consiglio spassionatamente questi piuttosto che il Cloud (tenete presente che un processore Cloud corrisponde ad un core virtuale HyperV):

https://serverdedicati.aruba.it/server-dedicati/basic
Titolo: Re:Da pascal a php
Inserito da: SB - Maggio 03, 2021, 07:52:33 pm
Mah. Al giorno d'oggi i sistemi operativi permettono un tale controllo di sicurezza sui processi che non vedo problemi nemmeno con un processo maligno.
Non è che un cgi debba fare chissà quali operazioni. Esaurita la quota di risorse (tempo cpu, memoria, ecc) si forza la chiusura del processo ed è finita lì.
Magari temono problemi di sicurezza hardware nella cpu, ma ormai è tutto virtualizzato.
Io temerei molto di più errori software nell'interprete o nel server web.
Comunque sia, così stanno le cose e ci si deve adattare


...
Dai, c'è da capirli.
Gli spari giù un while true che gli sega i processori, poi possono ....? ::)


Stilgar
Titolo: Re:Da pascal a php
Inserito da: SB - Maggio 03, 2021, 07:56:54 pm
Non si possono installare (o lanciare) componenti di tipo exe, dll, COM (ActiveX) o simili che non siano preinstallate dal provider per i servizi di hosting. Questo per qualsiasi piattaforma.

Io lo faccio.  :) Non so se me lo lasciano fare volutamente o per una svista di configurazione, ma al momento funziona. :-X

In alternativa, se si vuole spendere ci sono dei bei server virtuali a noleggio.

Eh, se si vuole spendere si fa quel che si vuole e il problema non si pone... ;)
Titolo: Re:Da pascal a php
Inserito da: nomorelogic - Maggio 04, 2021, 06:31:44 am
Non si possono installare (o lanciare) componenti di tipo exe, dll, COM (ActiveX) o simili che non siano preinstallate dal provider per i servizi di hosting. Questo per qualsiasi piattaforma.

Io lo faccio.  :) Non so se me lo lasciano fare volutamente o per una svista di configurazione, ma al momento funziona. :-X

questo è interessante, si può sapere chi è il provider? :P
Titolo: Re:Da pascal a php
Inserito da: DragoRosso - Maggio 04, 2021, 09:27:14 am

Io lo faccio.  :) Non so se me lo lasciano fare volutamente o per una svista di configurazione, ma al momento funziona. :-X


Bhè in questo caso hai avuto molta fortuna, tienti stretto il provider e prega che non aggiorni i sistemi.

In ogni caso, se in casa si ha un rottame di pc si può mettere su un server proprio su cui si può fare quello che si vuole a scopo amatoriale.

Se invece gli scopi sono di lucro, bhè spendere qualcosa per una soluzione stabile e professionale non dovrebbe essere un problema.

Ciao
Titolo: Re:Da pascal a php
Inserito da: SB - Maggio 04, 2021, 04:24:09 pm
questo è interessante, si può sapere chi è il provider? :P
:-X
Meglio non svegliare il can che dorme...
Titolo: Re:Da pascal a php
Inserito da: SB - Maggio 04, 2021, 05:00:23 pm
In ogni caso, se in casa si ha un rottame di pc si può mettere su un server proprio su cui si può fare quello che si vuole a scopo amatoriale.

Se invece gli scopi sono di lucro, bhè spendere qualcosa per una soluzione stabile e professionale non dovrebbe essere un problema.

Il server amatoriale in casa ha comunque dei requisiti tecnici non alla portata di tutti (es. IP fisso, continuità elettrica, linea fissa con buona banda in uscita, gestione del sistema, firewall, ecc) e conseguentemente dei costi di manutenzione che alla fine potrebbero essere superiori a quelli di un hosting
Mi pare che il solo dominio costa comunque una decina di euro all'anno.

Per il server web più o meno virtuale a centinaia di euro all'anno ci sono molte piccole realtà (e magari anche non tanto piccole) che nemmeno lo prenderebbero in considerazione se non fossero sicure di riprendersi i soldi spesi. Tanto più che poi ci sono anche i costi di chi ci mette le mani sui server.
Per queste aziende, avere la possibilità di partire con un hosting a basso costo potrebbe essere più accettabile.

Comunque il problema non era di scegliere il servizio web migliore, ma riuscire a programmare in Pascal per il servizio web minimale che si ha a disposizione.
L'idea di avere un transpiler da Pascal a PHP secondo me sarebbe allettante perchè al momento il PHP è un linguaggio lato server praticamente universale.



Titolo: Re:Da pascal a php
Inserito da: nomorelogic - Maggio 04, 2021, 08:05:03 pm
il Pascal salverà il pianeta  8)

https://jaxenter.com/energy-efficient-programming-languages-137264.html
Titolo: Re:Da pascal a php
Inserito da: Mimmo - Maggio 05, 2021, 03:04:44 pm
Che forte!
Titolo: Re:Da pascal a php
Inserito da: SB - Maggio 14, 2021, 03:08:44 pm
Per il server web più o meno virtuale a centinaia di euro all'anno
...
L'idea di avere un transpiler da Pascal a PHP secondo me sarebbe allettante perchè al momento il PHP è un linguaggio lato server praticamente universale.

Perdonate la mia ignoranza! :-[
Ero rimasto ai VPS da minimo 300 euro l'anno.
Ho visto che adesso si trovano VPS a 40 euro l'anno (e magari spulciando tra i provider si può pagare anche meno) :o
A questo punto, con un po' di smanettamento da sistemisti, con, diciamo, 55 euro l'anno si dovrebbe riuscire ad avere dominio, posta e server.
E' ancora un costo superiore all'hosting tradizionale sui 40 euro/anno, ma con un server ci si fa quel che si vuole.
Se poi si hanno più siti da gestire la cosa diventa senz'altro più conveniente.
Dunque la conversione da Pascal a PHP non ha più senso e si possono realizzare applicazioni web in puro Pascal senza ricorrere a trucchetti  :D
Anche per il discorso database affrontato in altra discussione, diventa conveniente passare a dbms più prestanti come mysql
Non ho ancora idea di come siano le prestazioni, la banda, ecc. rispetto all'hosting
Nel caso decida di provare questa soluzione vi faccio sapere

Titolo: Re:Da pascal a php
Inserito da: nomorelogic - Maggio 14, 2021, 04:26:26 pm
in effetti un VPS a 40 euro all'anno cambia un po' le cose e si può scrivere tutto in pascal :)
Titolo: Re:Da pascal a php
Inserito da: tito_livio - Maggio 18, 2021, 08:07:07 pm
Salve a tutti, a proposito di quello che si è detto nei post precedenti,vorrei un vostro consiglio.
Sto pensando a trasformare un progetto Lazarus desktop in una applicazione web, sempre scritta in Lazarus ovviamente.
L'applicazione è stata sviluppata per Windows, i dati sono in mysql su di un server Windows remoto.
L'esigenza nasce dal fatto che la connessione internet è lenta e vorrei far girare l'applicazione direttamente sul server dov'è installato Mysql.
Per vari motivi ho scartato la possibilità di usare desktop remoto.
Il nuovo applicativo dovrebbe utilizzare le stampe già realizzate con Lazreport.
Ho visto che con Lazarus ci sono diversi modi di realizzare questo ma sinceramente non so quale metodo può essere il più
 adatto a questa esigenza.
Grazie in anticipo.
Titolo: Re:Da pascal a php
Inserito da: xinyiman - Maggio 19, 2021, 08:28:23 am
Dipende dal tipo di server remoto. Se ha l'interfaccia grafica puoi usare lazreport. Se non è presente (di solito sui server linux non lo è) allora lazreport non funzionerà. Se la seconda ipotesi è la tua casistica ti conviene iniziare a guardare il componente fpreport (che permette di girare senza interfaccia grafica). Dovrebbe avere anche un tool per le conversioni dei report creati con lazreport. Inoltre ha sicuramente un programma per la realizzazione grafica dei nuovi report.

Io ci ho giocato un pochino anni fa ed era promettente. Ora non so a che punto sia lo sviluppo.
Titolo: Re:Da pascal a php
Inserito da: xinyiman - Maggio 19, 2021, 08:33:31 am
Altrimenti puoi cambiare metodo. Se il problema è la lentezza di banda puoi mantenere il programma in stile desktop. Però separi il frontend dal backend. E usi il formato json per far dialogare i due. Così il carico grosso del lavoro lo fai fare al server, ma il resto non cambia (comprese le stampe).
Titolo: Re:Da pascal a php
Inserito da: tito_livio - Maggio 19, 2021, 03:21:25 pm
Grazie Xinyman,
il server remoto è su Windows Server 2012, quindi l'interfaccia grafica c'è.
Per quanto  la separazione in frontend e backend, facendoli comunicare con Json, credo che non si risolva perché il problema è proprio il passaggio dei dati fra client e server. Infatti, semplificando, il programma, fa solo delle query per visualizzare, cancellare o salvare 3 schermate piene di dati.
Quello che vorrei sapere è se esiste su Lazarus qualcosa di equivalente a Intraweb che ho visto anni fa quando programmavo solo in Delphi.
Titolo: Re:Da pascal a php
Inserito da: Stilgar - Maggio 20, 2021, 10:51:02 pm
Ciao.


https://github.com/viniciussanchez/dataset-serialize (https://github.com/viniciussanchez/dataset-serialize)


Prova a buttare l'occhio se questo progetto può aiutarti.




Stilgar
Titolo: Re:Da pascal a php
Inserito da: tito_livio - Maggio 20, 2021, 11:44:54 pm
Ok grazie, ci do un occhiata.
Titolo: Re:Da pascal a php
Inserito da: SB - Maggio 21, 2021, 07:39:33 am
Secondo me separare interfaccia ed elaborazione e riciclare quest'ultima per soddisfare le richieste web potrebbe essere la soluzione migliore, come ha suggerito xinyiman. Ciò che viaggia da server a client sono solo i risultati delle elaborazioni.

Se spulci qualche vecchia discussione, era stata segnalata una libreria per la trasposizione di interfacce desktop in chiave web.
Tieni però presente che le modalità di funzionamento desktop e web sono abbastanza diverse, con esigenze diverse e soluzioni diverse. Inoltre nel web ci sono problemi nuovi che al momento probabilmente non hai.
Non ho capito se il server deve essere accessibile da internet o da intranet, ma ad esempio devi occuparti dell'identificazione degli utenti (col web ti apri al mondo), dell'interfaccia adattabile agli schermi, ecc.
Pensare di prendere una applicazione desktop e trasformarla "magicamente" in una versione accessibile dal web non lo vedo realistico, per quanto di mia conoscenza, e probabilmente molto dispendioso.
Vedo molto più conveniente realizzare delle pagine web di identificazione degli utenti e di interrogazione dei dati.
Lato server installi un web server e realizzi dei programmi, es. cgi Pascal semplici ed efficaci, che elaborano le richieste riciclando il codice esistente.
Da quel che capisco hai controllo sul server quindi le soluzioni possono essere numerose.

Titolo: Re:Da pascal a php
Inserito da: tito_livio - Maggio 22, 2021, 01:19:30 am
Ciao SB, quello che dici tu è giusto, nella programmazione web bisogna tenere conto di molte cose, dei browser, degli schermi, delle possibili intrusioni, dei sist. operativi ecc.
Esistono però delle categorie di programmi, come nel mio caso,  dove l'applicazione è un gestionale che dovranno usare solo i dipendenti, quindi non aperta al mondo, con dei client in rete locale e dei client in remoto che useranno dei semplici PC con Windows.
Considerando questo, andare a smontare un programma, rifarlo come applicazione web per come si deve comporta tempo anche per imparare a programmare web o dover commissionare la trasformazione a professionisti già con esperienza nel settore.
La cosa diventa improponibile come costi e molti risolvono col desktop remoto, soluzione che ha i suoi difetti.
Da qui la mia ricerca, comunque ti ringrazio per la risposta.
Titolo: Re:Da pascal a php
Inserito da: SB - Maggio 22, 2021, 07:02:22 am
Credo di aver capito l'esigenza e i vincoli.
La soluzione più veloce sarebbe, per le mie conoscenze, il desktop remoto, ma se dici che ci sono problemi la cosa diventa ardua.
Se non ricordo male tempo fa in questo forum si discuteva della remotizzazione della sola interfaccia di una applicazione desktop.
Mi sembrava che si volesse prendere l'area grafica della finestra dell'applicazione e trasmetterla al client, mentre dal client venivano catturati gli eventi di mouse e tastiera per poi riprodurli nell'applicazione.
Simile a quello che si può fare con Linux tramite ssh -X, anche se in Linux la cosa è "nativa"
Se non sbaglio era xinyiman che ci stava lavorando.
Non so se esistano soluzioni già pronte, ma concettualmente non sarebbe eccessivamente complessa, soprattutto se lavori in rete locale (eventualmente da remoto con VPN), con client tuoi.
Titolo: Re:Da pascal a php
Inserito da: DragoRosso - Maggio 22, 2021, 12:31:27 pm
La remotizzazione di una interfaccia di un programma non è di per se un problema insormontabile, senza andare a "spaccarsi la testa" si può pensare banalmente a VNC o altri programmi di "remote desktop" gratuiti.

Il problema principale è la gestione e la condivisione sia dell'interfaccia sia dei dati. Nessun programma "desktop" o simile è in grado di essere "remotato" contemporaneamente da più client, a meno di non avere una infrastruttura "costosa" alle spalle (servizi terminal server ad esempio). Ma rimane sempre e comunque che il programma nativamente dovrebbe gestire le istanze "di se", sopratutto per i dati, i file temporanei, token di identificazione, sicurezza, etc .....

Un esempio banale per tutti: normalmente tutte le sessioni di un browser condividono alcuni dati, e chi usa le chiavi di firma e autenticazione digitale lo sà benissimo. Lasciare aperta una sessione di un browser autenticata e aprirne un'altra vuole dire condividere anche le autenticazioni.
Con questo esempio voglio solo dire che anche programmi nati per gestire più istanze di "se" qualche problemino c'è l'hanno, figuriamoci programmi NON nati per fare questo.

.... continua
Titolo: Re:Da pascal a php
Inserito da: DragoRosso - Maggio 22, 2021, 12:58:16 pm
....... riprendo

Come riportato nei diversi post, ci sono varie soluzioni, ma probabilmente la strada web è la più complessa da svolgere. Io ho svolto diversi lavori con Intraweb in Delphi e devo dire che tutto sommato non sono andati così male, anzi, ma non fù tutto rosa e fiori.
Inoltre, ciò che è web soffre di un importante problema: compatibilità fra varie versioni, aggiornamenti, release. Compatibilità che non si ferma alla parte grafica, ma alcune volte anche alla parte elaborativa.

Il vecchio sistema client / server potrebbe essere ancora quello giusto come logica.

Saluti
Titolo: Re:Da pascal a php
Inserito da: tito_livio - Maggio 22, 2021, 04:11:38 pm
Ciao DragoRosso, il programma è già multi-istanza e le licenze terminal serever ci sono perchè l'applicazione gira
 anche in desktop remoto da diversi anni.
Volevo solo vedere se si poteva andare verso una soluzione tipo Intraweb.
Mi rendo conto però che in Lazarus Intraweb non c'è, forse ci sarebbe Raudus ma non lo conosco e poi non sono sicuro che verrà
 aggiornato e mantenuto nei prossimi anni.
Penso che probabilmente rimarrò con la souzione attuale.
Grazie lo stesso.
Titolo: Re:Da pascal a php
Inserito da: xinyiman - Maggio 24, 2021, 04:43:04 pm
Grazie Xinyman,
il server remoto è su Windows Server 2012, quindi l'interfaccia grafica c'è.
Per quanto  la separazione in frontend e backend, facendoli comunicare con Json, credo che non si risolva perché il problema è proprio il passaggio dei dati fra client e server. Infatti, semplificando, il programma, fa solo delle query per visualizzare, cancellare o salvare 3 schermate piene di dati.
Quello che vorrei sapere è se esiste su Lazarus qualcosa di equivalente a Intraweb che ho visto anni fa quando programmavo solo in Delphi.

Avevo letto che Intraweb in futuro avrebbe supportato lazarus. Ma non ho idea di quando questo succederà.
Titolo: Re:Da pascal a php
Inserito da: DragoRosso - Maggio 24, 2021, 07:32:23 pm
Avevo letto che Intraweb in futuro avrebbe supportato lazarus. Ma non ho idea di quando questo succederà.

Tenuto conto che Intraweb è della stessa società che è sponsor di Indy (ora opensource), c'è qualche possibilità che la portino in Lazarus, anche se penso che il peso economico legato alle licenze possa essere oggetto di valutazione approfondita.

Ciao ciao