|
|
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
U-gene, то проблема будет ловиться на этапе компиляции. да нет никаких проблем, если не использовать императивное ооп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2011, 10:57 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
ну привет, приехали вот предал ты объект-квадрат по ссылке в теле метода изменил ширину методом для прямоугольника и что? теперь у тебя квадрат с разной длиной-шириной? так это уже не квадрат ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2011, 11:08 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
U-geneну привет, приехали вот предал ты объект-квадрат по ссылке в теле метода изменил ширину методом для прямоугольника и что? теперь у тебя квадрат с разной длиной-шириной? так это уже не квадрат че ты мыслишь методами с++. передал по ссылке. изменил ширину. я же и говорю, что чтоль очевидное наследование, принятыми средствами ооп не работает. зато работает для иммутабельных объектов. суть проста, как валенок. есть ф-я, котороая работает с прямоугольниками - тогда мы можем туда передать квадрат и все будет ок. есть ф-я - для квадратов, туда прямоугольник передать система типов не позволти(на этапе компеляции) все. где проблемы. а понятий передать по ссылке и изменить объект - в хаскеле нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2011, 11:14 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
U-geneтеперь у тебя квадрат с разной длиной-шириной? так это уже не квадрат да нет. теперь у меня прямоугольник с разной(а может быть и не разной) длинной-шириной. т.е. setWidth возвращает прямоугольник. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2011, 11:15 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
я шас еще про тот мартиновский пример говорю, который в статье чингиза описан там совершенно четко кусок кода, который работает с прямоуголькником логически криво работает с квадратом, потомучто внутренние зависимости квадрата отличаются от таковых у прямоугольника. я, как практик, хоч такие ошибки ловить как то. что б с однос тсторы квадарта был прямоугольником а сдругой - при описании внутренних зависимостей не был бы им. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2011, 11:17 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
я мыслю категориями, как ими мыслят процентов девяносто с хвостиком . :) и мое наследование LOOKS_LIKE в эти категории укладывается и вроде позволяет достичь того же результата. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2011, 11:22 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
U-geneя мыслю категориями, как ими мыслят процентов девяносто с хвостиком . :) и мое наследование LOOKS_LIKE в эти категории укладывается и вроде позволяет достичь того же результата. )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2011, 00:12 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
кстати. в моем коде есть страшная ошибка. и я пока незнаю как ее исправить. все же систему типов хацкеля я не поборол. ведь я не задал что тип возвращаемый методами сетВидз и сетХейгт обяза быть инстансом класса Рэктангле. но я думаю что решу данную проблему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2011, 00:35 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
ZyK_BotaNкстати. в моем коде есть страшная ошибка. и я пока незнаю как ее исправить. все же систему типов хацкеля я не поборол. ведь я не задал что тип возвращаемый методами сетВидз и сетХейгт обяза быть инстансом класса Рэктангле. но я думаю что решу данную проблему. проблема повикшена: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2011, 01:45 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
вот код попроще, но без возможности множественного наследования: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. вот как поломать данный код? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2011, 13:13 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
во забыл: Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2011, 13:14 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
или даже круче так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2011, 13:18 |
|
||
|
[haskell] ограничение системы типов хаскеля.
|
|||
|---|---|---|---|
|
#18+
желание шевелить мозгами отсутствует желание писать быдлокод прям захлёстывает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2011, 15:19 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=37473788&tid=1342685]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
160ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
| others: | 239ms |
| total: | 501ms |

| 0 / 0 |
