(define *system-help-dir* "/usr/share/alterator/help")

(define (help-topic name)
  (lambda(lang)
    (string-append *system-help-dir* "/" lang "/" name ".html")))
      
(define (help-path name options)
  (let ((langlist (cond-plistq 'language options '("en_US"))))
    (or
     (with-first-readable
      (map (help-topic name) langlist) values)
     (with-first-readable
      (map (help-topic "unknown") langlist) values))))

(object
 #f
 ((read self objects options)
  (list 'path (help-path (string-join objects "/") options))))
