1:- module(julian_util, [dow_number/2]). 2
3%% dow_number(+DayOfWeek:atom, -Number:integer) is semidet.
4%% dow_number(-DayOfWeek:atom, +Number:integer) is semidet.
5%% dow_number(-DayOfWeek:atom, -Number:integer) is multi.
6%
7% True if Number is the ISO number for DayOfWeek.
8% 0 is Monday, 6 is Sunday. DayOfWeek is an atom like `monday`,
9% `tuesday`, `sunday`, etc.
10%
11% This predicate supports `library(delay)`.
12:- multifile delay:mode/1.
13delay:mode(julian_util:dow_number(ground,_)).
14delay:mode(julian_util:dow_number(_,ground)).
15
16dow_number(monday, 0).
17dow_number(tuesday, 1).
18dow_number(wednesday, 2).
19dow_number(thursday, 3).
20dow_number(friday, 4).
21dow_number(saturday, 5).
22dow_number(sunday, 6)