Показать сообщение отдельно
Старый 04.10.2008, 00:56   #66
satan
Нуждающийся
 
Регистрация: 10.02.2007
Сообщений: 99
Написано 18 полезных сообщений
(для 28 пользователей)
Re: создание MIDletPascal compiler'a

Я корочь ужо составляю BNF (вернее лекс организовал), тута тормоза в том, что хочу извратицо и сделать совместимость не токма с oPascal но и с Delphi, ну тоесть что бы прога работала и на том и на том.

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

Пилгрим - если не трудно закинь в оркестр инфу о том как в Мидлетах ООП организовываеца! Типа простенький пример инклюда объектов. Так то структуру я понимаю, а вот как инклюдить это???

ЗЫ... Ча ребят чутка потерпите, я проект один добью...

Первый компилер с поддержкой рус яз... мля... перспективы...

Причом по ходу, что бы была полная поддержка Java вырисовывается следующаа схема
Pascal->Java (*.pas->*.java транслятор) это очень легко
Java -> Class (*.java->*.class) посложнее...
Причом пример соответствия
Program LaLaLa; -> Class LaLaLa
begin - end; соответственно {}
procedure AnaHono
; -> public static void
AnaHono()

И самый прикол, что можно сделать классически, тоесть на Pas написать пару библиотек
и включить поддержку INLINE, тогда функции приобретут клёвый вид

Program HelloWord; -> class HelloWorld

uses
System; -> подключим нашу библиотеку
.....

begin -> {
writeln
(
'Hello World!');
end
; -> }

Где в модуле System оформим фукцию

procedure writeln(S: String); -> public static void writeln(String [] args)
begin -> {
inline
System.out.println(S); // Вставиться без изменения
end;
end; -> }

Короче это тока наметки но в итоге получца шойта вроде

class HelloWorld{
    public static void main(){
        writeln("Hello World!");
    }
    public static void writeln(String [] args){
        System.out.println("Hello World!");
    }
}
Тут не правильно ничего, но не в этом дело...

Другой метод, сразу переводить в байт код, тоесть делать на прямую компилятор Pascal - VM ByteCode
но тогда мы не сможем подключать библиотеки написанные на Java или придеца извращатся как с МП!!!

Последний раз редактировалось satan, 04.10.2008 в 02:45.
(Offline)
 
Ответить с цитированием