Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Un compilatore in php

  1. #1

    Un compilatore in php

    Ciao a tutti!
    Ho realizzato questo sito:
    http://virtualcompiler.altervista.org/
    In pratica l'utente inserisce delle frasi in italiano, poi una pagina php le traduce in codice php creando una pagina provvisoria, a questo punto la visualizza simulando una applicazione dos.
    E' un sistema estremamente semplice, prevede un semplice str_replace che sostituisce i termini in Italiano con parti di codice php, è anche molto poco utile quindi, adesso voglio creare un sistema che possa invece essere veramente utile: voglio che venga creato un eseguibile che poi l'utente possa scaricare.
    Il mio host, prò non prevede l'utilizzo di di compilatori sul server.
    Ho saputo che è possibile creare un vero e proprio compilatore realizzato in php che generi veri e propri file exe, sarebbe proprio cio che fa al caso mio, purtroppo non rtiesco a trovare nulla su come si possa fare e non so proprio da dove incominciare. Sapreste consigliarmi un tutorial che mi spieghi giusto i concetti di base per creare un exe?
    Grazie in anticipo!

  2. #2
    E tu vorresti scrivere un compilatore in PHP?

    EDIT:

    Dal tuo sito: Virtual compiler è lo strumento perfetto per chi vuole imaparare i fondamenti della programmazione, ma che non ha il tempo o la voglia di studiare un linguaggio di programmazione

    Peccato che poi l'utente deve leggersi la guida ed imparare il tuo linguaggio di programmazione per riuscire ad usare il tuo compilatore.

  3. #3
    Originariamente inviato da filippo.toso
    E tu vorresti scrivere un compilatore in PHP?
    Esatto!

    Originariamente inviato da filippo.toso
    Dal tuo sito: Virtual compiler è lo strumento perfetto per chi vuole imaparare i fondamenti della programmazione, ma che non ha il tempo o la voglia di studiare un linguaggio di programmazione

    Peccato che poi l'utente deve leggersi la guida ed imparare il tuo linguaggio di programmazione per riuscire ad usare il tuo compilatore.
    Lo so, infatti sto lavorando a una versione molto piu complessa che capisca molte piu espressioni fornite dall'utente, comunque per chi non ha alcuna esperienza di programmazione è decisamente più semplice capire quella guida, inoltre, per come è strutturato il linguaggio secondo me è molto semplificato, inquanto non richiede concetti come le parentesi, ==, &&,||, ecc...
    Che sono le tipiche cose che scroaggiano chi è agli inizi.
    Questo sito serve per imparare a programmare proprio perchè attraverso ad un linguaggio semplice, si struttura comunque la logica dell'informatica.

    EDIT:
    Pensavo che forse basterebbe un codice di questo tipo per creare l'exe:
    Codice PHP:
    $open=fopen("eseguibile.exe","w");
    fwrite($open,"codice dell'exe"); 
    Il problema e che non ho idea di come possa scrivere un codice leggibile dal PC in un exe...
    E' forse codice binario?

  4. #4
    Date le tue competenze è assai improbabile tu sia in grado di concludere qualcosa.

    Scrivere un compilatore richiede competenze piuttosto specifiche ed approfondite.

    Inoltre stai facendo degli errori concettuali di base.

    Chi vuole imparare a programmare DEVE studiare la sintassi e la grammatica del linguaggio che desidera utilizzare.

    Per uno che sa leggere un qualsiasi manuale, scrivere:

    la variabile a diventa 4
    è piu difficile che scrivere:

    Codice PHP:
    $a 4
    Idem per questo:

    la variabile a diventa 23.456,
    la variabile b diventa 11.2,
    la variabile c diventa la variabile a più la variabile b.
    Codice PHP:
    $a 23.456;
    $b 11.2;
    $c $a $b
    Se il to obiettivo è permettere a chi non ha alcuna esperienza di programmazione di avvicinarsi alla programmazione, scrivi una bella guida di programmazione (su uno delle decine di linguaggi esistenti), in italiano, con tanti esempi semplici e facili da seguire.

    Obbligare un utente ad imparare una sintassi così verbosa piuttosto che studiare le poche regole base che solitamente governano un linguaggio di programmazione moderno, è una cosa illogica che cozza fortemente con gli obiettivi che hai dichiarato voler perseguire.

  5. #5
    Grazie tante dei consigli, vedrò di provvedere.
    Evitiamo pero di andare fuori argomento .
    Mi serve solamente un tutorial che mi dia le basi per creare un compilatore in php, poi giudicherò se sono in grado o no.


    PS:
    Date le tue competenze è assai improbabile tu sia in grado di concludere qualcosa.
    Posso sapere come fai a sapere quali sono le mie competenze?

  6. #6
    Originariamente inviato da quit10
    Mi serve solamente un tutorial che mi dia le basi per creare un compilatore in php
    Posso sapere come fai a sapere quali sono le mie competenze?
    Lo si capisce dalle domande che fai.

    Ad esempio, il fatto stesso che pensi sia una cosa logica creare un compilatore in PHP.

    Oppure che credi nell'esistenza di tutorial che spiagano come creare dei compilatori in questo linguaggio.

    Esistono interi libri che parlano della teoria dei compilatori e di come realizzarli, e non certo utilizzando un linguaggio come il PHP, ma con strumenti come assembler e C.

    Il PHP non è assolutamente adatto per un lavoro del genere. Al massimo puoi crearti un software esterno che si occupa di interpretare il tuo "linguaggio di programmazione" ed eseguirlo. Ma a quel punto non stai facendo altro che riscrivere il PHP (o il motore che esegue Javascript, oppure Action Script, etc. etc.)

    E si ritorna al punto di partenza...

  7. #7
    Originariamente inviato da filippo.toso
    Ad esempio, il fatto stesso che pensi sia una cosa logica creare un compilatore in PHP.
    Non penso che sia una cosa logica: semplicemente non credo che ci siano altre possibilità!

    Comunque grazie di avermi detto che non è fattibile con il php, solo questo mi bastava.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.