Declarative Scala
Mar. 9th, 2012 10:33 amМеня тут на днях спросили, а зачем в языках программирования (и в особенности в Скале) нужны макросы. Ну так ежу же понятно, для декларативного программирования. Декларативное программирование, это когда вместо того чтобы описывать компьютеру средства достижения цели, описывают цели, а о средствах он догадывается сам.
Давайте я сейчас быстро напишу пример, а дальше всё само понятно:
Ещё пример из http://infoscience.epfl.ch/record/161283/files/KuncakETAL10Comfusy.pdf, в переводе на наш синтаксис:
Это их
xeno_by (главный специалист по Скальным макросам) в комментах к этому посту показал.
( Read more... )
Давайте я сейчас быстро напишу пример, а дальше всё само понятно:
Ещё пример из http://infoscience.epfl.ch/record/161283/files/KuncakETAL10Comfusy.pdf, в переводе на наш синтаксис:
val (hours: Int, minutes: Int, seconds: Int) = solve {
0 <= seconds; seconds < 60
0 <= minutes; minutes < 60
hours * 3600 + minutes * 60 + seconds == totalSeconds
}
0 <= seconds; seconds < 60
0 <= minutes; minutes < 60
hours * 3600 + minutes * 60 + seconds == totalSeconds
}
Это их
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
( Read more... )