#lang racket/base (require net/smtp net/head simple-ini) (provide mail-report) (define (mail-report ini subject report) (let* ((get (λ (key msg) (let ((v (ini-get ini 'mail key 'nil))) (when (eq? v 'nil) (error msg)) v))) (from (get 'from "configure from address as name ")) (to (get 'to "configure to address as name ")) (server (get 'server "configure the smtp server")) (port (ini-get ini 'mail 'port 25)) ) (let* ((hdr (standard-message-header from (list to) '() '() subject))) (smtp-send-message server from (list to) hdr (if (list? report) report (list report)) #:port-no port) ) ) )