Cameron Taggart has a blog entry on using ManagedEsent from F#:
The ESENT programming model centers around a database cursor (JET_TABLEID). The cursor is located on a record, can navigate to other records individual columns can be set/retrieved. This is quite different than a functional programming model, which would center around a stream (enumeration) of records instead of a stateful cursor. I find it interesting seeing what it takes to get the two models working together.