Re[19]: CLI/C++
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 11.01.04 20:25
Оценка:
Здравствуйте, Шахтер, Вы писали:

AVK>>Ну и что в этом хорошего? Вот оказалось к примеру что сцинтилла не юникодная, а чтобы переделать ее на уникод надо перелопатить гору кода. ВОт тебе и результат криворукости.


Ш>Я не говорю, что это хорошо. Тем более стимул сделать по своему и хорошо.


Не батенька, изобретение велосипедов мы уже проходили.

Ш>И дать образец хорошего программирования.


Денег за образец заплатишь?

AVK>>Чего это?


Ш>Возможность перемещать курсор вдоль строки в любую позицию.


В янусе без надобности.

AVK>>ПОка что все запросы она покрывает с лихвой.


Ш>Не покрывает. Код писать на ней очень неудобно.


А янус и не предназначен для написания кода.
... << RSDN@Home 1.1.2 beta 3 (mobile station) >>
AVK Blog
Re[20]: CLI/C++
От: Sinclair Россия https://github.com/evilguest/
Дата: 11.01.04 21:41
Оценка:
Здравствуйте, VladD2, Вы писали:
VD>И какие же проблемы?
Да известная проблема с тем, что сцинтилла думает, что таб=2 спейса, и еще имеет наглость при автоинденте делать смарт таб. А эксплорер (каковой, собсно, используется в качестве основного браузера результата) думает, что таб=4 спейса. И мы имеем WYSINWYG. Единственный способ — готовить текст там, где либо нет такого умного автоиндентирования, либо таб=4 спейса. А потом пейстить в жанусь.
... << RSDN@Home 1.1.2 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[21]: CLI/C++
От: VladD2 Российская Империя www.nemerle.org
Дата: 11.01.04 22:42
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Да известная проблема с тем, что сцинтилла думает, что таб=2 спейса, и еще имеет наглость при автоинденте делать смарт таб.


А ты уверен, что это Синтила? Может это просто у нас не сделана настройка? Не думаю, что синтила не имеет подобной настройки.

S> А эксплорер (каковой, собсно, используется в качестве основного браузера результата) думает, что таб=4 спейса.


А тут вообще нужно бы в пробелы заменять, как на сайте в статьях (если не ошибаюсь).

S> И мы имеем WYSINWYG. Единственный способ — готовить текст там, где либо нет такого умного автоиндентирования, либо таб=4 спейса. А потом пейстить в жанусь.


Ну, или писать все в одном месте (в той же Синтиле). Тогда индент будет одинаковым.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[22]: CLI/C++
От: Sinclair Россия https://github.com/evilguest/
Дата: 12.01.04 00:11
Оценка:
Здравствуйте, VladD2, Вы писали:

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


S>>Да известная проблема с тем, что сцинтилла думает, что таб=2 спейса, и еще имеет наглость при автоинденте делать смарт таб.


VD>А ты уверен, что это Синтила? Может это просто у нас не сделана настройка? Не думаю, что синтила не имеет подобной настройки.

Неа, не уверен. Скорее всего, нет какой-то настройки.
VD>А тут вообще нужно бы в пробелы заменять, как на сайте в статьях (если не ошибаюсь).
Мысль сия не лишена.

VD>Ну, или писать все в одном месте (в той же Синтиле). Тогда индент будет одинаковым.

НЕТ! Не будет одинакового индента. Re[8]: tab при вводе сообщений. Хочу фичу
Автор: Sinclair
Дата: 28.12.03
... << RSDN@Home 1.1.2 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[23]: CLI/C++
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 12.01.04 07:13
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Неа, не уверен. Скорее всего, нет какой-то настройки.


Есть такая настройка.
... << RSDN@Home 1.1.2 beta 2 >>
AVK Blog
Re[24]: CLI/C++
От: Sinclair Россия https://github.com/evilguest/
Дата: 12.01.04 08:15
Оценка:
Здравствуйте, AndrewVK, Вы писали:
AVK>Есть такая настройка.
Я имел в виду что она не воспользовата.
... << RSDN@Home 1.1.2 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[24]: CLI/C++
От: Sinclair Россия https://github.com/evilguest/
Дата: 12.01.04 08:16
Оценка:
Здравствуйте, AndrewVK, Вы писали:
AVK>Есть такая настройка.
Я имел в виду что она не воспользовата.
... << RSDN@Home 1.1.2 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[3]: CLI/C++
От: Lloyd Россия  
Дата: 12.01.04 08:56
Оценка:
Здравствуйте, lkj, Вы писали:

lkj>Попробовал скомпилировать C++ проект для .NET (MSVС++ 7.1) и заметил, что вызов виртуальной функции выполняется примерно 700 тактов.

lkj>Можно это как-нибудь ускорить?

Какой вызов? Первый?
... << RSDN@Home 1.1.2 beta 1 >>
Re[15]: CLI/C++
От: Lloyd Россия  
Дата: 12.01.04 09:12
Оценка:
Здравствуйте, Шахтер, Вы писали:

Ш>Тут надо понимать одну вещь. Человеческий мозг -- гораздо более мощное орудие, чем любой компилятор. Поэтому попытка избавиться от необходимости думать, спихивая свою работу тупой машине, контрпродуктивна.


Если уж приводить аналогию с человеческим мозгом, то не следует забывать того, что мозг тоже "спихивает" свою работу "тупой машине" (рефлексы, моторика, подсознание, интуиция и т.д.).
... << RSDN@Home 1.1.2 beta 1 >>
Re[18]: CLI/C++
От: Lloyd Россия  
Дата: 12.01.04 09:20
Оценка:
Здравствуйте, VladD2, Вы писали:

M>>По моим очень дилетантским прикидкам, метапрограммирование компиляторов это вопрос, которому нужна серьёзная теоретическая проработка. Ну уровне какой-нибудь докторской диссертации или круче. Народной инициативой тут, никак не обойдёшься.


VD>А я еще ни разу не видел чтобы в жизнь нкую идею воплтил доктор. Обычно они теорию толкают, а реализацию делают простые смертные (инженеры, программисты). Теоритически все уже довольно ясно. Есть даже некоторые реализации (OpenC++, например). Так что...


С++ чем не пример.
... << RSDN@Home 1.1.2 beta 1 >>
Re[18]: CLI/C++
От: is  
Дата: 12.01.04 11:27
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>А я еще ни разу не видел чтобы в жизнь нкую идею воплтил доктор.


Дык вроде C with classes Страуструпом реализован. Или он тогда ещё не был доктором и писал как раз для своего диссера?
Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage — to move in the opposite direction. -- Albert Einstein
Re[4]: CLI/C++
От: lkj www.7-zip.org
Дата: 12.01.04 11:53
Оценка:
Здравствуйте, Lloyd, Вы писали:

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


lkj>>Попробовал скомпилировать C++ проект для .NET (MSVС++ 7.1) и заметил, что вызов виртуальной функции выполняется примерно 700 тактов.

lkj>>Можно это как-нибудь ускорить?

L>Какой вызов? Первый?


Нет. Делаю в цикле:

struct I1 { virtual int f1(int t) = 0; };
struct C1: public I1 { virtual int f1(int t) { return t; } };

int g1(I1 *i1)
{
int s = 0;
for (int i = 0; i < 10000000; i++)
s += i1->f1(i);
return s;
}

int main()
{
C1 c1;
return g1(&c1);
}

Выполняется раз в 100 медленнее варианта на чистом C++ или на C#.
Re[5]: CLI/C++
От: Lloyd Россия  
Дата: 12.01.04 12:32
Оценка:
Здравствуйте, lkj, Вы писали:

lkj>Выполняется раз в 100 медленнее варианта на чистом C++ или на C#.


И где здесь замеры? Или ты и вермя загрузки программы сюда плюсуешь?
... << RSDN@Home 1.1.2 beta 1 >>
Re[6]: CLI/C++
От: lkj www.7-zip.org
Дата: 12.01.04 12:40
Оценка:
Здравствуйте, Lloyd, Вы писали:

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


lkj>>Выполняется раз в 100 медленнее варианта на чистом C++ или на C#.


L>И где здесь замеры? Или ты и вермя загрузки программы сюда плюсуешь?


Замеры внешней программой.
Исполняется 7 секунд на 1 GHz CPU.
на обычном C++ исполняется за сотые доли.
Re[7]: CLI/C++
От: Lloyd Россия  
Дата: 12.01.04 12:43
Оценка:
Здравствуйте, lkj, Вы писали:

lkj>Замеры внешней программой.

lkj>Исполняется 7 секунд на 1 GHz CPU.
lkj>на обычном C++ исполняется за сотые доли.

Некорректный замер. Ты измерил не скорость управляемого кода, а скорость загрузки рантайма. Вынеси замер в код тогда и сравнивай.
... << RSDN@Home 1.1.2 beta 1 >>
Re[8]: CLI/C++
От: lkj www.7-zip.org
Дата: 12.01.04 12:53
Оценка:
Здравствуйте, Lloyd, Вы писали:

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


lkj>>Замеры внешней программой.

lkj>>Исполняется 7 секунд на 1 GHz CPU.
lkj>>на обычном C++ исполняется за сотые доли.

L>Некорректный замер. Ты измерил не скорость управляемого кода, а скорость загрузки рантайма. Вынеси замер в код тогда и сравнивай.


Итераций много. Накладные расходы не должны влиять.
В чем некорректность?
Как быстро могут выполняться вызовы виртуальных функций в программе на С++ для .NET?
И почему мой пример работает так медленно?
Re[19]: CLI/C++
От: VladD2 Российская Империя www.nemerle.org
Дата: 12.01.04 13:04
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>С++ чем не пример.


Тем что лажа. Посмотри на описание OpenC++ — сам все поймешь.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[19]: CLI/C++
От: VladD2 Российская Империя www.nemerle.org
Дата: 12.01.04 13:04
Оценка:
Здравствуйте, is, Вы писали:


is>Дык вроде C with classes Страуструпом реализован. Или он тогда ещё не был доктором и писал как раз для своего диссера?


Он С++ реализовал, а не C with classes, да и то как препроцессор к С.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[9]: CLI/C++
От: Lloyd Россия  
Дата: 12.01.04 13:11
Оценка:
Здравствуйте, lkj, Вы писали:

L>>Некорректный замер. Ты измерил не скорость управляемого кода, а скорость загрузки рантайма. Вынеси замер в код тогда и сравнивай.


lkj>Итераций много. Накладные расходы не должны влиять.

lkj>В чем некорректность?
lkj>Как быстро могут выполняться вызовы виртуальных функций в программе на С++ для .NET?
lkj>И почему мой пример работает так медленно?

Во-первых большой оверхед на загрузке нетовского рантайма.
Во-вторых первый вызов подпрограммы в управляемом коде приводит к компиляции.
В-третьих не факт, что компилятор в C++ не заменил прямой f1 вызов на прямой (не виртуальный). Он видит, что наследников больше нет и вправе это сделать. Если сделал, то кроме того мог еще и заинлайнить этот вызов, а заодно и вызов g1. Тогда и получаем, что имеем программу типа int s = 0; for (int i = 0; i < 10000000; i++)s += i; В принцыпе этот цикл можно развернуть. А развернув, обнаруживаем, что результат можно свести к int s = <что-то там>; Тут он обнаруживает, что s никто не ипользует и выбрасывает его нафик. Так что в итоге пришли к тому, что оптимизатором тело main-а может быть сведено на нет. Т.о. получаем, что ты сравниваешь время загрузки операционной системой ничего не делающей программы и время работы .net-программы.
... << RSDN@Home 1.1.2 beta 1 >>
Re[20]: CLI/C++
От: Lloyd Россия  
Дата: 12.01.04 13:12
Оценка: +1
Здравствуйте, VladD2, Вы писали:

L>>С++ чем не пример.


VD>Тем что лажа. Посмотри на описание OpenC++ — сам все поймешь.


После такого заявления даже смотреть не буду.
... << RSDN@Home 1.1.2 beta 1 >>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.