Re: Refal & XML - possible tasks


Subject: Re: Refal & XML - possible tasks
From: Andrey Slepuhin (pooh@msu.ru)
Date: Tue Dec 21 1999 - 18:31:10 MSK


"Vladimir A. Roganov" wrote:
>
> Andrey Slepuhin wrote:
> >
> > День добрый всем!
> >
> > Я тут на днях поставил XP/XT - соответственно XML-парсер и
> > имплементация XSL/XSLT от J.Clark'а, написанные исключительно
> > на Java. Все это дело, конечно, работает, но результаты удручающие -
> > даже на моем Dual PIII-450 преобразование тестового XML-файла
> > из 120 строк в HTML занимает около 5.5 секунд с использованием JIT,
> > и почти 8 секунд без оного (JDK1.2.2)!!! В связи с этим я вспомнил
> > про то, что Рефал надо увязывать с обработкой XML и после некоторых
> > размышлений пришел к следующему набору задач в этой области.
> >
>
> Java (from my experience) is ugly tool for parsers
> (considering both language features and performance of resulting code).

Несомненно :-))) Но больше посмотреть не на что -
насколько мне известно XT - единственная свободно доступная
имплементация XSL/XSLT, которая находится в состоянии когда ее
можно использовать.

> I think J.Clark's first goal is a portability of his program.
>
> BTW, are You measuring java performance properly ?
> Under _Linux_ (JDK 1.1.x installed without manual efforts)
> java takes up to few seconds unpacking zipped JDK class files,
> so test how long works trivial "Hello, World !" at Your Dual PIII-450.
> (?! may be this effect fixed in JDK 1.2.x ?!)

Хм... Довольно тяжело аккуратно измерить эффективность, поскольку
классы извлекаются по мере надобности. Могу лишь сказать, что
"Hello, World!" на моей машине выполняется порядка 0.4 сек.
Также замечу, что Jade (имплементация DSSSL, написанная на C++) -
тоже далеко не быстрое приложение.

> Please sorry for humor, but second processor of Your Dual PIII-450
> looks useless for this test :-)

Возможно, хотя я не уверен в этом на 100%. Насколько я понимаю,
Linux JDK 1.2.2 по умолчанию использует native threads, поэтому
некоторые вещи, скажем, GC или загрузка классов вполне могут
выполняться параллельно. Хотя, конечно, основной код программы
выполняется на одном CPU :-))

>
> > 1) XML-парсер. Читает XML-документ и представляет его в виде
> > объектного выражения.
> >
> > 2) DTD-парсер. Читает XML DTD и представляет в виде объектного
> > выражения.
> >
> > 3) XML Validator. Берет XML-документ и соответствующий DTD (уже
> > в виде объектных выражений) и производит проверку документа на
> > соответствие DTD.
> > Внимание!!! Задача на суперкомпиляцию: оптимизация XML Validator
> > для конкретного DTD.
> >
> > 4) XSL-парсер. Читает XSL-стиль и представляет в виде объектного
> > выражения.
> >
> > 5) XSL-интерпретатор. Берет XSL-стиль и XML-документ (уже в виде
> > объектных выражений) и производит необходимое преобразование
> > XML-документа.
> > Внимание!!! Задача на суперкомпиляцию: оптимизация XSL-интерпретатора
> > для конкретного стиля.
> >
> > 6) В случае, если суперкомпиляция в 5) не даст желаемого результата,
> > можно поставить отдельную задачу по написанию XSL-компилятора,
> > который по XSL-стилю будет выдавать Рефал-программу преобразования
> > XML-документов в соответствии с конкретным стилем.
> >
> > Володя (Роганов), тут есть хорошие задачи для твоих студентов -
> > 1) - 4) вполне годятся для курсовой, а 5) и 6) могут и на диплом
> > потянуть. Так что можешь взять на заметку.
>
> Tasks looks nice, and I really need a tasks for students.
> My brother said that he is planning to involve most powerful students
> for interesting real projects after 1-2 month. MSIU plan to assign some
> money for students working for these projects.
> So, any such tasks are very welcoming !
>
> I think, however, that allmost all MSIU students are able
> to execute only some more or less simple/technical task, so we should be
> preparing to unsatisfactory result ...

Некоторые задачи однако, например 1), кажутся весьма простыми...

Всего доброго,
Андрей.



This archive was generated by hypermail 2b25 : Mon Oct 25 2004 - 21:24:58 MSD