V8 to silnik JavaScript, natomiast pyv8 jest jego wrapperem do pythona.
Niestety nie udało mi się znaleźć informacji, w jaki sposób przekompilować wersję dla python-a 3. Z tego co wyczytałem projekt opiera się na boost::python-ie, może okazać się także konieczne zainstalowanie narzędzia scons. Wrapper bazuje na rewizji r19623 i skrypt budujący cofa repozytorium do tej wersji. Jest więc starsze o około 6000 commitów o tego co jest na trunku. Mam nadzieje, że nie oznacza to, że projekt obumiera.
svn checkout http://v8.googlecode.com/svn/trunk/ v8
svn checkout http://pyv8.googlecode.com/svn/trunk/ pyv8
export V8_HOME=~/v8
cp pyv8
python setup.py build
# biblioteka zostanie zapisana w ~/.local
python setup.py install --user
Przykład:
#! /usr/bin/env python2
import PyV8
ctxt = PyV8.JSContext()
ctxt.enter()
result = ctxt.eval('var str = "Hello world!"; \
str.substring(1, 5);')
print(result)
Wynik:
ello
Brak komentarzy:
Prześlij komentarz