ООП vs %name%
    , размышления о проектировании
  ![]()  | 
Наши проекты:
 Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту  | 
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS | 
| [216.73.216.5] | 
 
 | 
		
  | 
    Правила раздела:
  | Страницы: (4) 1 2 [3] 4 все ( Перейти к последнему сообщению ) | 
    ООП vs %name%
    , размышления о проектировании
  | 
         
         
         
          
           Сообщ.
           #31
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата  Монады и точки - это взаимно перпендикулярные сущности. Ну фиг знает. Цепочка вычеслений и цепочка вычеслений.  | 
    
| 
         
         
         
          
           Сообщ.
           #32
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата D_KEY @  Раз забыл, значит редко используешь. Значит да, лучше обсудить детали. И значит в этом конкретном случае от паттерна толку не было. Почему? Юзать паттерны не зная что из них чем является - нормальное явление для программиста.  | 
    
| 
         
         
         
          
           Сообщ.
           #33
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата OpenGL @  Юзать паттерны не зная что из них чем является - нормальное явление для программиста. Я под паттерном понимаю в данном случае именно устоявшийся каталогизированный способ и соответствующий ему термин. А то, что твое решение совпадает с паттерном - это уже другой вопрос   Думаю, что у всех программистов такое бывает и читая тот же GoF впервые они видят там свои же решения, пусть и чуть в другом виде иногда.  | 
    
| 
         
         
         
          
           Сообщ.
           #34
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          Разговор про монады напомнил мне, как я тут развлекался когда-то в одной из тем 
        
      Монады и C++ Часть 2(списки) Часть 3(монада IO) Вот уж действительно   Добавлено Я думал меньше времени прошло     | 
    
| 
         
         
         
          
           Сообщ.
           #35
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата Астарот @  Всякая монада - это действительно цепочка вычислений. Но не всякая цепочка вычислений - это монада.  Ну фиг знает. Цепочка вычеслений и цепочка вычеслений.  | 
    
| 
         
         
         
          
           Сообщ.
           #36
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата applegame @  Цитата Астарот @  Всякая монада - это действительно цепочка вычислений. Но не всякая цепочка вычислений - это монада.Ну фиг знает. Цепочка вычеслений и цепочка вычеслений. Что никак не объясняет почему они "перпендикулярны".  | 
    
| 
         
         
         
          
           Сообщ.
           #37
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата Астарот @  Я хз как ещё объяснять. "Монады - это точки" это примерно как "студенты - это программисты". Так вот, студенты и программисты взаимно ортогональны. Есть такая аллегория. 	 Что никак не объясняет почему они "перпендикулярны".  | 
    
| 
         
         
         
          
           Сообщ.
           #38
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата applegame @  Я хз как ещё объяснять. "Монады - это точки" это примерно как "студенты - это программисты". Так вот, студенты и программисты взаимно ортогональны. Есть такая аллегория.  Очевидно же, что когда я говорю "монада - это точки", то рассчитываю, что все тут присутствующие все же программисты, и смогут развернуть это колхозное определение во что-то вроде "объекты содержащие логику и состояние и поддерживающие цепочечные вызовы", или как-то так. Вообще говоря какой-нибудь "билдер" на все возвращающий сам себя, а на build() результат - тоже монада     | 
    
| 
         
         
         
          
           Сообщ.
           #39
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата Астарот @  "объекты содержащие логику и состояние и поддерживающие цепочечные вызовы" Любой класс, в котором есть логика и состояние и в котором есть метод возвращающий тип-объект подходит под это определение.     | 
    
| 
         
         
         
          
           Сообщ.
           #40
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
| 
         
         
         
          
           Сообщ.
           #41
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата korvin @  Как ты себе представляешь приложение без I/O? Без монад можно разве что либы писать.  Можно, но не нужно, ибо с ними удобней.  | 
    
| 
         
         
         
          
           Сообщ.
           #42
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
          Более того, именно ради I/O программа и пишется  
        
          | 
    
| 
         
         
         
          
           Сообщ.
           #43
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата applegame @  Цитата korvin @  Как ты себе представляешь приложение без I/O? Без монад можно разве что либы писать.Можно, но не нужно, ибо с ними удобней. Возможно, есть другие способы сделать ввод/вывод в haskell. Без монад.  | 
    
| 
         
         
         
          
           Сообщ.
           #44
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата applegame @  Как ты себе представляешь приложение без I/O? Без монад можно разве что либы писать.  Монады не про IO. Берёшь unsafePerformIO и вперёд. Альтернативный вариант — unique types в Clean.  | 
    
| 
         
         
         
          
           Сообщ.
           #45
          
          , 
          
         
         
        
       | 
    |
| 
         | 
      
         Цитата korvin @  Монады не про IO, зато IO про монады.Монады не про IO. Цитата korvin @  Берёшь unsafePerformIO и вперёд. Там все равно присутствует монада IO: Цитата  This is the "back door" into the IO monad, allowing IO computation to be performed at any time. И всякие операторы вроде >>= и do-нотация - это тоже использование монад. Монады в Хаскеле - это не прикольная дополнительная возможность, а суровая необходимость.  |