[Top Page][Discussion][Edit History][All Pages][Recent Changes][->Japanese]

Programming/Scheme/Chicken/2008/02/26/udpmsg

Category of Programming
Category of Scheme
Category of Chicken

ここまできたら、やっぱりSchemeでudpmsgを書かないと。 これは今書いた。CheckenかわいいよChecken。

(use udp)

(define ipmsg-version      #x0001)
(define ipmsg-default-port #x0979)
(define ipmsg-sendmsg      #x0020)

(define (format-msg num host user cmd extra)
  (format "~a:~a:~a:~a:~a:~a" ipmsg-version num host user cmd extra))

(define (send-udpmsg host msg)
  (let ((sock (udp-open-socket)))
    (udp-bind! sock #f 0)
    (udp-connect! sock host 2425)
    (udp-send sock (format-msg (random 16777215) "myhost" "myname" ipmsg-sendmsg msg))
    (udp-close-socket sock)))

って、3つの中で一番読みやすいな。

blog comments powered by Disqus