Inline - методы, раскрутка циклов. Надо ли?

Нет. Если в параметрах компилятора подписать -optimize, то включается целый комплекс оптимизации. Раскрутка - только один его компонент. Но если бы я сразу предложил переделать компилятор, меня, по всей видимости, закидали бы камнями. Тут даже к директиве отношение негативное.

Отрицательное отношение было не к самой идее оптимизации циклов, а именно к её управлению через директиву. Оптимизации не должны замусоривать исходный код, усложняя его, понижая читабельность и свободу рефакторинга. Дополн. параметры компиляции – это нормально, россыпи кастомных директив по тексту – нет.

1 лайк

Вы предлагаете сделать так же, как и в C#? Хорошая идея. Давайте опрос сделаем.

А мне вот очень интересно, почему @Admin никак не высказался по этому вопросу.

Возможно потому, что забодался писать “нет-нет-нет”. Сказано же, что среда на 95% учебная, оптимизации - дело сотое, когда уже больше ну вообще нечем заняться. Вы не замечаете, что все время пытаетесь на себя одеяло перетянуть?

Нет, не заметил. Не я же один выдвигают предложения по оптимизации языка. А для учеников оптимизация будет лишней? Обойдутся?

Несомненно, она ученикам до фени.

Знаете, то, что ученики решают примитивные задачи, ещё не значит, что они лёгкие по вычисленичм. А ждать весь урок, пока выполнится программа на древнем компьютере явно никто не захочет. Лучше уж на листочке :smile:

Да уж ладно… все Ваши оптимизации в учебных задачах могут сократить время работы программы от 1 секунды до половины оной. Максимум.

А этого мало? Там могут быть в том числе и демонстрации возможностей компьютера по сравнению с возможностями человека. Там специально могут дать дикую задачу, чтобы показать ученикам важность программирования.

“Там” - это где. Не нужно свои фантазии выдавать за реальность.

А я не выдаю. Я, например, когда учился в старших классах, видел, как учитель рассказывал пример очень объёмной задачи, которую компьютер решит очень быстро, а человек будет решать очень - очень долго.

И что? Ради демонстрации какого-то примера будем разработчикам месяцами мозг выносить с оптимизациями?

Там работы - на пару дней. Раскрутка цикла - достаточно примитивная задача.

А там все так - “на пару дней”. Если смотреть с дивана.

В любом случае - давайте спросим разработчиков. Мне кажется, они даже не смотрели ещё эту тему.

Заведующий обещал прислать методичку по раскрутке циклов. Помнится, это нетривиальная задача. Жду.

В cs сделаны какие то простые частные случаи. И директивы специальной нет. Надо смотреть, какие случаи сделаны в cs. Для этого надо посмотреть код Roslyn

1 лайк