Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Язык программирования Gentee - Новости от 15.03.2006


Добрый день!

Вышла версия 2.1 языка программирования Gentee ( http://www.gentee.ru ).
Windows версия: http://www.gentee.ru/gentee-ru.exe .
Linux версия: http://www.gentee.ru/gentee-2.1.0.tar.bz2

ЧТО НОВОГО
===============================================

1. Добавлена функция для вызова функций по адресу. Может быть использована для динамического подключения DLL.

str name
uint lib = LoadLibrary( "kernel32.dll".ptr())
name.reserve( 512 )
call( GetProcAddress( lib, "GetModuleFileNameA".ptr()), 0x1000,
%{ GetModuleHandle(), name.ptr(), 512 } )
name.setlenptr()
print( "\(name)")

В первом параметре адрес, второй параметр флаги
0x000100 // Вызов cdecl
0x001000 // Есть возвращаемое значение uint
------------------------------------------------------------------------------

2. Добавлены макросы по умолчанию
$_FILE - имя компилируемого файла
$_LINE - Текущая позиция
$_WINDOWS - 1 если у нас установлен WINDOWS
$_LINUX - 1 если у нас установлен LINUX
$_DATE - Дата компиляции в формате DDMMYYYY
$_TIME - Время компиляции в формате HHMMSS
------------------------------------------------------------------------------

3. Добавлена функция getid для получения идентификатора функция методов или операторов.

uint getid( name, %{ типы параметров })

Имена методов должны начинаться с '@'
Например, вызов
getid( "@index", %{ str, uint })
получучает адрес метода str.index( uint i )

В дальнейшем функция или метод может быть вызван с помощью ->func(...)

Если не указана коллекция, то будет просто искаться первый объект с таким именем.
getid( "myfunc" )
------------------------------------------------------------------------------

4. Переработан алгоритм работы компилятора по поиску функций, методов и операторов. Сейчас можно описывать функции с одним и тем же именем, но с разными параметрами.
------------------------------------------------------------------------------

5. Появилось наследование типов и полиморфизм.
Наследовать тип можно с помощью атрибута inherit. Более подробно можно почитать в соответствующем разделе документации.
http://www.gentee.ru/doc/syntax/inherit.htm

ПЛАНЫ НА БУДУЩЕЕ
===============================================

1. Мы наконец начали делать визуальный редактор окон. Примерно через месяц я думаю можно будет сказать примерные сроки выхода первой версии.

2. Кроме этого, планируем создать оконную программу для создания EXE и оптимизации GE файлов. Оптимизатор будет расчитан не на увеличение скорости, а в первую очередь на уменьшение размера .ge файлов.

3. В связи с тем, что возможности Gentee в связи с наследованием приблизились к объектно - ориентированным языкам будем заново делать стандартную и дополнительные библиотеки. Для совместимости можно будет использовать старые библиотеки.

ПРОЧЕЕ
===============================================

Если кому-то необходим бесплатный инсталлятор, то он может попробовать наш CreateInstall Free Edition.
http://www.createinstall.com/cifree/cifree.exe
Мы вчера выложили версию 4.3 в которой исправлены ряд ошибок. На следующей неделе будет версия с еще некоторыми исправлениями.

С уважением,
Алексей Кривоногов info@gentee.com

В избранное