Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отдельные модули для прложения 2, продолжу тему, более подробно 
:(
    Опции темы
gambit
Дата 12.9.2008, 22:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



В общем я начал дипломный проект. Здесь надо много выпендроваться чтоб привлеч внимание.
Я хочу к своему приложению написать язык программирования. Так вот я хочу написать что то типа (конечно дико упрощенной) платформы .net, свой упрощенный интерпретатор и базу с классами и функциями.
Расскажите возмоно ли такое (описано ниже) и если да то как, если нет то посоветуйте что нибудь...

Пример (образный)
Я создал dll библиотеку в ней написал функцию cislovstroky(), в редакторе кода пользователь пишет код

Код

string s;
int i=123;
s=cislovstroky(i);


Интерпретатор читает этот код, находит вызов функции и динамически подключается к библиотеке (но в этот момент он еще не знает есть ли в библиотеке такая функция), если нашел эту функцию то возвращает результат ее работы, если не нашел то возвратит ошибку.
PM MAIL ICQ Skype   Вверх
Veitmen
Дата 15.9.2008, 06:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 288
Регистрация: 10.11.2006
Где: СПБ

Репутация: 1
Всего: 4



В общем я так понимаю что ты хочешь создать парсер введенного пользователем текста и после парсировки через рефлекшн вызывать функции которые увидел парсер?
Сначала пиши парсер. Потом смотри на System.Reflection. МСДН тебе в помощь. И очень много инфы на эту тему. 
И поставь задачу четко. Особенно:
1. Пользователь выбирает сборку с которой будет работать или функция ищется просто в сборках, которые находятся в определенной папке?
2. Точно стоит писать парсер? А то мб тебе это не надо? Например проще написать прогу которая просто посмотрит на сборки в папке и скажет какие типы у нее есть... 
3. Мб стоит просто создать плагины?
Ну и жду чего скажешь...
PM MAIL ICQ   Вверх
gambit
Дата 15.9.2008, 08:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Надо
Цитата(Veitmen @  15.9.2008,  06:34 Найти цитируемый пост)
функция ищется просто в сборках, которые находятся в определенной папке?




Цитата(Veitmen @  15.9.2008,  06:34 Найти цитируемый пост)
Точно стоит писать парсер?

стоит.


Цитата(Veitmen @  15.9.2008,  06:34 Найти цитируемый пост)
Потом смотри на System.Reflection. 

Спасибо
PM MAIL ICQ Skype   Вверх
jonie
Дата 17.9.2008, 00:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 6
Всего: 118



несеръезная тема для диплома имхо. это не диплом. где тут новизна? где актуальность? где ваша мат модель?
в свое время мы на 4-ом курсе писали компилятор С или паскаль на выбор... в рамках лабораторных работ.

вызывать готовые методы в готовй среде ума не надо особо. вон IronPython, CruiseControl.NET, nant или lua.net возьмите - они уже это умеют без особых проблем.


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
gambit
Дата 17.9.2008, 07:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***
Награды: 1



Профиль
Группа: Комодератор
Сообщений: 1359
Регистрация: 25.6.2006
Где: я?

Репутация: 3
Всего: 40



Цитата(gambit @  12.9.2008,  22:12 Найти цитируемый пост)
Я хочу к своему приложению написать язык программирования.


jonie, не надо офтопить. Этот интерпритатор, это крошечная часть огромного комплекса моей дипломной работы. 

Это сообщение отредактировал(а) gambit - 17.9.2008, 07:57
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0700 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.