[Remind-Fans] Remind and interoperability with others

David F. Skoll dfs at roaringpenguin.com
Sat Feb 28 10:01:06 EST 2009


timofonic timofonic wrote:

> OpenSync is used by a large number of apps, including Mozilla Sunbird.

[...]

> It could be interesting if certain apps have built-in support for
> Remind. Anyone could provide more info about this?

That would be interesting, but I think very difficult.  Remind (IMO)
is not primarily a calendaring application --- it's a scripting
language.  Its design is quite hard to reconcile with mainstream
calendar applications for a number of reasons:

1) Remind is primarily a language interpreter designed to let you
express reminders as flexibly as possible.  Ideally, it should handle
every conceivable exception or scheduling rule.  (It's not a
Turing-complete language because then we would never know whether or
not a Remind script would terminate...)

2) Remind's OMIT context affects scheduling in ways difficult to sync to
other applications.  Various other global variables also affect context.

3) Remind's expression language is essentially impossible to replicate in
other applications.  Think [moondate(0)] AT [sunset(moondate(0))].

I think the best you can hope for is to convert other applications' schedules
into REM statements.  Going the other way (from Remind to another app)
is much trickier; you either have to post-process the output of "remind -p"
(in which case you lose all the recurrence logic) or write very nasty
code to handle the REMs that are possible to represent and "flatten"
the rest.

I do have a vague notion to extract Remind code into a library that
parses reminder files and gives you data structures you can use for export.
But I haven't gotten around to it yet, and I still have no solution for
complex reminders with expression-substitution.

Regards,

David.



More information about the Remind-fans mailing list