Render.ru

Кто смыслит в Yacc/Lex?

#1
Они же Flex/Bison?

Есть задачка на 3 часа.

Пишу для ShaderMan конвертор из SL в BR. Первые попытки сделать это на Perl показали несостоятельность подхода - простыми Regular Expressions сделать подобное достаточно сложно + перловый скрипт просто так Win32 юзверям не раздашь...

Взял у Яна Стивенсона (dctsystems.freeserve.co.uk) исходники его компиллятора SL. Там все просто, сорцы на C небольшие, а вот сорцы на Lexx/Yacc - поболе.

Отсюда мораль - нужна помощь человека, разбирающегося в предмете. Я таковым к сожалению не являюсь.

Кто-нибудь, откликнитесь!!! ;-)
 
#2
Есть предположение, что искать не здеся надо :) Я, к примеру, только по слухам знаю, что это такое :-((
 
#3
Иэх, а где ж искать то... ;-) Среди моих знакомых таковых нет...
 
#4
Ставь любой линукс, и вперед....а можно и просто почитать man....
 
#5
Уважаемый Joss немного не понимает, о чем он говорит. К тому же совет о том, что для прочтения man надо ставить Linux... мягко говоря, не катит. У меня FreeBSD стоит, я на нем почитаю. Или вот еще - google.com. Или linuxdoc.org (если я не ошибаюсь).

А к вопросу о man - так в них во всех ключи запуска программы описаны. А синтаксис lex/yacc описывается в многочисленных книжках, институтских курсах по теории построения компилляторов и прочих умных источниках.

Так вот проблема в том и состоит, что мне некогда читать эти умные книжки. И я полагал, что кто-либо из уважаемых читателей этого форума эти книжки уже прочитал и эти курсы в институте изучал.

Огромная просьба - если не знаете, о чем говорите - не надо давать глупых советов. Только время потратите свое и чужое.

Блин, это ж надо - поставить Линукс для чтения манов...
 
#6
- ставь солярку, я не навязываюсь......нужен был ответ - он был дан.....а если кто-то хочет раздвинуть пальцы и ткнуть меня носом в незнание чего-либо - можете не тратить зря свое время, мне на.....ть, кто и что здесь мне посоветует......просто в следующий раз отвечать не буду, да и все.....делов-то....
 
#8
1. Я бы хотел извиниться перед читателями за непроизвольный выброс энергии в пространство. Больше постараюсь энтропию не увеличивать.

2. Далее по существу. Да будет известно уважаемому Joss'у, что большинство man'ов к утилитам GNU описывают только систему ключей данной утилиты, но никак не синтаксис.

В качестве сравнения могу предложить человеку, не знающему Перл, переписать программу, пользуясь исключительно знаниями, полученными из man perl.

Как минимум, придется сделать еще хотя бы man perlsyn ;-) а там окажется,что проще книжку почитать ;-)

3. Советы типа "хочешь, чтобы заработало - поставь Linux", показывают исключительно хорошие стороны характера автора совета, а никак не хорошие стороны его интеллекта. Равно как и последующий флейм.

Всем, кто считает, что я не прав - плиз, в приват на мыло.

Всё. Больше к этой теме не возвращаемся.
 
#9
2. Далее по существу. Да будет известно уважаемому Joss'у, что большинство man'ов к утилитам GNU описывают только систему ключей данной утилиты, но никак не синтаксис.

Вообще-то нет.....я не знаю, как там во FreeBSD, но во всех линуксах маны описывают не только ключи для запуска программ, но и конфиги, синтаксис языков(если это языки), и вообще - это зависит от того, кто делал софт.....например Python, насколько я помню(проверить не могу - линукс сейчас не бутится), очень подробно описывается в манах....впрочем практически для всех пакетов есть более подробные описания в /usr/doc/

Как минимум, придется сделать еще хотя бы man perlsyn ;-) а там окажется,что проще книжку почитать ;-)

Проще именно читать с экрана - можно вывести до 6 манов(по числу консолей) и быстро свитчиться, а если еще выучить все фичи less'а по поиску в тексте......

3. Советы типа "хочешь, чтобы заработало - поставь Linux", показывают исключительно хорошие стороны характера автора совета, а никак не хорошие стороны его интеллекта. Равно как и последующий флейм.

Я никому и никогда этого не говорил, не надо.....если бы тебе нужен был хелп по нурбам, то я бы посоветовал поставить Alias ST или OpenNURBS от McNill'а, тебе нужен был хелп по Yacc - плс, ставь линукс, юниксы это родная система для этого языка.....благо поставить его теперь - раз плюнуть(всяко проще, чем FreeBSD)......

Я не знаю, чем был продиктован столь неадекватный ответ, но извините - общаться с вами теперь несколько неприятно..... :-\


PS: Мыло я не люблю...
 
#10
Resume:

1. Надеюсь, Joss простит мне мою неприязнь к Linux ;-)
2. Равно как и неприязнь к ответам на вопросы, схему которых он предложил. Тем более, что помощи такие ответы не дают.
3. Мир, бледнолицые.
 
Сверху