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

    Каких ?

    Например, path-dependent types, singleton type, self types, family polimorphism и т.п.
    У меня тоже пока мало времени :)

    Добавлено
    Цитата IL_Agent @
    Ещё, на вскидку: вывод типов, паттерн матчинг.

    В каком новом языке теперь этого нет?
      Цитата D_KEY @
      В каком новом языке теперь этого нет?

      Читал, что в той же скале вывод типов значительно слабее.
        Цитата IL_Agent @
        Цитата D_KEY @
        В каком новом языке теперь этого нет?

        Читал, что в той же скале вывод типов значительно слабее.

        Ну все может быть. Мне кажется, что мы с тобой не годимся на роль холиварщиков в теме Nemerle vs Scala. По крайней мере я.
        :)
          Цитата D_KEY @
          Мне кажется, что мы с тобой не годимся на роль холиварщиков в теме Nemerle vs Scala.

          Ну, что есть - то есть :)
            Цитата IL_Agent @
            насколько я знаю, кроме гигиенических макр а ля Scheme,

            в отличии от схемы и других лиспов в Nemerle обычный, понятный любому кодеру синтаксис.
              Цитата jack128 @
              Цитата IL_Agent @
              насколько я знаю, кроме гигиенических макр а ля Scheme,

              в отличии от схемы и других лиспов в Nemerle обычный, понятный любому кодеру синтаксис.

              Странная аргументация. Позволю себе поправку. Не "обычный" и "понятный любому кодеру", а привычный. И ничего хорошего о "любом кодере" это все не говорит.
              Сообщение отредактировано: D_KEY -
                Цитата D_KEY @
                Цитата jack128 @
                Цитата IL_Agent @
                насколько я знаю, кроме гигиенических макр а ля Scheme,

                в отличии от схемы и других лиспов в Nemerle обычный, понятный любому кодеру синтаксис.

                Странная аргументация. Позволю себе поправку. Не "обычный" и "понятный любому кодеру", а привычный. И ничего хорошего о "любом кодере" это все не говорит.

                А я вот тоже считаю плюсом низкий порог вхождения.

                Добавлено
                А цитата там - не моя ;)
                  Цитата IL_Agent @
                  А я вот тоже считаю плюсом низкий порог вхождения.

                  Хм.. Думаешь человеку, который никогда не занимался программированием и не изучал ни одного языка, Nemerle будет проще лиспов? Очень сильно сомневаюсь. Потому я и говорю о привычке, а не о "понятности" и "простоте".
                    Цитата volvo877 @
                    Можно...
                    ExpandedWrap disabled
                      -- Спецификация
                      package MyTypes is
                       
                         type A is tagged limited private;
                       
                         function get (Obj : A) return Integer;
                         procedure set (Obj : in out A; value : Integer);
                        
                         type B is record
                            x, y, z : A;
                         end record;
                        
                      private
                        
                         type A is tagged limited record
                            V : Integer;
                         end record;
                       
                      end MyTypes;
                       
                      -- Собственно, тело (mytypes.adb)
                      package body MyTypes is
                       
                         function get (Obj : A) return Integer is
                         begin
                            return Obj.V;
                         end get;
                       
                         procedure set (Obj : in out A; value : Integer) is
                         begin
                            Obj.V := value;
                         end set;
                       
                      end MyTypes;


                    Ну, и проверяем:
                    ExpandedWrap disabled
                         with ada.Text_IO; use Ada.Text_IO;
                         with MyTypes; use MyTypes;
                            
                         procedure Main is
                            test_obj : B;
                            MyX : A; -- Попытаемся получить объект сюда
                         begin
                            MyX := test_obj.x;  -- Облом-с, лимитированный тип не копируется, компиляция останавливается...
                            test_obj.x.set (10);  -- А вызвать метод - пожалуйста
                            test_obj.y.set (15);
                            test_obj.z.set (20);
                              
                            Put_Line ("X =" & Integer'Image (test_obj.x.get) &
                                      "; Y =" & Integer'Image (test_obj.y.get) &
                                      "; Z =" & Integer'Image (test_obj.z.get));
                         end Main;


                    Без строки "MyX := test_obj.x;" работает прекрасно:
                    ExpandedWrap disabled
                      X = 10; Y = 15; Z = 20
                      [2011-03-16 19:51:27] process terminated successfully (elapsed time: 00.15s)

                    а мне выдает ошибку на
                    ExpandedWrap disabled
                            test_obj.x.set (10);

                    no selector "set" for private type "A" defined at mytypes.ads:3

                    и так на все вызовы set и get

                    а если оформить как вызов процедуры:
                    ExpandedWrap disabled
                            set ( test_obj.x, 10 );

                    то всё работает

                    использую GNAT 20100603
                      Цитата D_KEY @
                      Хм.. Думаешь человеку, который никогда не занимался программированием и не изучал ни одного языка, Nemerle будет проще лиспов? Очень сильно сомневаюсь. Потому я и говорю о привычке, а не о "понятности" и "простоте".

                      Ты думаешь человеку, который никогда не занимался программированием и не изучал ни одного языка будет понятен хотя бы один язык программирования? :D
                        Цитата Астарот @
                        Цитата D_KEY @
                        Хм.. Думаешь человеку, который никогда не занимался программированием и не изучал ни одного языка, Nemerle будет проще лиспов? Очень сильно сомневаюсь. Потому я и говорю о привычке, а не о "понятности" и "простоте".

                        Ты думаешь человеку, который никогда не занимался программированием и не изучал ни одного языка будет понятен хотя бы один язык программирования? :D

                        Это уже не важно :D Разговор зашел о простоте и пороге вхождения.
                          Не, ну мне охота говняшками покидаться! :huh: Давай я тебя потроллю, а ты сделаешь вид, что ты этого не заметил, а? :rolleyes: С пользой время проведем...
                            Цитата Астарот @
                            Цитата D_KEY @
                            Хм.. Думаешь человеку, который никогда не занимался программированием и не изучал ни одного языка, Nemerle будет проще лиспов? Очень сильно сомневаюсь. Потому я и говорю о привычке, а не о "понятности" и "простоте".

                            Ты думаешь человеку, который никогда не занимался программированием и не изучал ни одного языка будет понятен хотя бы один язык программирования? :D

                            Да, лисп понятен. Открой SICP, я уже цитировал неоднократно в похожих темах...

                            Так лучше?
                              korvin, пересобери проект с ключом -gnat05 - будет работать. Эта фишка (в смысле, dot-notation) появилась только в 2005-м стандарте.
                                Цитата D_KEY @
                                Да, лисп понятен. Открой SICP, я уже цитировал неоднократно в похожих темах...

                                Нафига мне какой-то SICP, если все встает на свои места стоит этот самый лисп показать слесарю Васе - человеку, который никогда не занимался программированием и не изучал ни одного языка :D

                                Цитата D_KEY @
                                Так лучше?

                                Да! :D
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (495) « Первая ... 152 153 [154] 155 156 ...  494 495


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