2011-12-26 18 views
5

Jakiś czas temu odkryłem, że Guile i rakieta mogą być osadzone i nazywane bezpośrednio z dowolnej aplikacji C++.Czy można używać OCaml w trybie wbudowanym?

Czy OCaml może działać w ten sposób?

+0

Nie zgaduję. OCaml został zaprojektowany jako język skompilowany, więc tak naprawdę nie ma być używany w ten sposób. –

Odpowiedz

6

Możesz rzucić okiem na Embedded O'Caml Toplevel zrobione przez Clément Capel. Jest wynikiem letniego stażu, więc nie był aktualizowany od 2004 roku.

W przeciwnym razie istnieje ocamlmklib.

+2

+1 dla ocamlmklib, co jasne jest w opisie PO, jest tym, czego szuka. –

+0

ocamlmklib nie ma nic wspólnego z osadzaniem OCaml. Jest to wrapper wokół linkera, który tworzy mieszane biblioteki C-OCaml. –

5

Możesz użyć OCaml toplevel jako biblioteki. Jest częścią oficjalnej dystrybucji OCaml i jest na czasie. Zobacz toploop.mli w źródłach OCaml dla interfejsu. Jest oficjalnie dostępny tylko w bajtode, ale jest eksperymentalna obsługa natywnego kodu.

Jeśli planujesz rozprowadzić swoją aplikację, pamiętaj, że biblioteka biblioteki (i sam kompilator) są objęte bardziej restrykcyjną licencją (zmodyfikowaną QPL) niż standardowa biblioteka i środowisko wykonawcze (zmodyfikowane LGPL).

Powiązane problemy