Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Основной форум

Основной форум Сюда все проблемы связанные с программированием.

Ответ
 
Опции темы
Старый 21.05.2009, 20:22   #151
Teadon
AnyKey`щик
 
Регистрация: 25.04.2009
Сообщений: 2
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: создание MIDletPascal compiler'a

Всем привет. Я могу помочь ... Сам сейчас это всё обдумываю. Где-то через 3-4 месяца смогу представить рабочую версию проекта. Всё зависит от времени. Настроен на разработку высокоуровневой проффесиональной среды программирования. =)
(Offline)
 
Ответить с цитированием
Старый 21.05.2009, 23:45   #152
Richik
Нуждающийся
 
Аватар для Richik
 
Регистрация: 02.05.2009
Сообщений: 68
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: создание MIDletPascal compiler'a

Многие будут за

Да и еще, встройте пошаговый отладчик пожалуйста, ну если это в принципе представляется возможным.

В MIDletPascal очень сложно следить за корректностью работы мидлета, приходиться постоянно что-то выводить на экран, да и еще чтоб все "увиделось", нужно что-то включать и переключать по несколько раз.
(Offline)
 
Ответить с цитированием
Старый 22.05.2009, 00:04   #153
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: создание MIDletPascal compiler'a

Чтобы иметь пошаговый отладчик, нужно эмулятор JVM писать.
(Offline)
 
Ответить с цитированием
Старый 22.05.2009, 19:34   #154
Richik
Нуждающийся
 
Аватар для Richik
 
Регистрация: 02.05.2009
Сообщений: 68
Написано 6 полезных сообщений
(для 6 пользователей)
Ответ: создание MIDletPascal compiler'a

Сообщение от ViNT Посмотреть сообщение
Чтобы иметь пошаговый отладчик, нужно эмулятор JVM писать.
о том и говорю
(Offline)
 
Ответить с цитированием
Старый 24.05.2009, 13:18   #155
abcdef
Знающий
 
Регистрация: 16.09.2008
Сообщений: 299
Написано 71 полезных сообщений
(для 123 пользователей)
Ответ: создание MIDletPascal compiler'a

про эмулятор здесь уже говорил, его сделать в принципе не сложно. Но чтоб проги запускались надо написать еще несколько сотен библиотек... врятли кто-нибудь здесь возьмется за это, или я ошибаюсь?

p.s. можно просто сделать режим компиляции с отладкой, когда в генерируемый код автоматически будет вставляться строка исходного кода, которая будет выводиться на консоль при выполнении на любом эмуляторе
(Offline)
 
Ответить с цитированием
Старый 27.05.2009, 22:45   #156
Teadon
AnyKey`щик
 
Регистрация: 25.04.2009
Сообщений: 2
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: создание MIDletPascal compiler'a

Насчёт эмулятора, буду думать когда всё сделаю остальное. Делать или неделать его. abcdef - хороший вариант откладки
(Offline)
 
Ответить с цитированием
Старый 27.05.2009, 23:27   #157
satan
Нуждающийся
 
Регистрация: 10.02.2007
Сообщений: 99
Написано 18 полезных сообщений
(для 28 пользователей)
Re: создание MIDletPascal compiler'a

Прива всем... Я тоже не забил на проект, переписал IDE и начал разбираться с Java ASM скорее всего и проще для меня наверное будет сделать Java Assembler а потом просто транслятор с Pascal в JASM, простой ассемблер уже зашивал в IDE так что кому нужен инструмент для компиляторов с рабочим ассемблером и примерами пишите.

Сосо/r не заморачивался поиском, кому надо найдет в сети, просто щас пару проектов больших, сцуко отнимают все время...
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (27.05.2009)
Старый 29.05.2009, 07:58   #158
Serg153
Нуждающийся
 
Регистрация: 03.01.2009
Сообщений: 93
Написано 8 полезных сообщений
(для 15 пользователей)
Ответ: создание MIDletPascal compiler'a

Hi All...
в прошлом году тоже начал писать Иде - на дельфях
заделал редактор - с подсветкой кода - Хелпом по каждому оператору - и тд...
но потом в аварию попал ... 5 месяцев провалялся - в общем пока восстановится несмог...
===
по Компилятору :
может сделать примерно такую схему
MidPascal
( с вставками на JavaAsm(типа Жасмин) оформлять в коде Asm: EndAsm;
и вставками на Jave (Jav: EndJav;
==>>
трансляция на JAva ==>> на Jasmin == Мидлет

и в ИДЕ предусмотреть обратную конвертацию
Мидлет ==> Jasmin ==> Java ==> MidPas
---
гдето я видел ЕХЕ компилятора Jasmin в Class
(компиляторы и трансляторы можно сделать в виде отдельных прог - которые вызываются из Иде - тогда можно распределить задачи здесь на форуме - кто то возьмётся за трансляторы, кто за компиляторы а кто и дизасемблер....
===
я немного подздоровею и вплотную впрягусь в какиенибудь подзадачи...
(Offline)
 
Ответить с цитированием
Старый 29.05.2009, 08:22   #159
Serg153
Нуждающийся
 
Регистрация: 03.01.2009
Сообщений: 93
Написано 8 полезных сообщений
(для 15 пользователей)
Ответ: создание MIDletPascal compiler'a

примерный вид Иде...
подшаманю немного и выложу исходники....
Миниатюры
Нажмите на изображение для увеличения
Название: fride.png
Просмотров: 688
Размер:	109.4 Кб
ID:	6120  
(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо Serg153 за это полезное сообщение:
impersonalis (11.06.2009), odd (30.05.2009), Piligrim (29.05.2009)
Старый 08.06.2009, 16:44   #160
abcdef
Знающий
 
Регистрация: 16.09.2008
Сообщений: 299
Написано 71 полезных сообщений
(для 123 пользователей)
Ответ: создание MIDletPascal compiler'a

какой-то faq по java, со списком компиляторов
http://xoomer.virgilio.it/csadun/javafaq.html

-------содержание текста-------
GCJ - http://gcc.gnu.org/Java/
The GNU Compiler for the Java Programming Language, compiles Java source or
bytecode to native machine code. Most APIs are supported, except the AWT,
Swing and RMI. Open Source! Lo si puт usare anche sotto Windows con CygWin
http://sources.redhat.com/cygwin/, ma и ancora lontano dall'essere finito.

JCC - http://www.geocities.com/CapeCanaver.../4040/jcc.html
A Java to C converter - A direct Java to C translator. Unlike other translators
JCC does not convert Java class files, but instead processes Java source code
directly. Completamente free!

JET Deployment Environment - http://www.excelsior-usa.com/jet.html
built around an optimizing Java to native code compiler for Windows.
The compiler produces conventional EXE and DLL files that do not use JVM
during execution from Excelsior. A pagamento.

Jolt - http://www.meurrens.org/ip-Links/Jav...Down/jolt.html
Hackers-only prototype of a Java bytecode to C translator written in Java.

Toba - http://www.cs.arizona.edu/sumatra/toba
Java-to-C Translator: translates Java class files into C source code to allow
making, fast, directly executable programs that avoid the overhead of
interpretation. For stand-alone applications, not applets.

IBM Jikes - http://oss.software.ibm.com/develope...nsource/jikes/
JikesTM is a compiler that translates Java source files as defined in The Java
Language Specification into the bytecoded instruction set and binary format
defined in The Java Virtual Machine Specification.

Harissa - http://www.irisa.fr/compose/harissa/
Harissa is a Java environment that includes a compiler from Java bytecode to C
and a Java interpreter. While Harissa is aimed at applications that are
statically configured, such as the Javac compiler, it is also designed to allow
code to be dynamically loaded in an already compiled application.

Jasmin - http://mrl.nyu.edu/~meyer/jvm/
Jasmin is a Java Assembler Interface. It takes ASCII descriptions for Java
classes, written in a simple assembler-like syntax and using the Java Virtual
Machine instruction set. It converts them into binary Java class files suitable
for loading into a JVM implementation.

JToExe - http://www.bravozulu.com/Products/JToExe/jtoexe.html
Lo riporto solo per "completezza"... il dominio и significativo:"bravo zulщ"...
a chi? A chi lo usa!

BeanShell - http://www.beanshell.org/
BeanShell is a small, free, embeddable, Java source interpreter with object
scripting language features, written in Java. BeanShell executes standard
Java statements and expressions, in addition to obvious scripting commands
and syntax. BeanShell supports scripted objects as simple method closures
like those in Perl and JavaScript(tm).

JFlex - http://www.jflex.de/
JFlex is a lexical analyzer generator (also known as scanner generator)
for Java(tm), written in Java(tm). It is also a rewrite of the very useful
tool JLex which was developed by Elliot Berk at Princeton University.

JLex - http://www.cs.princeton.edu/~appel/modern/Java/JLex/
JLex is a lexical analyzer generator, written for Java, in Java.
JLex was developed by Elliot Berk at Princeton University. It is now
maintained by C. Scott Ananian.

Jad - http://www.geocities.com/SiliconVall.../8617/jad.html
Jad - the fast Java Decompiler. Jad is a Java decompiler, i.e. program that
reads one or more Java class files and converts them into Java source files
which can be compiled again. Jad is a 100% pure C++ program and it generally
works several times faster than decompilers written in Java.

JODE - http://jode.sourceforge.net/
JODE (Java Optimize and Decompile Environment) is a Java package containing
a decompiler and an optimizer for Java. This package is freely available under
the GPL.

Delphi2Java - http://www.javadelphi.com/
Creates Java source code from Delphi's Pascal code. Commerciale

See also:
http://dmoz.org/Computers/Programmin...s/Translators/
Java Code Engineering & Reverse Engineering -
http://www.meurrens.org/ip-Links/Java/codeEngineering/
(Offline)
 
Ответить с цитированием
Старый 15.06.2009, 10:36   #161
abcdef
Знающий
 
Регистрация: 16.09.2008
Сообщений: 299
Написано 71 полезных сообщений
(для 123 пользователей)
Ответ: создание MIDletPascal compiler'a

исходники на delphi простейшего редактора с подсветкой синтаксиса
http://sources.codenet.ru/download/3...Highlight.html

p.s. что-то без предложений/исходников по компилятору, пропадает интерес продолжать проект...
(Offline)
 
Ответить с цитированием
Старый 18.06.2009, 00:34   #162
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: создание MIDletPascal compiler'a

Вычистил флуд.
Кто бот, кто не бот - разбирайтесь в "Болтовне".
(Offline)
 
Ответить с цитированием
Старый 18.06.2009, 01:04   #163
satan
Нуждающийся
 
Регистрация: 10.02.2007
Сообщений: 99
Написано 18 полезных сообщений
(для 28 пользователей)
Re: создание MIDletPascal compiler'a

abcdef а какие тебе исходники надо?
Ну вот держи подсветку чуть покруче чем в примере...

А вообще у меня куча исходников на любой вкус...
Вложения
Тип файла: zip Editor.zip (57.5 Кб, 348 просмотров)
(Offline)
 
Ответить с цитированием
Старый 19.06.2009, 06:39   #164
Serg153
Нуждающийся
 
Регистрация: 03.01.2009
Сообщений: 93
Написано 8 полезных сообщений
(для 15 пользователей)
Всем привет...
---
прижде чем выкладывать ide ? хотелосьбы обсудить несколько вопросов по будущему языку...
---
I. - структура каталогов самого Компилятора
1 - MPascal(условное название каталога Компилятора)
2 - Help(каталог со всякими справочными материалами по языку)
3 - Libs(каталог с готовыми библиотеками Class файлов + Txt файлы с такимже именем - описание либы(будет выводиться в инспекторе библиотек)
4 - Units (каталог с библиотеками на исходном языке(мпаскале) + Тхт описание
5 - Source (каталог содержащий всякие разные подкаталоги напр музыку, картинки и тд... то что будет чаще всего использоваться в Проекте)
5.1 - Image - каталог Png, Ico? Bmp? Jpg?
5.2 - Sound - каталог Wav Midi Mp3
5.3 - OtherSrc - ?
6 - Projects(каталог пользовательских проектов)
7 - MPIni??? - (настроечные / вспомогательные файлы компилятора (например дополнительные ЕХЕ - транслято

2 satan - посмотри в исходниках - может есть пример редактора на Tmemo со структурой?

ничего непонимаю - текст в мессагах почемуто обрезается... по дцать раз редактировал - а он опять пропадает.... попробую ещё разик...
----
---
I. - структура каталогов самого Компилятора
1 - MPascal(условное название каталога Компилятора)
2 - Help(каталог со всякими справочными материалами по языку)
3 - Libs(каталог с готовыми библиотеками Class файлов + Txt файлы с такимже именем - описание либы(будет выводиться в инспекторе библиотек)
4 - Units (каталог с библиотеками на исходном языке(мпаскале) + Тхт описание
5 - Source (каталог содержащий всякие разные подкаталоги напр музыку, картинки и тд... то что будет чаще всего использоваться в Проекте)
5.1 - Image - каталог Png, Ico? Bmp? Jpg?
5.2 - Sound - каталог Wav Midi Mp3
5.3 - OtherSrc - ?
6 - Projects(каталог пользовательских проектов)
7 - MPIni??? - (настроечные / вспомогательные файлы компилятора (например дополнительные ЕХЕ - трансляторы, компиляторы, декомпиляторы, линковщики, архиваторы, редакторы рисунков...)
8 -
9 ??? что нибудь добавить?
=======
II. - каталог Проекта с пользовательской программой
в нём файл проекта - обычный ИНИ(с секциями и разделами - описывающие фалы проекта , какиенибудь настройки...
1 - ImgIn - файлы рисунков используемых в проекте (разных форматов)
2 - ImgOut - теже фалы рисунков - но обработынных утилитой pngout.exe - для формирования "сжатых" PNG файлов? кажется утилита бесплатная и будет поставлятся юзверям языка в комплекте ??
3 - SrcSound - разные музыкальные файлы проекта
4 - SrcMpas - редактируемы исходники на языке
5 - OutJava - оттранслированные Исходники в промежуточный язык компилятора Java???
6 - OutJAsm - оттранслированные Java в ЖаваАссемблер?
7 - Classes - полученные готовые класс файлы из Ассемблера???
8 - Bin - готовые для вставки в телефон Jar Jad
===
теперь по языку III. некоторые изменения синтаксиса Мпаскаля-ля-ля-ля...
1 - многострочные комментарии - мля... удобнее набирать с клавы, как мне кажется, символы /* и */???
2 - begin end - может заменим эту комбинацию на фигурные скобки? {}
3 - изменить описание переменных и функций... мля... для синаксического анализатора и коде жампера - былобы полегче использовать конструкцию типа: Описание : Индетефикатор(ы) чем NAme:type
секция Var
int: Name1, name2 = 10;
double: name3 = 3.14592;
string: function fName(string:param1,param2);
???

III. вопросы по языку...
5. секция UseLibs - использование готового class из каталога Libs компилятора, типа так: описание(имя либы и описание используемых в ней процедур/функций?
UseLibs Lib_advui: // Библиотека для управления огоньками и вибратором.
int: function set_lights (int: num, level);
/*-----------------------------------------------------------------------
Включить/выключить огоньки с номером num.
level - яркость данного огонька (0-100).
Пример:
a:=set_lights(0, 0) выключает экран.
Возвращает: 0 - ф-ция сработала нормально
-1 - неверный аргумент (нет огонька с номером num или
превышен интервал level)
*/

int: function flash_lights (int: dur);
/*-----------------------------------------------------------------------
Аналог flashBacklight...
dur - время мигания экрана в миллисекундах
Возвращает: 0 - ф-ция сработала нормально
-1 - неверный аргумент (время < 0)
*/

int: function startVibra (int: freq, dur );
/*-----------------------------------------------------------------------
Запустить вибратор на время dur в миллисекундах.
freq - частота вибрации (0-100)
Возвращает: 0 - ф-ция сработала нормально
-1 - ошибка аргумента (время < 0 или превышен интервал
частоты)
-2 - телефон не поддерживает вибрацию
*/

procedure stopVibra;
/*-----------------------------------------------------------------------
Останавливает вибратор, например если он был запущен с помощью
startVibra и время вибрации ещё не кончилось.
*/
EndLibs;
=======

хотя текст и большой - но в редакторе его можно будет "схлопнуть" в в одну строчку:
[+] UseLibs Lib_advui: // Библиотека для управления огоньками и вибратором. [...]
и этот текст будет автоматически? скопирован из файла описания ТХТ либы, в редактор, менеджером проекта...
а комментарии будут показаны в окне пооператорного Хелпа - если встретится в тексте процедура из библиотеки..???

III. о языке -
6. сделать структуру CASE такого типа:

DoCase
  Case (условие):
    операторы;
  Case (условие):
    операторы;
  Case (условие):
    операторы;
  Other:
    операторы;
EndCase;
???
---
7 - ещё про типы данных хотел поспрашивать... какие они будут в дополнение к "стандартным".. будут ли байтовые?

8. - из уже существующих библиотек для мидлет паскаля - отлаженных и проверенных - внести Их в новый компилятор....

Последний раз редактировалось ViNT, 19.06.2009 в 11:35.
(Offline)
 
Ответить с цитированием
Старый 19.06.2009, 11:42   #165
abcdef
Знающий
 
Регистрация: 16.09.2008
Сообщений: 299
Написано 71 полезных сообщений
(для 123 пользователей)
Ответ: создание MIDletPascal compiler'a

не садился за проект с момента выкладывания последних исходников.
пока есть доступ к сети смотрю инфу и программы.
________
сейчас два варианта создания компилятора:
1. либо взять Pascal-s и в подпрограмме вывода листинга преобразовать текст к формату java-text-asm, а в код pascal-s добавить вывод ошибки при генерации вложенных подпрограмм и передаче в параметрах ссылки на переменную, т.е. "procedure p(VAR i : integer; j : integer);". т.к. java-спецификация не поддерживает таких конструкций в силу того что переменные метода локализованы.

2. либо написать с нуля упростив конструкцию (принципиально убрать из алгоритма возможность генерации всего лишнего), недавно принялся писать с чистого листа, поглядывая в pascal-s, сделал единую таблицу для всего (имен,идентефикаторов,типов и т.д.) скорость компиляции немного упадет, но появится однообразие структуры.... написал около 600 строк, вижу что не получается настолько эффективно как в pascal-s... подумываю чтобы вернуться к первому вариатну.
________
но важнее разобраться вот в чем:
как поступить с типом "record": как в mp - делать класс с набором переменных или разбить отдельные элементы и пусть хранится как отдельные переменные. тогда появляется вопрос: как организовать передачу записи в параметре функции, копировать поэлементно в стек потом извлекать?

также заминка на типе String для простоты можно будет сделать как в mp - отдельный метод с набором функций

если использовать float и double - необходимо перепроектировать блок арифметических операций для разделения целочисленных команд и с плавающей точкой.
________
немного об ассемблере: до сих пор не добавил верификатор, т.е. автоматическую генерацию структуры StackMap (исходники то есть, но не знаю где почитать полную информацию по этому процессу) - это очень нужно завершить.

из попадавшихся исходников java-ассемблеров более простых, чем сделал, не находил
________
про все остальное: в самых первых сообщениях говорил что надо сделать компилятор в class-файлы, упаковщики, ide - это уже другой разговор

Serg153 - если заменить код программы "begin ... end" на "{ ... }" и т.д. то получится java-исходник. для этого можно просто собрать программку на строк 200 (здесь подобное уже выкладывал), которая будет менять ТОКЕНЫ, и это компилировать в чистой java, но думаю интереса к такого рода переходникам ни у кого не возникнет.
______
общая дока по компиляторам, (без конкретных исходников)
http://ag-kastens.upb.de/wir/taiko/diss/CLDCSpec.pdf
http://www.europrog.ru/paper/obe_java2.pdf
http://delphi.od.ua/article/a-33.html
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скачать MidletPascal smesh Прочие вопросы 14 30.06.2011 15:57
создание MIDletPascal obfuscator abcdef Основной форум 7 22.12.2008 23:27
Русификатор MIDletPascal Тренсфер Прочие вопросы 14 26.07.2008 04:00
MidletPascal. Что это. Данил MidletPascal 12 23.10.2007 05:27


Часовой пояс GMT +4, время: 20:54.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com