2013-05-07 13 views
5

Te kompilatory języków funkcyjnych mogą kompilować język funkcyjny do kodu C. Zestaw SDK NaCl firmy Google może kompilować C. Czy rozsądne jest tworzenie aplikacji klienta natywnego przez kompilację najpierw z jednym z tych kompilatorów i uruchamianie wyniku za pomocą pakietu Native Client SDK klienta google?Czy mogę używać programu Gambit-C, Mlton lub kurczaka za pomocą klienta natywnego firmy Google

Ktoś zrobił to czy mają konkretne informacje o możliwościach oraz pułapek ograniczeń?

Wielkie dzięki!

Odpowiedz

2

mogę odpowiedzieć tylko z pozycji pewnej niepewności co składałoby Google NaCl, ale wiem trochę o MLton.

Teoretycznie powinno działać. W rzeczywistości MLton wykorzystuje pamięć w bardzo specyficzny sposób i oczekuje kontroli nad środowiskiem. Główną pułapką, jaką widzę, jest to, czy NaCl ogranicza pewne rodzaje operacji, które mogą być wykonywane w celu zagwarantowania integralności i bezpieczeństwa środowiska wykonawczego. This link sugeruje, że to nie może być problem.

Również kod C, który generuje MLton jest naprawdę głupi. Ponownie, zależy to od tego, co zrezygnuje NaCl pod względem ogólnego charakteru środowiska w celu zagwarantowania bezpieczeństwa. Będziesz mieć bardzo niewielką kontrolę nad kodem, który wyprowadza MLton, a przepisanie środowiska wykonawczego jest ogromnym przedsięwzięciem, jeśli jakiekolwiek modyfikacje będą wymagane. Sprawdziłbym, czy to działa, a następnie zacznij ulepszać wszystkie części systemu uruchomieniowego, które powodują problemy.

Tak na marginesie, jeśli masz kod MLton uruchamiając przeglądarkę, chciałbym zobaczyć wyniki! : D