|
Основной форум Сюда все проблемы связанные с программированием. |
10.12.2008, 03:10
|
#106
|
Нуждающийся
Регистрация: 10.02.2007
Сообщений: 99
Написано 18 полезных сообщений (для 28 пользователей)
|
Re: создание MIDletPascal compiler'a
Ща немного занят
Кому бейсик на мобиле нужен
http://cellbasic.sourceforge.net/index.php
|
(Offline)
|
|
11.12.2008, 15:15
|
#107
|
Оптимист
Регистрация: 07.01.2006
Сообщений: 961
Написано 105 полезных сообщений (для 259 пользователей)
|
Ответ: создание MIDletPascal compiler'a
Пеплохой проект. странно, что за файлами лезет именно на "e/zam". Порадовала реализация парсера на flex. Может стать альтернативой MobileBASIC
|
(Offline)
|
|
16.12.2008, 12:23
|
#108
|
Нуждающийся
Регистрация: 10.02.2007
Сообщений: 99
Написано 18 полезных сообщений (для 28 пользователей)
|
Re: создание MIDletPascal compiler'a
Ну вот, начальный код компилятора...
Разбирается верхний уровень и константы, файл testj.java и альтернатива на Pascal test.pas в архиве, так же два скриншота сравнения оригинала testj.class и test.class(нашего компилятора)
Компилер разбил на 4 модуля
В модуле Codegen реализация формирования кода
Файл test.bat запускает компилирование...
Такс, скоро прикручу DOOBLE типы и останеццо тупое разбирательство кода в пул...
А потом уже будем думать нижний уровень(ASM)...
А то затишье такое мля аж страшна...
ЗЫ...
Откомментил все что можно...
|
(Offline)
|
|
19.12.2008, 17:43
|
#109
|
AnyKey`щик
Регистрация: 02.09.2008
Адрес: krasnoyarsk
Сообщений: 8
Написано 0 полезных сообщений (для 0 пользователей)
|
Ответ: создание MIDletPascal compiler'a
Ребяты ,а есть где нибуть более подробное описание,спецификации JVM
на русском кроме как на http://www.uni-vologda.ac.ru/java/jvm/outline.htm
?
|
(Offline)
|
|
19.12.2008, 22:20
|
#110
|
Знающий
Регистрация: 16.09.2008
Сообщений: 299
Написано 71 полезных сообщений (для 123 пользователей)
|
Ответ: создание MIDletPascal compiler'a
scimitar хочешь помочь?
ссылки на сайты с исходниками разбора java-bytecode (которые здесь были) смотри.. так лучше разберешься.
____
выкладываю последние исходники, к которым пока руки не доходят, из-за лени и отсутствия времени.
1. немножко переделанный простой компилятор pascal'я "compile" (в конце строк ';' присваивание ':=' и еще что-то непомню..)
2. версия компиятора "jcc" с поддержкой переходов на метки, нужно добавить обработчик ошибок, и стековую карту..
3. добавил 40 строк кода в файл "pascals" и он стал генерировать приблизительный код в формате java, только все переменные и имена получают нечитабельные названия.. нужно добавлять таблицу имен..
|
(Offline)
|
|
20.12.2008, 12:37
|
#111
|
Нуждающийся
Регистрация: 10.02.2007
Сообщений: 99
Написано 18 полезных сообщений (для 28 пользователей)
|
Re: создание MIDletPascal compiler'a
2abcdef
Вот ты повторяешь мои ошибки 3-4 летней давности....
во первых надо в PascalS исправить
strcpy(word[procsym], 'procedur');
на
strcpy(word[procsym], 'procedurе');
во вторых ввести тип string
в третьих надо сделать для начала что бы он корректно разбирал переменные
так как типа REAL там никогда не было, а с о сканером PASCALS это немного проблематично, и короче дохрена всего чего надо в этом паскал...
У меня тормоза не из-за того, что я не могу компилер написать (я их уже переписал дай бог), а из-за того, что я дорабатываю IDE свою, а потом уже к ней буду прикручивать компилеры всякие, причом интегрировать прямо внутрю...
В четвертых Java код строится на стеке, когда как PascalS на регистрах о.н.
поэтому когда выражения простые, то все прокатывает на ура, как только дойдешь до сложных вычислений твой код просто начнет расти диким образом и в конце концов не поместится в памяти
В пятых скачай JavaByte...
Ну и т.д.
Хотя для понимания процесса пойдет и PascalS
|
(Offline)
|
|
20.12.2008, 19:34
|
#112
|
Знающий
Регистрация: 16.09.2008
Сообщений: 299
Написано 71 полезных сообщений (для 123 пользователей)
|
Ответ: создание MIDletPascal compiler'a
в файле pascals есть ссылка на первую версию, в ней есть поддержка типа Real. Таблица слов в pascals 8-ми символьная, поэтому в слове "procedure" обрезает последнию букву. Вообще трудно найти более оптимизированный и простой компилятор паскаля, чем pascals, просто в нем оставили только самые необходимые функции для разбора полного синтаксиса стандартного паскаля и больше ничего
|
(Offline)
|
|
20.12.2008, 20:51
|
#113
|
Знающий
Регистрация: 29.07.2008
Адрес: Россия,Саратов
Сообщений: 206
Написано 22 полезных сообщений (для 33 пользователей)
|
Ответ: создание MIDletPascal compiler'a
ПАрни можно сделать classi на мобилу, Т.Е Создать компилятор на мобилу, а уж потом добавить оформление, можно реально создать паскаль на мобилу
|
(Offline)
|
|
20.12.2008, 21:54
|
#114
|
Нуждающийся
Регистрация: 10.02.2007
Сообщений: 99
Написано 18 полезных сообщений (для 28 пользователей)
|
Re: создание MIDletPascal compiler'a
TEMNED
В принципе можно как нибуть потом, в свободное время занятся созданием компилятора на мобилу, но мы ведь в этой теме занимаемся совсем другими вещами то!!!
|
(Offline)
|
|
20.12.2008, 22:04
|
#115
|
Нуждающийся
Регистрация: 10.02.2007
Сообщений: 99
Написано 18 полезных сообщений (для 28 пользователей)
|
Re: создание MIDletPascal compiler'a
abcdef дружище, кидани ссылку на паскаль с REAL, и внимательно сравни то что я наковырял с PascalS...
Кстати там уже пул и код собирается...
|
(Offline)
|
|
07.01.2009, 19:27
|
#116
|
Знающий
Регистрация: 29.07.2008
Адрес: Россия,Саратов
Сообщений: 206
Написано 22 полезных сообщений (для 33 пользователей)
|
Ответ: создание MIDletPascal compiler'a
мона добавить оформление, либо самим сделать, либо попросить братьев из комнат "программирование для компов", добавить все библиотеки, т.е не надо дополнительних либ, все будет уже вкл. И мона випускать новую версию MP.
|
(Offline)
|
|
08.01.2009, 22:36
|
#117
|
Знающий
Регистрация: 29.07.2008
Адрес: Россия,Саратов
Сообщений: 206
Написано 22 полезных сообщений (для 33 пользователей)
|
Ответ: создание MIDletPascal compiler'a
Да. Парни надо би добавить оформление, окно, кнопки, все такое, запоковать в инсталятор, дать всем, штоб разкладивали везде по инету, и готов MIDLETPASCAL 2.04 например, тока надо шо-нить уникальное, т.е новое. Говорите, што бы кто хотел видеть новое в новой версии мидлетпаскаль.
|
(Offline)
|
|
09.01.2009, 02:54
|
#118
|
Нуждающийся
Регистрация: 03.01.2009
Сообщений: 93
Написано 8 полезных сообщений (для 15 пользователей)
|
Ответ: создание MIDletPascal compiler'a
===
а существует ли какой java-aссемблер- компилятор в байт код для мобильного?
и существует уже для МПкомпилера какоенить ИДЕ?
|
(Offline)
|
|
11.01.2009, 21:46
|
#119
|
Нуждающийся
Регистрация: 03.01.2009
Сообщений: 93
Написано 8 полезных сообщений (для 15 пользователей)
|
Ответ: создание MIDletPascal compiler'a
а тема ещё актуальна?
предлагаю обсудить Среду разработки нового Мпаскаля...
например окно редактора может выглядеть так
============================
меню
============================
толбар
============================
|____|____________________|_____|
|____|____________________|_____|
|____|____________________|__3__|
|____|_________2__________|_____|
|__1_|____________________|=====|
|____|____________________|_____|
|____|____________________|__4__|
|____|____________________|_____|
|____|____________________|_____|
============================
5
============================
1 окно - 2две панели - как и в редакторе, панель работы с ресурсами и панель описания манифеста....
2 окно собстевенно текстовый редактор - с подсветкой синтаксиса
-с нумерами строк-со сворачиваемыми "структурами" языка
3 окно - при редактировании текста после ввода 2х-3х и более символов
показывает встроенные наименования функций - с возможностью выбора нужной мышой..
4 окно - шаблонная структура(редактируемая) для определённых операторов...
(например)
я набираю в текстовом редакторе FOR
в 3третьем окне появляется список операторов встроенных в МП и возможно уже написанные пользователем процедуры называющиеся на FOR... - типа
FOR
FormAddChoice
FormAddGauge
FormAddImage и тд
в 4ом окне появляется шаблон для оператора FOR
//
for Index := НачальноеЗначение to КонечноеЗначение do
begin
// Операторы;
end; //EndFor
я решаю выбрать оператор FOR нажимаю Ctrl+Space и в редактор переносится текст из шаблона - который я подредактирую..
5 окно - 2 панели - 1 панель Хелп пооператорный(т.е. когда в редакторе курсор находится в слове имеющемся в словар(редактируемомо) - там высвечивается описание.. например:
в редакторе курсор в слове DrawEllipse(
в 5 окне 1ой панели
procedure DrawEllipse(x, y, width, height: integer);
Рисует эллипс, вписанный в указанный прямоугольник.
Example:
begin
drawEllipse(0, 0, getWidth, getHeight);
repaint;
delay(1000);
end.
См. также: fillEllipse, getWidth, getHeight, setColor, repaint
во второй панели ведётся лог комплилятора ....
типа такое виденье... может кто сможет типа такое заделать?
ну и конечно просьба дополнить....
PS - в панель ресурсов добавить возможность просмотра содержимого - картинок-воспроизведение муз файлов - вставить опцию "обработать рисунок утилитой" pngout.exe ....
Последний раз редактировалось Serg153, 11.01.2009 в 22:22.
|
(Offline)
|
|
11.01.2009, 23:35
|
#120
|
Модератор
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений (для 817 пользователей)
|
Ответ: создание MIDletPascal compiler'a
Будет компилятор - написать IDE не проблема.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 15:39.
|