метапрограммирование...совет начинающему..
От: tonchitos  
Дата: 08.04.07 21:43
Оценка: 33 (3) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :))) :)
Мне нужно выбрать интересную тему для курсовика по программированию (желательно так или иначе связанную с шифрованием).
Мне предложили такую тему:
"Применение шаблонного метапрограммирования как способ шифрования исходного кода на С++."
Но я плохо представляю для чего вообще существует метапрограммирование.
Прошу совета:
— Хорошая ли это тема?
— По силам ли мне написать что нить приличное за пару месяцев?
И вообще, просьба, кто неплохо знаком с метапрограммированием, то ссылочки давайте и вкратце инфу о том, с чем мне придется иметь дело...
О себе скажу, что учусь на 2м курсе. Пишу на Visual_C++, знаю апи, мфс ща осваиваю..
— Реально ли, имея эти знания, энтузиазм и два месяца, наваять нормальный курсач?
Заранее благодарю всех.
Re: метапрограммирование...совет начинающему..
От: Alxndr Германия http://www.google.com/profiles/alexander.poluektov#buzz
Дата: 08.04.07 21:51
Оценка:
Дружище, хорош кросспостить.
Re[2]: метапрограммирование...совет начинающему..
От: tonchitos  
Дата: 08.04.07 21:57
Оценка:
Здравствуйте, Alxndr, Вы писали:

A>Дружище, хорош кросспостить.



Окей, только стеб причем...объясни...пжалста..*жалобно*
Re[3]: метапрограммирование...совет начинающему..
От: Alxndr Германия http://www.google.com/profiles/alexander.poluektov#buzz
Дата: 08.04.07 22:05
Оценка:
Здравствуйте, tonchitos, Вы писали:

T>Окей, только стеб причем...объясни...пжалста..*жалобно*


Завтра.
Re: метапрограммирование...совет начинающему..
От: Cyberax Марс  
Дата: 09.04.07 03:21
Оценка: +1 :)
Здравствуйте, tonchitos, Вы писали:

T>"Применение шаблонного метапрограммирования как способ шифрования исходного кода на С++."

В качестве курсовика можешь дать преподавателю код Boost.Spirit или Boost.Bind вместе с Boost.Preprocessor
Sapienti sat!
Re: метапрограммирование...совет начинающему..
От: Shota  
Дата: 09.04.07 14:40
Оценка:
Блин, это самое смешное, что я прочитал на РСДН за последние полгода!
Re: метапрограммирование...совет начинающему..
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 09.04.07 15:11
Оценка: +4 :)
Здравствуйте, tonchitos, Вы писали:

T>Мне предложили такую тему:

T>"Применение шаблонного метапрограммирования как способ шифрования исходного кода на С++."

Автора!!!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re: метапрограммирование...совет начинающему..
От: geniepro http://geniepro.livejournal.com/
Дата: 09.04.07 18:42
Оценка:
Здравствуйте, tonchitos, Вы писали:

T> Мне нужно выбрать интересную тему для курсовика по программированию (желательно так или иначе связанную с шифрованием).

T> Мне предложили такую тему:
T> "Применение шаблонного метапрограммирования как способ шифрования исходного кода на С++."

Вообще-то обфускация программ — серьёзная тема...

Ю. Лифшиц. "Запутывание (обфускация) программ. Обзор"
Не совсем по шабллонам и метапрограммированию, но всё же — по шифрованию исходного кода :о)
Re[2]: метапрограммирование...совет начинающему..
От: VladD2 Российская Империя www.nemerle.org
Дата: 09.04.07 21:36
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>В качестве курсовика можешь дать преподавателю код Boost.Spirit или Boost.Bind вместе с Boost.Preprocessor


Ага. Только морду при этом нужно по серьезнее и описание на несколько страниц.

Но вообще, препод у них молодец. Так подколть. Уважаю!
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: метапрограммирование...совет начинающему..
От: VladD2 Российская Империя www.nemerle.org
Дата: 09.04.07 21:36
Оценка: +1 :)
Здравствуйте, tonchitos, Вы писали:

T>- По силам ли мне написать что нить приличное за пару месяцев?


Думаю, по силам. Дело в том, что тут как раз чем меньше опыта, тем мощьнее можно получить эффект.

А вообще, если ты не прикалываешся, а тебе и правда такую тему для курсача дали, то тот кто это сделал был очень веселым человеком. Ему бы в Камеди-Клаб или вместо Петросяна на телевидение. А то они совсем уж выдохлись и жанр позорят.

Если ты до сих пор не понял, то автор этого предложения эдак тонко постебался сразу над твоими знаниями и над С++, точнее того что из него пытаются извернуть пытаясь добиться того, что в нем напрямую не поддерживается.

С++ напрямую поддерживаем метапрограммирование только на уровне препроцессора. Это убого и чревато граблями. Так вот народ извернулся и попытался использовать тот факт, что система типов С++ в сочетании с особенностями воплощения кода шаблонами выраждается в полную по Тюрингу машину вычислений (иными словами эдакий встроенный язык программирования). Забавно, что этот язык является функциональным языком программирования и поддерживает хитрую концепцию паттерн-матчинг. Одако язык дико ограниченный и убогий (не выразительный). В купе с отсуствием возможности номально взаимодействовать с "внешним миром" это порождает весьма запутанные решения.

Конечно нитко не использует метапрограммирование как способ шифрования. Это получается само собой.
О том, что же такое метапрограммирование ты можешь найти ответ в википедии.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: метапрограммирование...совет начинающему..
От: c-smile Канада http://terrainformatica.com
Дата: 09.04.07 21:46
Оценка:
Здравствуйте, Геннадий Васильев, Вы писали:

ГВ>Здравствуйте, tonchitos, Вы писали:


T>>Мне предложили такую тему:

T>>"Применение шаблонного метапрограммирования как способ шифрования исходного кода на С++."

ГВ>Автора!!!


А морду бить не будешь?
Re[3]: метапрограммирование...совет начинающему..
От: VladD2 Российская Империя www.nemerle.org
Дата: 09.04.07 22:24
Оценка: :)
Здравствуйте, c-smile, Вы писали:

ГВ>>Автора!!!


CS>А морду бить не будешь?


Что? Ты?
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: метапрограммирование...совет начинающему..
От: Геннадий Васильев Россия http://www.livejournal.com/users/gesha_x
Дата: 09.04.07 23:34
Оценка:
Здравствуйте, c-smile, Вы писали:

ГВ>>Автора!!!


CS>А морду бить не будешь?


Да ну что ты?! Таких беречь нужно!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[3]: метапрограммирование...совет начинающему..
От: tonchitos  
Дата: 10.04.07 08:57
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Cyberax, Вы писали:


C>>В качестве курсовика можешь дать преподавателю код Boost.Spirit или Boost.Bind вместе с Boost.Preprocessor


VD>Ага. Только морду при этом нужно по серьезнее и описание на несколько страниц.


VD>Но вообще, препод у них молодец. Так подколть. Уважаю!



Да препод тут не причем... На форуме на каком-то... Ну я ж говорила, что вообще не имею представления о шаблонном метапрограммировании.. Так что бывает..
Re[2]: метапрограммирование...совет начинающему..
От: tonchitos  
Дата: 10.04.07 09:03
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, tonchitos, Вы писали:


T>>- По силам ли мне написать что нить приличное за пару месяцев?


VD>Думаю, по силам. Дело в том, что тут как раз чем меньше опыта, тем мощьнее можно получить эффект.


Спасибо... С той темой все понятно. ))
Ну а какого типа тему в этой области можно брать второкурснику?
Re[2]: метапрограммирование...совет начинающему..
От: FDSC Россия consp11.github.io блог
Дата: 10.04.07 09:23
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Конечно нитко не использует метапрограммирование, как способ шифрования. Это получается само собой.


Влад, извини, не понял. Что получается само собой? Шифрование исходного кода при использовании метапрограммирования?
Re[3]: метапрограммирование...совет начинающему..
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 10.04.07 09:40
Оценка:
Здравствуйте, tonchitos, Вы писали:

T>Ну а какого типа тему в этой области можно брать второкурснику?


Если связанную с шифрованием, то сильно зависит от уровня второкурсника. Начиная от самостоятельной реализации какого-нибудь криптоалгоритма до реализации какого-нибудь криптопротокола. Например, протокола аутентификации с симметричными шифрами Нидхема-Шредера (http://en.wikipedia.org/wiki/Needham-Schroeder). Нужно будет создать клиентов Алису/Боба и собственный центр распределения ключей KDC, взаимодействующих между собой через TCP/IP (или пайпы). Цель этого дела:
* разобраться с проблемой аутентификации и распределения ключей;
* разобраться с существующими крипто-библиотеками (Crypto++, Botan, Cryptlib) или CryptoAPI, если речь идет о Windows.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[4]: метапрограммирование...совет начинающему..
От: AndreiF  
Дата: 10.04.07 09:41
Оценка:
Здравствуйте, tonchitos, Вы писали:

T>Да препод тут не причем... На форуме на каком-то...


Да, молодцы!
А препод эту тему одобрил?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: метапрограммирование...совет начинающему..
От: fmiracle  
Дата: 10.04.07 10:00
Оценка: +1
Здравствуйте, FDSC, Вы писали:

VD>>Конечно нитко не использует метапрограммирование, как способ шифрования. Это получается само собой.


FDS>Влад, извини, не понял. Что получается само собой? Шифрование исходного кода при использовании метапрограммирования?


Ну дык в неумелых руках и отвертка — ...
Re[4]: метапрограммирование...совет начинающему..
От: tonchitos  
Дата: 10.04.07 10:12
Оценка:
Здравствуйте, eao197, Вы писали:

T>>Ну а какого типа тему в этой области можно брать второкурснику?


E>Если связанную с шифрованием, то сильно зависит от уровня второкурсника. Начиная от самостоятельной реализации какого-нибудь криптоалгоритма до реализации какого-нибудь криптопротокола. Например, протокола аутентификации с симметричными шифрами Нидхема-Шредера (http://en.wikipedia.org/wiki/Needham-Schroeder). Нужно будет создать клиентов Алису/Боба и собственный центр распределения ключей KDC, взаимодействующих между собой через TCP/IP (или пайпы). Цель этого дела:

E>* разобраться с проблемой аутентификации и распределения ключей;
E>* разобраться с существующими крипто-библиотеками (Crypto++, Botan, Cryptlib) или CryptoAPI, если речь идет о Windows.

Спасибо большое.
А если связанную с метапрограммированием? Или лучше туда не соваться, если у мя всего 2 месяца и я ничего о метапр-и не знаю?

От: VladD2

T>- По силам ли мне написать что нить приличное за пару месяцев?


V>-Думаю, по силам. Дело в том, что тут как раз чем меньше опыта, тем мощьнее можно получить эффект.

А почему? Просто как-то не верится... эффект вроде всегда проперционален опыту..
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.