2009-05-21 32 views
7

Mam aplikację pulpitu C++ (napisaną w wxWidgets) i chcę dodać obsługę niektórych języków skryptowych.SpiderMonkey vs JavaScriptCore vs?

Skrypty będą używane głównie do konwersji łańcuchów, liczb i dat według kodu JavaScript użytkownika.

Chciałbym używać JavaScriptu, ponieważ jest on powszechnie używany i każdy zna składnię.

Googling wokół, wydaje się, mam dwie opcje:

  • SpiderMonkey od Mozilli
  • JavaScriptCore z WebKit

Czy ktoś próbował tych? Który z nich będzie łatwiejszy do skonfigurowania? Czy znasz jakieś inne wdrożenie, które jest lepsze dla moich potrzeb?

BTW, celuję w platformy Windows i Linux.

Odpowiedz

3

JavaScriptCore ma stabilne API C (i ABI) i był dostępny (i używany jako) standardowy system framework na macach.

[edit: oh, i działa w środowisku Linux i Windows jako samodzielny biblioteki, chociaż wierzę tylko debian rozprowadza go jako taki]

6

Oczywiście, można również użyć Lua, który nie tylko został zaprojektowany specjalnie do tego jest znacznie szybszy niż jakikolwiek JS.

Również, to jest dobrze zaprojektowane semantyka, bardzo minimalne rdzeń, proste C API, wielki przenośność, bardzo dojrzały JIT, najbardziej pomocny społeczność online Widziałem, etc ...

+0

Rozważyłem Lua, ale chciałbym zapisać użytkowników mojej aplikacji od nauki nowego języka. Drugim potencjalnym problemem jest brak funkcji do obsługi daty/czasu. AFAICT, możesz uzyskać tylko czas systemowy i to wszystko. Jednak moja aplikacja musi być w stanie przeanalizować ciąg znaków jako datę, a następnie zrobić takie rzeczy jak "dodaj 3 dni" lub "znajdź różnicę w dniach między 2 datami" itd. –

+2

niezależnie od tego, który język został osadzony w aplikacji, masz ujawnić niektóre specjalne API. dodając niektóre funkcje zarządzania datami można zrobić w mniej niż 100 liniach Lua. "Bez nowego języka" to prawdziwy problem, OTOH. – Javier

+3

"znacznie szybszy niż jakikolwiek js"? [wymagany cytat]! Link proszę. –