В PHP файл с грамматикой в 10 раз больше только потому, что в нем, помимо грамматики, находятся правила для YACC, из которых генерируется парсер языка. Обратите внимание — генерируется, именно поэтому я и говорю, что вооружившись терпением, изменить язык PHP так, как это угодно вам — задача не невозможная.
Сильно сомневаюсь, что в университете и в ваших проектах вам доводилось сталкиваться с настоящими лексерами.
Хоссспади!
Камера — ясно сказано, iSight. Что еще вы хотели бы о ней узнать? Это, собственно, все, или вам требуются hardware ids?
Производитель винта? А почему бы этим не поинтересоваться в дискуссиях на эппл? На Ubuntu.com свет клином сходится, и там сидят всеведущие гуру, для которых главный вопрос — производитель винта в макбуке? Я уж не говорю про то, что самый простой способ это выяснить — открутить ДВА винтика, снять крышечку и посмотреть самому!
Состав железа довольно подробно описан на www.apple.com/macbook/specs.html, а еще более подробно на разных тематических форумах (вроде discussions.apple.com и macrumors.com), неужели линуксоиды на убунте.ком настолько далеки от интернета?
Да нет, конечно, не сложнее чем в убунте 2007 года (где ярлык мозиллы еще не висел, видимо, на рабочем столе) — главная задача определить, в каком из подменю его искать. Терминал найти сложнее.
Забавный концепт хабра — набираешь карму, только если пишешь статьи, вкладывая энергию и время, а теряешь, уходя в минус, когда малолетние придурки, не имеющие своего мнения, выражают его таким приматовским методом (ничего личного).
Мак ОС — интуитивно-понятное устройство системы и интерфейса, что позволяет решать большинство проблем самостоятельно, не пользуясь форумами. Серьезно, за полгода единственный вопрос, который у меня возник, был «а не заземлен ли у меня ноутбук на аллюминиевый корпус почему-то?»
Каждый раз, когда я ставил себе линукс раньше (а последний раз это было год назад), следующая последовательность действий была неизменной:
1. Столкнуться с какой-нибудь неприятностью, которая совершенно незнакома (драйвера/устройства, разрешение экрана на широкоформатном ноуте и т.д.)
2. Найти, где здесь браузер (не всегда быстро)
3. От 10 мин до нескольких часов потратить на поиск информации и путей решения
4. Решить проблему и, зачастую, вернуться к п. 1
Насчет разрешения на широкоформатном мониторе — я реально столкнулся с такой проблемой в 2007, когда убунта очень, я повторяю, очень долго сопротивлялась моим попыткам выставить родное разрешение 1280х800 и настаивала на привычном 1024х768, что выглядело ужасно. Прошу не переубеждать, я же не утверждаю, что это проблема осталась (хотя интересно, как она поведет себя на макбуке с разрешением 1440х900=).
В конце концов я обычно просто не выдерживал — ну правда, мне ОС нужно не для того, чтобы денно и ночно заниматься ее настройкой под себя напильником, даже если это сомнительное удовольствие кому-то кажется очень крутым.
Я это говорю к тому, что необходимость в посещении курсов и чтении книжек при изучении других ОС постепенно отпадает — большинство «новых» пользователей ПК сейчас подрастающие дети, которые учатся сами, глядя на родителей.
С линуксом такая тема не пройдет — даже будучу it-профессионалом, все равно регулярно приходится искать в гугле очередные нетривиальные пути разрешения проблем.
Благодарю за минус в карму, лишить меня возможности писать посты и делиться своими знаниями с такими гениями, как Вы, избавляет от мучительного выбора.
Если вы не очень толстый тролль (в чем я перестаю сомневаться), перечитайте вот этот комментарий — habrahabr.ru/blogs/php/59876/#comment_1629597 и объясните, как это соотносится с тем, что впариваете мне Вы?
Простите, Вы вообще имеете представление, о чем конкретно Вы говорите? YACC позволяет описывать синтаксис языка, в стиле:
top_statement:
statement
| function_declaration_statement { zend_do_early_binding(TSRMLS_C); }
| class_declaration_statement { zend_do_early_binding(TSRMLS_C); }
| T_HALT_COMPILER '(' ')' ';' { zend_do_halt_compiler_register(TSRMLS_C); YYACCEPT; }
;
и генерировать C-парсер на этой основе. Сделать синтаксис сильным или слабым по-моему невозможно (ибо субъективно), зато описать свой язык так, как хочешь, без заковык и переподвыподвертов можно легко и непринужденно.
И через это я тогда прошел =)
Правда, я не очень понимаю, зачем конкретно в той задаче вебсервер был нужен. Видимо, как и мне когда-то, просто для практики.
Простите, а относительно чего тогда? Мы тут про разделение неймспейсов и, якобы, слабый парсер. Я, зная синтаксис YACC, утверждаю, что сделать какой угодно разделитель не составляет никаких, я повторяю, никаких проблем.
А Вы, как собачка, стойку делаете? ПЯТЬ-ШЕСТЬ ЛЕТ назад (внимательно, пожалуйста, 2003-2004 год) — тогда был только смарти, а смарти меня не устраивал.
К тому же, а что, собственно, еще писать на пхп, кроме как темплейтные движки и цмс?
Сильно сомневаюсь, что в университете и в ваших проектах вам доводилось сталкиваться с настоящими лексерами.
Камера — ясно сказано, iSight. Что еще вы хотели бы о ней узнать? Это, собственно, все, или вам требуются hardware ids?
Производитель винта? А почему бы этим не поинтересоваться в дискуссиях на эппл? На Ubuntu.com свет клином сходится, и там сидят всеведущие гуру, для которых главный вопрос — производитель винта в макбуке? Я уж не говорю про то, что самый простой способ это выяснить — открутить ДВА винтика, снять крышечку и посмотреть самому!
Забавный концепт хабра — набираешь карму, только если пишешь статьи, вкладывая энергию и время, а теряешь, уходя в минус, когда малолетние придурки, не имеющие своего мнения, выражают его таким приматовским методом (ничего личного).
Каждый раз, когда я ставил себе линукс раньше (а последний раз это было год назад), следующая последовательность действий была неизменной:
1. Столкнуться с какой-нибудь неприятностью, которая совершенно незнакома (драйвера/устройства, разрешение экрана на широкоформатном ноуте и т.д.)
2. Найти, где здесь браузер (не всегда быстро)
3. От 10 мин до нескольких часов потратить на поиск информации и путей решения
4. Решить проблему и, зачастую, вернуться к п. 1
Насчет разрешения на широкоформатном мониторе — я реально столкнулся с такой проблемой в 2007, когда убунта очень, я повторяю, очень долго сопротивлялась моим попыткам выставить родное разрешение 1280х800 и настаивала на привычном 1024х768, что выглядело ужасно. Прошу не переубеждать, я же не утверждаю, что это проблема осталась (хотя интересно, как она поведет себя на макбуке с разрешением 1440х900=).
В конце концов я обычно просто не выдерживал — ну правда, мне ОС нужно не для того, чтобы денно и ночно заниматься ее настройкой под себя напильником, даже если это сомнительное удовольствие кому-то кажется очень крутым.
Что мешает сделать все так же хорошо? Неумение, или принципиальное нежелание?
С линуксом такая тема не пройдет — даже будучу it-профессионалом, все равно регулярно приходится искать в гугле очередные нетривиальные пути разрешения проблем.
Save the planet, kill yourself
Если же тролль — аривидерчи.
top_statement:
statement
| function_declaration_statement { zend_do_early_binding(TSRMLS_C); }
| class_declaration_statement { zend_do_early_binding(TSRMLS_C); }
| T_HALT_COMPILER '(' ')' ';' { zend_do_halt_compiler_register(TSRMLS_C); YYACCEPT; }
;
и генерировать C-парсер на этой основе. Сделать синтаксис сильным или слабым по-моему невозможно (ибо субъективно), зато описать свой язык так, как хочешь, без заковык и переподвыподвертов можно легко и непринужденно.
Правда, я не очень понимаю, зачем конкретно в той задаче вебсервер был нужен. Видимо, как и мне когда-то, просто для практики.
К тому же, а что, собственно, еще писать на пхп, кроме как темплейтные движки и цмс?