парсеры/трансляторы на ANTLR никто не писал?
Добавлено: 01 дек 2003, 21:37
вопрос есть.
Чего парсим?MarkM писал(а):вопрос есть.
правильно. сложно четырмя пальцами печатать.Marmot писал(а):Чего парсим?MarkM писал(а):вопрос есть.
И для чего? Может можно решение попроще найти...
Я это дело знаю, но объяснять не возмусь, у меня пальцы заболят всё печатать
Как умеем, так и растопыриваемсяпапа Карло писал(а):правильно. сложно четырмя пальцами печатать.Marmot писал(а):Чего парсим?MarkM писал(а):вопрос есть.
И для чего? Может можно решение попроще найти...
Я это дело знаю, но объяснять не возмусь, у меня пальцы заболят всё печатать
PS
[trn]Dlja chego... pochemu...Marmot писал(а):Чего парсим?MarkM писал(а):вопрос есть.
И для чего? Может можно решение попроще найти...
Я это дело знаю, но объяснять не возмусь, у меня пальцы заболят всё печатать
Марк, а может взять JavaScript вот отсюда : http://www.mozilla.org/rhino/MarkM писал(а):[trn]Dlja chego... pochemu...
Karoche. Pishu nebol'shoj jazychok dlja prikladnyh celej.
Na Jave.
Problema v [/trn] [trn] ANTLR [/trn] [trn] v tom chto on ne daet [/trn] [trn] exceptions [/trn] [trn] pridelat' k metodam.
To est' svoi-to excepshny on pridelyvaet a moi, naprimer [/trn] [trn] IOException, SQLException [/trn] [trn] net.
Mozhno konechno ogorod s [/trn] [trn] try...catch [/trn] [trn] gorodit, no ne kuzjavo poluchaetsja. Hochu probrasyvat' naruzhu. Kak? [/trn]
[trn]Marmot писал(а): Марк, а может взять JavaScript вот отсюда : http://www.mozilla.org/rhino/
[trn]Marmot писал(а): А теперь об ANTLR, я например вопрос так и не понял
Exceptions где? В теле парсера или в том что ты парсишь?
Код: Выделить всё
public void MyRule throws ANTLsomeRexception, SQLexception
Код: Выделить всё
public void MyRule throws ANTLsomeRexception
[trn]Ugu, samomu parser pisat' eshe huzhe.[/trn]Marmot писал(а): PS
Если ты по делу ANTLR решил приспособить, я бы не советовал, возни много...
Понятно... изврат это imhoMarkM писал(а): [trn]
Mne ne nado java script. Specializirovannyj jazychok, bolee pohozhij na DDL ot kakojnibud' BD tipa Orakla
[/trn]
Ничего не понял, нафига вызывать DB при парсинге???!!!MarkM писал(а):
[trn]
V tele parsera. V metodah, kotorye sootvetstvujut pravilam.
[/trn]
I need like thatANTLR does like thatКод: Выделить всё
public void MyRule throws ANTLsomeRexception, SQLexception
Код: Выделить всё
public void MyRule throws ANTLsomeRexception
А XML, например, не легче будет использовать???MarkM писал(а): [trn]Ugu, samomu parser pisat' eshe huzhe.[/trn]
[/code][/trn]
Marmot писал(а):MarkM писал(а): I need like thatANTLR does like thatКод: Выделить всё
public void MyRule throws ANTLsomeRexception, SQLexception
Код: Выделить всё
public void MyRule throws ANTLsomeRexception
[trn]Marmot писал(а): Ничего не понял, нафига вызывать DB при парсинге???!!!
Кто у тебя процессит AST???
Ты ничего не путаешь? Парсинг это парсинг, execution/code generation делается потом, используя AST.
Теперь даMarkM писал(а):[trn]
Ty otvet na vopros znaesh?
[/trn]
Код: Выделить всё
try{
...
}
catch (SQLException sqle){
//jdk<1.4 throw new RuntimeException (sqle.getMеssage());
throw new RuntimeException (sqle);
}
Marmot писал(а):Теперь даMarkM писал(а):[trn]
Ty otvet na vopros znaesh?
[/trn]
попробуй сделай так:
try/catch конечно написать придётся, но и проброс будет...Код: Выделить всё
try{ ... } catch (SQLException sqle){ //jdk<1.4 throw new RuntimeException (sqle.getMеssage()); throw new RuntimeException (sqle); }
[trn] Учись srazu правильно otvechat'! A to chto, da zachem, da mozhet XML[/trn]Marmot писал(а): Учись правильно вопросы задавать...
Если бы ты работал с AST или DOM у тебя бы никогда таких проблем не возникло...MarkM писал(а):[trn] Учись srazu правильно otvechat'! A to chto, da zachem, da mozhet XML[/trn]
Никогда серьезно не работал с ДОМ или АСТ.Marmot писал(а): Если бы ты работал с AST или DOM у тебя бы никогда таких проблем не возникло...
Код: Выделить всё
CREATE ENTITY "myEntity" PROPERTY property1;
Код: Выделить всё
createEntity(property1,property2,property3);
Ты пойми, любое "стандартное и универсальное" означает - predefined method signatures.MarkM писал(а): Есть ли что-то готовое, стандартное и универсальное или все разборы АСТ/ДОМ надо писать ручками?
То есть ты предлагаешь сделатьMarmot писал(а):Ручками (вернее ножкамиMarkM писал(а): Есть ли что-то готовое, стандартное и универсальное или все разборы АСТ/ДОМ надо писать ручками?), то-же DOM пройти - невелика проблема, тем более что дерево у тебя не такое уж и ветвистое.
А в смысле application maintenance лучше чем XML/DOM ничего и нету...
А ещё можно написать XML Schema и сгенерить Java classes прямо под твои запросы, тогда весь обход превратится в перебор List-a statement-ов
об этом здесь http://castor.exolab.org/sourcegen.html или здесь http://java.sun.com/xml/jaxb/