jackfirth / racket-disposable

An experimental Racket library providing an abstraction for values associated with external resources that allows automatic resource pooling, per-thread virtual construction, and monadic composition

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

racket-disposable Build Status codecov Documentation

An experimental Racket library providing an abstraction for values associated with external resources that allows automatic resource pooling, per-thread virtual construction, and monadic composition.

(require disposable)

(define (connect!) (make-connection ...))
(define (disconnect! conn) (close-connection conn ...))
(define disposable-connection (disposable connect! disconnect!))

(with-disposable ([conn disposable-connection])
  ... use conn ...)

Available from the Racket package catalog. To install:

raco pkg install disposable

About

An experimental Racket library providing an abstraction for values associated with external resources that allows automatic resource pooling, per-thread virtual construction, and monadic composition

License:Apache License 2.0


Languages

Language:Racket 100.0%