Darren Duncan wrote:
At 12:45 AM +0200 5/7/06, mAsterdam wrote:
Okay, thank you both for clarifying this.
Conceptually in my mind, a Range is entirely appropriate to represent
a mathematical interval, but I was mistaken about Range being more
constrained than it actually is.
So, there you go mAsterdam; Range is indeed the interval you are
I hope it is also the appropriate type for implementing
relations with temporal attributes.
Thank you all for your prompt discussion.
It should work just fine.
Keep in mind that your concern about relations is orthogonal to the
concern about intervals or temporal data.
I hope (and think) you are right about that regarding
implementing relations. Using them correctly is another
story though. I don't think Date, Darwen & Lorentzos
lightly took the step of introducing 6NF in 2003.
An attribute of a relation can be any arbitrary data type at all
(including another relation).
Aside, about RVA (relation valued attibutes): I read at
comp.database.theory that Hugh Darwen has introduced
gu(group/ungroup)NF a month ago.
So the only real concern here is whether there is a data type that can
represent a single piece of temporal data. But one can easily be
defined using Perl's standard class definition abilities if it isn't
I really don't yet see how to define point types and interval
(range) types based on those. I think you (we) /will/ need them
(*not* neccesarily Perl 6 built-in) if ...
Note that I am of the opinion that Perl probably should not have
built-in data types that are specific to temporal or spacial data; it is
better for these to be extensions (like "DateTime" etc) defined over
built-ins like numbers or ranges or collections. Temporal or spacial
data in common use today is just too complicated and non-generic, I think.
(Whereas, the existing built-ins, and relations, are very generic and
... you, like I, want temporal and spacial data as simple
and generic as possible.