Здравствуйте, matumba, Вы писали:
VD>>Все что нужно находится в солюшене
M>Т.е. мне его создавать не надо, просто дописать код в солюшен, так? Уже качаю сорсы.
Солюшен — это не проект. Тебе нужно создать новый проект. Этот проект действительно можно добавить в указанный солюшен. Ему там будет самое место.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: [PEG] Парсер C# 4.0
От:
Аноним
Дата:
11.11.10 23:16
Оценка:
C>>На практике встречал в работе с железом. Там сплошь и рядом этажерки указателей на помойки со структурами и указателями в которых указатели на массивы. Новейшее китайское железо с ихним же апи (железо в смысле промышленное которое на шине RS485). Хорошо когда массив с получаемыми данными можно сразу fixed и GC просто понервирничает, а бывает где все совсем плохо, что умножается на в принципе сложную тему invoke/interop... ну вы поняли. Кто умнее пишут в неуправляемых плюсах либу-прокладку, но большинство не парится — unsafe.
VD>А что людей работающих с никоуровневыми АПИ на дотнете много?
Весьма. Причем есть забавная тенденция — asm помню, микроконтроллеры программлю, .net помню пишу софт... а вот ++ хреново помню, пишу и читаю уже медленно.
Скажу больше, в самой теме низкоуровневого программинга касающегося железа, в особенности железа промышленного все меньше низкоуровневого и все чаще встречаются уже готовые производителем API под .Net. Прогресс виден невооруженным глазом, но это пока только очевидная тенденция, о прорыве такими темпами года два-три еще, потом будет дурным тоном не дать готовый API .Net. Причем есть положительная обратная связь, те кто делают .Net API у них и API к ++ вдруг проще и понятнее оказываются. Ну а процы под .Net Micro Framework вообще сказка, там прошивку сразу на чистом .Net пишешь.
Китайцы ODM-щики (делают платформу-прототип на выставки, потом зафигачивают бренды покупателей, типа Rover) тоже коммерсанты, .net платформа это еще +1 способ завоевания рынка.
Re[7]: [PEG] Парсер C# 4.0
От:
Аноним
Дата:
11.11.10 23:25
Оценка:
H>>>Там дел не слишком много — вручную придется юзинги и пространства имен писать, остальное (декларации и выражения) Немерл сам умеет писать. C>>Это по хорощему счету разбирать сорец по честному, например есди вдруг там уже есть юзинги? H>Вы топик пробовали от начала читать?
Виноват. Я и немерлом заинтересовался с точки зрения парсинга, вот и подумал "в лоб".
Здравствуйте, Аноним, Вы писали:
А>Весьма. Причем есть забавная тенденция — asm помню, микроконтроллеры программлю, .net помню пишу софт... а вот ++ хреново помню, пишу и читаю уже медленно.
Что-то мне кажется, что их не так уж и много. А учитывая слова про наличие готовых дотнетных АПИ актуальность так же понижается.
Мне кажется лучшим выходом тут будет использование C++/CLI для создания безопасных оберток.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, hardcase, Вы писали:
H>Здравствуйте, hardcase, Вы писали:
H>Парсер C#4.0, генерирующий AST, вроде как принял законченную форму к r9078. Кому интересно, может посмотреть и ужаснуться.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, hardcase, Вы писали:
H>>goto великий и могучий теперь поддерживается! H>>Исходники с ним теперь компилируются
VD>Замечательно! Не загорами время когда большая часть С"-проектов сможет быть скомпилирована немерлом!
Да уж
Я тренерую конвертер на SharpDevelop-овских исходниках (версии 3.2). Именно goto какраз мешает компилироваться.
Хотя вот интеграция F#-а и еще пары небольших библиотек вполне собирается и работает.
H>>goto case пока под вопросом.
VD>А в чем вопрос? Мне кажется, что твой текущий опыт должен позволить решить и эту проблему. Нет?
Есть идея по эмуляции, но нужно собственный макрос изготавливать (идея основана на работе с ConstantFolder-ом).
Здравствуйте, hardcase, Вы писали:
VD>>А в чем вопрос? Мне кажется, что твой текущий опыт должен позволить решить и эту проблему. Нет?
H>Есть идея по эмуляции, но нужно собственный макрос изготавливать (идея основана на работе с ConstantFolder-ом).
Идею не понял. Но раз есть — пробуй!
Я бы, возможно, подумал над банальным запихиванием меток во вхождения match-а. Но там могут возникнуть сложности с тем, что при разворачивании кода match-ей компилятор может заниматься "копи-пэстом", т.е. дублировать участки кода во вложенных if-ах. А двух одинаковых меток ведь быть не должно.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Наиполезнейшие инструкции goto case и goto default теперь также поддерживаются.
Пока несколько ограниченно: каков был "case XXX", таким и должен быть "goto case XXX", иначе транслятор AST расскажет об ошибке.
Константные выражения также не поддерживаются, это не техническое ограничение (можно вполне вырутиться на макросе), это мое нежелание делать ненужную работу.