1,686 karma · joined January 4, 2021
Very little visibility as well, Scheme is already a niche. By catering to only the most FOSS oriented/adamant part of the public, your pool of devs is very tiny.
Most guile libs can also only be installed through Guix or failing that, tar files.
The ergonomics of the language are bad and there no concerted community story and publicity around it either imo.
It's sad because it's a cool language and the efforts Wingo and people like the Spritely institute have put into it, are amazing.
from functools import lru_cache
class Whatever:
pass
@lru_cache(maxsize=1)
def get_whatever():
return Whatever()
And use `get_whatever` as your interface to get the resource. (use-package janet-ts-mode
:ensure t
:defer t
:vc (:url "https://github.com/sogaiu/janet-ts-mode"
:rev :newest))
(use-package ajrepl
:ensure t
:defer t
:vc (:url "https://github.com/sogaiu/ajrepl"
:rev :newest)
:hook (janet-ts-mode . ajrepl-interaction-mode))
Also, a fix for treesit auto to not ask for the grammar every time: (use-package treesit-auto
:pin melpa
:ensure t
:custom
(treesit-auto-install 'prompt)
:config
(add-to-list 'treesit-load-name-override-list
'(janet "libtree-sitter-janet-simple" "tree_sitter_janet_simple"))
(add-to-list 'treesit-language-source-alist
'(janet-simple . ("https://github.com/sogaiu/tree-sitter-janet-simple")))
(treesit-auto-add-to-auto-mode-alist 'all)
(global-treesit-auto-mode))Where I'm with you, is that you should take care of your boundaries and muddling the line between your Pydantic domain models and your CRUD models will be painful at some point. If your domain model is changing fast compared to the API you're exposing, that could be an issue.
But that's not a "Pydantic in the domain layer" issue, that's a separation of concerns issue.