Piattaforma cross / libreria linguistica [chiusa]

-2

Sto riscrivendo una libreria da .net a qualcosa che può essere utilizzato su piattaforme diverse (Mac, Linux, Windows, Android). Ma spero anche che possa essere usato in più lingue (c #, python, java). Il mio pensiero iniziale era che il c ++ sarebbe stata l'opzione migliore. Ma non ho mai fatto qualcosa del genere quindi non sono sicuro. Esiste un modo standard per questo tipo di cose?

    
posta 165plo 24.04.2018 - 02:48
fonte

2 risposte

2

La lingua "minimo comune denominatore" è in genere C. Poiché in C è stato scritto tanto codice storico, inclusi i sistemi operativi, molte altre lingue hanno la possibilità di chiamare le funzioni C.

Questo non significa necessariamente che devi scrivere in C. In C ++, le funzioni possono essere etichettate extern "C" e sono collegate come se fossero scritte in C.

Altre lingue potrebbero anche essere in grado di esportare funzioni come se fossero scritte in C.

    
risposta data 24.04.2018 - 11:47
fonte
0

Un prodotto più grande che conosco che ha come target diverse lingue è AlgLib . Secondo le loro FAQ, usano un linguaggio di programmazione chiamato AlgoPascal che è cross-tradotto in C ++, C # o Delphi e supporta anche diverse piattaforme.

(Dichiarazione di non responsabilità: non ho alcuna connessione o relazione con quella società e non posso dirti nulla sulla qualità del loro software.)

Sfortunatamente, il traduttore di AlgoPascal non è pubblicamente disponibile, ma almeno mostra un modo di come una tale piattaforma / libreria linguistica può essere costruita. Tuttavia, immagino che questo possa essere solo un modo sensato se la lib basata su una tale sorgente comune non ha bisogno di altre dipendenze specifiche per piattaforma o lingua come una specifica interfaccia utente. Una lib di matematica come AlgLib è probabilmente adatta per un simile approccio.

    
risposta data 24.04.2018 - 21:29
fonte

Leggi altre domande sui tag