Я корочь ужо составляю 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 или придеца извращатся как с МП!!!