На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (495) « Первая ... 172 173 [174] 175 176 ...  494 495  ( Перейти к последнему сообщению )  
> Delphi vs C++ vs C# , ну и Java немножко, где-то ближе к старшему байту номеров страниц
    Цитата D_KEY @
    А что в них тогда вообще описывается?

    у меня ощущение дежа вю...
    Цитата

    стандратные классы описывают объект как набор слотов.
      Цитата korvin @
      Цитата D_KEY @
      А что в них тогда вообще описывается?

      у меня ощущение дежа вю...
      Цитата

      стандратные классы описывают объект как набор слотов.

      Видимо я не так тебя понял. Что подразумевается под слотами в CLOS и зачем они нужны?

      Добавлено
      Странный какой-то подход. Можно небольшой пример?
        Цитата D_KEY @
        Видимо я не так тебя понял. Что подразумевается под слотами в CLOS и зачем они нужны?

        Странный какой-то подход. Можно небольшой пример?

        это некоторый расширенный аналог свойств, объединяющий свойства и поля.

        http://paste.lisp.org/display/121389

        вывод:
        ExpandedWrap disabled
          [ ~/devel/common-lisp ] sbcl --script demo.lisp
          #<FOO :SOME 123 {ABF2021}>
           
          SOME-SLOT:
            NAME -- SOME-SLOT
            INITFORM -- (MAKE-HASH-TABLE)
            INITFUNCTION -- #<FUNCTION (LAMBDA ()) {AAC8BC5}>
            READERS -- NIL      
            WRITERS -- NIL      
            INITARGS -- (SOME)    
            %TYPE -- T        
            %DOCUMENTATION -- NIL      
            %CLASS -- #<STANDARD-CLASS FOO>
            ACCESSOR-FLAGS -- 7        
            INFO -- #S(SB-PCL::SLOT-INFO
             :TYPECHECK NIL
             :READER #<CLOSURE (LAMBDA #) {ABB8DFD}>
             :WRITER #<CLOSURE (LAMBDA #) {ABB8E95}>
             :BOUNDP #<CLOSURE (LAMBDA #) {ABB8F25}>)
            ALLOCATION -- INSTANCE  
            ALLOCATION-CLASS -- #<STANDARD-CLASS FOO>
            LOCATION -- 0
          То есть от классов одно название, а представляют они собой лишь атрибуты? В любом случае, даже если операции описаны вне определения класса, это не мешает описанию АТД.
          А есть ли какие-то библиотечные организации акторов и агентов? Просто эти концепции плохо сочетаются с таким принципом...
            Цитата D_KEY @
            То есть от классов одно название, а представляют они собой лишь атрибуты? В любом случае, даже если операции описаны вне определения класса, это не мешает описанию АТД.
            А есть ли какие-то библиотечные организации акторов и агентов? Просто эти концепции плохо сочетаются с таким принципом...

            т.е. не нужно зацикливаться на какой-то одной ограниченной реализации =) с помощью MOP ты можешь описать любые классы.

            не мешает, но одними стандартными классами тут не отделаешься.
            хотя можно что-то вроде
            ExpandedWrap disabled
              (defclass foo ()
                ((some-method
                  :allocation :class
                  :type       :method
                  :initform   #'(lambda (this) ...))))


            не знаю. в чем "плохость"?

            Добавлено
            Цитата D_KEY @
            А есть ли какие-то библиотечные организации акторов и агентов?

            че-то вроде есть: http://www.cs.rpi.edu/~govinn/clas.html
              Чёт я не помню, синтаксис тут обсуждали, чи в соседней теме? Во, я крут. Навеяно картинкой чуть выше.
                Цитата Qraizer @
                Чёт я не помню, синтаксис тут обсуждали, чи в соседней теме? Во, я крут. Навеяно картинкой чуть выше.

                обожемой штоэта?
                  Ну как что... Вон то самое: массив 8-ми массивов указателей на указатели на функции, возвращающие указатели на массивы указателей на char.
                  ExpandedWrap disabled
                    char* (*(**foo[][8])())[];
                  Просто вспомнилось про обсуждение синтаксиса объявлений в C.
                    :whistle:
                    ExpandedWrap disabled
                      type
                        TAC = array of Char;
                        TFoo = function: TAC;
                        TAP = array[0..7] of TFoo;
                        TA = array of TAP;
                      var
                        A: TA;
                        //или в куче
                        A: array of array[0..7] of function: TAC{array of Char - нельзя};
                      Ой-ой-ой, как будто бы в C/C++ убрали слово typedef
                        Это неспортивно. С typedef-ом и Круз бы справился.

                        Добавлено
                        В Дельфях опущены "избыточные" указатели, кстати.
                        Сообщение отредактировано: Qraizer -
                          Цитата Qraizer @
                          В Дельфях опущены "избыточные" указатели, кстати.

                          а зачем они нужны, если они избыточны?
                            Они избыточны в кавычках, если ты не заметил. Если они были в исходной постановке задачи, значит не просто так. Это Дельфи со своей философией думать за программиста может объявить что-то ссылочным типом, что-то обычным. Вот и думай, избыточен ли тут поинтер, или Делфи сам его подразумеет. Ненавижу.
                              Цитата Qraizer @
                              Это Дельфи со своей философией думать за программиста может объявить что-то ссылочным типом, что-то обычным.

                              :lool:
                                Цитата Qraizer @
                                Если они были в исходной постановке задачи, значит не просто так.

                                но зачем?
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (495) « Первая ... 172 173 [174] 175 176 ...  494 495


                                Рейтинг@Mail.ru
                                [ Script execution time: 0.2798 ]   [ 14 queries used ]   [ Generated: 31.07.26, 18:31 GMT ]