Skip to content

lfex/moneta

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

moneta

Build Status LFE Versions Erlang Versions Tags

A Lispy wrapper for Erlang Mnesia and QLC

Table of Contents

Introduction

This project is mostly a wrapper around the Erlang/OTP mnesia and qlc modules. That being said, it does provide the additional following benefits:

  • functions and macros for easily creating tables
  • additional convenience functions
  • Lisp-friendly wrapper functions for Mnesia functions (i.e., hyphens!)

Documentation

Documentation for Moneta is available in the following forms:

Modules

The Erlang namespaces for the modules (ab)used by this project are the following:

  • mnesia
  • qlc

These are accessible via those same module names in LFE, or using this library, from the following:

  • mnta - holds alll the mnesia functions besides the dirty ones
  • mnta-drty - split dirty functions into their own module ("dirty" operations are short-cuts that bypass much of the processing and increase the speed of the transaction)
  • mnta-qry - qlc alias; longer to type than qlc, but provides some nice visual context when scanning code

Function names in the mnta* modules have the Erlang underscores replaced with LFE hyphens. This work is done via the LFE kla library.

Resources

License

Copyright © 2016-2023 Duncan McGreggor

Distributed under the Apache License, Version 2.0.

Original Mnesia documentation upon which the Moneta tutorial is based:

Copyright © 1997-2016 Ericsson AB. All Rights Reserved.