Namespace loader for registered languages. Intercepts clojure.core/load to search for source files with registered extensions on the classpath. When found, the source is loaded through the lang's :run function.
Any lang registered via meme.registry with an :extension and :run function gets require support automatically.
Installed implicitly by run-file and the REPL — no manual setup.
Security: a denylist prevents interception of core infrastructure namespaces (clojure., java., etc.). Only user/library namespaces are eligible for lang-based loading.
Namespace loader for registered languages. Intercepts clojure.core/load to search for source files with registered extensions on the classpath. When found, the source is loaded through the lang's :run function. Any lang registered via meme.registry with an :extension and :run function gets require support automatically. Installed implicitly by run-file and the REPL — no manual setup. Security: a denylist prevents interception of core infrastructure namespaces (clojure.*, java.*, etc.). Only user/library namespaces are eligible for lang-based loading.
(install!)Install the lang-aware loader. Idempotent — safe to call multiple times. After this, (require 'my.ns) searches all registered lang extensions.
Install the lang-aware loader. Idempotent — safe to call multiple times. After this, (require 'my.ns) searches all registered lang extensions.
(uninstall!)Uninstall the loader, restoring original clojure.core/load. Throws if called from within a lang-load (e.g. from .meme code during require).
Uninstall the loader, restoring original clojure.core/load. Throws if called from within a lang-load (e.g. from .meme code during require).
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |