BESEN (Bero's EcmaScript Engine) for Delphi and FreePascal

Обсуждаются как существующие проекты (перевод документации, информационная система и т.п.), так и создание новых.

Модератор: Модераторы

BESEN (Bero's EcmaScript Engine) for Delphi and FreePascal

Сообщение Kemet » 01.08.2011 19:13:28

Недавно случайно наткнулся. ECMA Script на object pascal. Проверил в на FPC 2.4.4 - скомпилировалось (поправил 1-ну строку), тестовые примеры работают.

BESEN

BESEN is an acronym for "Bero's EcmaScript Engine", and it is a complete ECMAScript Fifth Edition Implemention in Object Pascal, which is compilable with Delphi >=7 and FreePascal >= 2.5.1 (maybe also 2.4.1).

BESEN is licensed under a OwnLicense+AGPLv3 dual-license.
Features:

Complete implementation of the ECMAScript Fifth Edition standard
Own bytecode-based ECMA262-complaint Regular Expression Engine
Incremental praise/exact mark-and-sweep garbage collector
Unicode UTF8/UCS2/UTF16/UCS4/UTF32 support (on ECMAScript level, UCS2/UTF16)
Compatibility modes, for example also a facile JavaScript compatibility mode
Bytecode compiler
Call-Subroutine-Threaded Register-based virtual machine
Context-Threaded 32-bit x86 and 64-bit x64/AMD64 Just-in-Time Compiler (a ARMv7 EABI JIT for ARM CPUs with VFPv3 instruction set is planned)
Constant folding
Dead code elimination
Abstract-Syntax-Tree based optimizations
Type inference (both exact and speculative)
Polymorphic Inline Cache based on object structure and property key IDs
Perfomance optimized hash maps
Self balanced trees (for example to sort on-the-fly linked list items of hash maps for very fast enumeration of array objects)
Easy native ObjectPascal class integration (properties per RTTI and published methods per by-hand-parsing of the native virtual method table)

Страница проекта на Sourceforge
Kemet
постоялец
 
Сообщения: 241
Зарегистрирован: 10.02.2010 19:28:32
Откуда: Временно оккупированная территория

Re: BESEN (Bero's EcmaScript Engine) for Delphi and FreePascal

Сообщение hinst » 01.08.2011 19:28:05

собственно, так скрипты, написанные на каком языке, он компилирует? Я так и не понял... Или, вот это ECMAScript название языка?
Аватара пользователя
hinst
энтузиаст
 
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Re: BESEN (Bero's EcmaScript Engine) for Delphi and FreePascal

Сообщение Brainenjii » 01.08.2011 19:32:57

ECMAScript ≈ JS
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Re: BESEN (Bero's EcmaScript Engine) for Delphi and FreePascal

Сообщение Kemet » 01.08.2011 19:33:36

Kemet
постоялец
 
Сообщения: 241
Зарегистрирован: 10.02.2010 19:28:32
Откуда: Временно оккупированная территория

Re: BESEN (Bero's EcmaScript Engine) for Delphi and FreePascal

Сообщение hinst » 04.08.2011 10:19:12

а что, документации к нему нет совсем-совсем никакой?
а то я что-то посмотрел сейчас на исходники этого самого BESEN и ощутил некоторый когнитивный диссонанс. В общем, нифига не понял, как его использовать
Аватара пользователя
hinst
энтузиаст
 
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Re: BESEN (Bero's EcmaScript Engine) for Delphi and FreePascal

Сообщение Kemet » 04.08.2011 10:59:26

Какого характера документация? Если на ECMAScript, то это по нему и надо искать доки на ECMAScript Fifth Edition. по языку можно доки на QtScript посмотреть.
А пример использования смотреть исходники BESENShell.
ну запустить на выполнение можно из консоли типа, BESENShell Hello.js

Добавлено спустя 2 минуты 31 секунду:
А идеешка в комплекте без сырцов, к сожалению, но автор может поделиться, просто почти никто не просил.
Kemet
постоялец
 
Сообщения: 241
Зарегистрирован: 10.02.2010 19:28:32
Откуда: Временно оккупированная территория

Re: BESEN (Bero's EcmaScript Engine) for Delphi and FreePascal

Сообщение hinst » 04.08.2011 12:52:28

ну вот я и говрою, что пример-то по сути всего один и достаточно сложный для понимания. Никакие особенности не расписаны
Аватара пользователя
hinst
энтузиаст
 
Сообщения: 781
Зарегистрирован: 12.04.2008 18:32:38

Re: BESEN (Bero's EcmaScript Engine) for Delphi and FreePascal

Сообщение Kemet » 06.08.2011 09:25:27

На текущий момент документации нет, написание только планируется. Но разработчик Benjamin Rosseaux, он же BeRo, оказывает техподдержку.
Также в рассылке встречаются русскоязычные программисты, которые используют BESEN в своих разработках. Ну или пытаются использовать.
Лично я не использую, мне просто показалось, что разработка довольно интересная и полезная, т.к. встречал здесь неоднократные упоминания о нереализованном желании написать полноценный браузер на object pascal, в связи с отсутствием поддержки яваскриптов. Теперь такая поддержка есть, тем более, что на сайте BESEN один из пользователей писал, что использует с BESEN'ом jQuery.
Kemet
постоялец
 
Сообщения: 241
Зарегистрирован: 10.02.2010 19:28:32
Откуда: Временно оккупированная территория

Re: BESEN (Bero's EcmaScript Engine) for Delphi and FreePasc

Сообщение Kemet » 29.06.2013 10:27:11

Страничка проекта на Гуглокоде
Kemet
постоялец
 
Сообщения: 241
Зарегистрирован: 10.02.2010 19:28:32
Откуда: Временно оккупированная территория


Вернуться в Разное

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

Рейтинг@Mail.ru