На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (16) « Первая ... 2 3 [4] 5 6 ...  15 16 все  ( Перейти к последнему сообщению )  
> Rust vs C++ , очередная шляпа
    Цитата JoeUser @
    :wacko: - извини за мой французский ... не оптимизатора - а говнятора! зачем деспетчировать функции, которые в этом не нуждаются?! Это вопрос оптимизатора?

    В зависимости от того, что ты понимаешь под этим процессом и в зависимости от того, что ты понимаешь под функциями, которые в нём не нуждаются, будут даны разные ответы :D

    Добавлено
    Цитата JoeUser @
    И я нахожу это! А "они" - нет :lol:

    Кто эти самые "они" и почему ты не задаёшь свои странные вопросы им? :D
      Цитата OpenGL @
      В зависимости от того, что ты понимаешь под этим процессом и в зависимости от того, что ты понимаешь под функциями, которые в нём не нуждаются, будут даны разные ответы :D

      Ахтунг! Ахтунг! Ахтунг! Демагогия - детектед!!! >:(

      Цитата OpenGL @
      Кто эти самые "они" и почему ты не задаёшь свои странные вопросы им?

      Эти странные парни - из параллельной вселенной, слушают левой ногой ... и ходят медленно :-?
      Сообщение отредактировано: JoeUser -
        Цитата JoeUser @
        Цитата D_KEY @
        Ты думаешь, что Impl'ы как-то иначе устроены?

        Это я чисто напомнить суть разговора, перевожу: "impl'ы всегда создают косвенные вызовы".

        Перевод-то неверный. Даже плюсовые виртуальные функции не всегда создают косвенные вызовы :)
        Trait'ы и Impl'ы в случае динамической диспетчеризации ведут себя как виртуальные функции, о чем прямо написано по твоей ссылке.
          Цитата JoeUser @
          Ахтунг! Ахтунг! Ахтунг! Демагогия - детектед!!!

          То есть узнать от собеседника конкретику, чтобы не рассуждать о сферах в вакууме - демагогия? Ну лаааадно, пусть будет так :crazy:
            Цитата D_KEY @
            Перевод-то неверный. Даже плюсовые виртуальные функции не всегда создают косвенные вызовы :)

            А-би-сь-ня-ю!
            Это бывает тогда, когда компайлер распознает тип при вызове. И даже линкер тут не при чем! Компайлер понял - идет явная инициализация типа предопределенной константой, к примеру, и усе ... Тут действительно VMT не нужнен, вернее - может быть просчитан. А вот если создаем массив (или вектор) указателей на объекты разных классов ... тут только от тебя асм-пруф! И слышать ничего не желаю!
            Цитата D_KEY @
            Trait'ы и Impl'ы в случае динамической диспетчеризации ведут себя как виртуальные функции, о чем прямо написано по твоей ссылке.

            Так я и не спорю! :lol: Ты просто сказал типа "вcегда" (т.е. и при динамической и при статической) - меня это и вштырило :)

            Добавлено
            Цитата OpenGL @
            То есть узнать от собеседника конкретику, чтобы не рассуждать о сферах в вакууме - демагогия? Ну лаааадно, пусть будет так

            Не нужно узнавать, вдаваться в подробности, уточнять настроение и скорость ветра ... нужно просто привести пруфы в коде! Утверждаешь - не спрашивай, доказывай, аргументируй! Или спросишь опять, к примеру, а в какое время?
              Цитата JoeUser @
              Не нужно узнавать, вдаваться в подробности, уточнять настроение и скорость ветра ... нужно просто привести пруфы в коде! Утверждаешь - не спрашивай, доказывай, аргументируй! Или спросишь опять, к примеру, а в какое время?

              :lool: Привести пруфы на что именно? :crazy: Всё, что я утверждал до этого, в каких-либо особых пруфах не нуждается - это всего-навсего элементарная логика и немного базовых знаний. Если тебе не хватает одного из этих компонентов - ну я бессилен :D
                D_KEY я приведу пример почти эталонного ответа :lol: Почти - потому что он был вопросом, хотя по делу! А вот если был бы пруфом с линком на доку ... ты бы мог быть Великим Сенсеем:

                Цитата D_KEY @
                А как же Box<T>, Rc<T>, Ref<T>, RefMut<T> и т.п.?
                  Цитата OpenGL @
                  элементарная логика и немного базовых знаний

                  Именно на этом строятся Стандарты? Ога? :lool:
                  Вычеркиваем текст стандарта C++1х, добавляем немножко элементарной логики от OpenGL и ... Qraizer неспешно идет совершать сеппуку :lool:
                    Цитата JoeUser @
                    Цитата OpenGL @
                    элементарная логика и немного базовых знаний

                    Именно на этом строятся Стандарты? Ога? :lool:
                    Вычеркиваем текст стандарта C++1х, добавляем немножко элементарной логики от OpenGL и ... Qraizer неспешно идет совершать сеппуку :lool:

                    И этот человек ещё кого-то в демагогии обвиняет :lool: Не, я пас, пожалуй - так и живот от смеха порвать недолго :D
                      Цитата OpenGL @
                      в каких-либо особых пруфах не нуждается

                      Упс ... Я просил пруфы. Но ты уверен - они мне не нужны.
                      Делаю вывод - что ты знаешь лучше меня то, что именно мне нужно.
                      Занавес! :lol:
                        Цитата OpenGL @
                        И этот человек ещё кого-то в демагогии обвиняет

                        Блина ... да я просто прошу меньше слов и больше доказательства в виде кода! Стопицотраз прошу.
                        Лан напишу, чтобы было виднее ...

                        OpenGL, хватит трещать попусту - жду доказательства в виде кода!

                        Так видно? Или опять вопросы?

                        Скрытый текст
                        Цитата JoeUser @
                        И этот человек ещё кого-то в демагогии обвиняет

                        И этот прием мы знаем - называется "аргумент к личности".

                        Не надо обсуждать меня! Обсуждай тему.
                          Цитата JoeUser @
                          Если компайлер "агрицца" на виртуальный метот неразвернутого шаблона - это плохой компайлер! ИМХО, он должен сперва развернуть все, и только потом - строит код. Низачот!
                          Он был бы плохим, если б не делал некоторых вещей на "всякий случай" из-за того, что у него нет полной информации. К примеру, он вынужден всегда вставлять в объектный код вызываемую версию подставляемой функции, если только она не с внутренним связыванием, даже притом, что все её вызовы он смог встроить. Если он этого не сделает, то в некой единице трансляции, где он вынужден будет её вызвать, например, если точки её определения и объявления не совпадают, линкер при сборке приложения запросто может столкнуться с неопределённым символом.
                          Та же проблема с виртуальными методами шаблонных классов. Компилятор не обязан и не должен инстанцировать код шаблонных функций и методов шаблонных классов, если они не используются. Но виртуальные методы всегда используются хотя бы раз: нужно заполнить VMT. А будет ли или нет этот метод реально задействован в программе, станет известно лишь во время её исполнения.
                          Сообщение отредактировано: Qraizer -
                            Qraizer, да, в такой постановке вопроса - резонно строить VMT. Но, согласись, в плане обсуждения реализации impl блоков Раста - такая ситуация может быть как частный случай, но не как правило, следуя логике. Или я не прав?
                              Цитата JoeUser @
                              OpenGL, хватит трещать попусту - жду доказательства в виде кода!
                              Я вот тему перечитал, но так и не понял доказательств чего ты хочешь :)
                              Что оптимизатор/говнятор компилятора Rust умнее/тупее такового у компилятора C++ (какого из них?)?
                              Сообщение отредактировано: applegame -
                                Сообщение №21. Утверждение о том, что в Расте всегда будут создаваться VMT.
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (16) « Первая ... 2 3 [4] 5 6 ...  15 16 все


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0522 ]   [ 16 queries used ]   [ Generated: 16.04.24, 12:29 GMT ]