Let's say I'd like to move Racket apps closer to old-school Emacs-like
extensibility. Such as very-low-friction way to use arbitrary Racket
code to set app preferences, and to hook into behavior of the app and
add features. And generally encouraging everyone to get their hands
dirty coding improvements to the things they use, and to share.
What's a good way to do that?
Alternatives include (for app Foo):
* User has a file "foo-custom.rkt" that is loaded when Foo is started.
This file might `provide` bindings recognized and used by Foo, or it
might hook in by `require`ing some module from Foo. And users who
develop substantial extensions can share them by copying the code into
some ".rkt" source file (like Emacs users did with ".el" files).
* Pretty similar alternative: user has a Racket file "my-foo", which is
the immediate program the user runs. This file does a `(require foo)`,
as well as a `(start-foo #:pref1 x #:pref2 y ...)`.
* Conventional
IDE-generated-file-tree-plugin-container-package-bureaucratic-BS with
obligatory multibillion-cash-cow-middleman-lock-in-app-store. There's a
place for that, and also numerous industry places lately where it's done
mainly to create captive users or new corporate/cabal moat barriers to
competition, but I'd like to try something simple and low-friction for
Racket apps.
* Very different alternative: copying and modifying the source of Foo
for user preferences is encouraged. A problem with this is that it is a
lot of work for users to share improvements, peer-to-peer and/or with
curated canonical upstream versions.
I'm leaning towards one of the first two bulleted alternatives.
This question is not motivated only by a desire to use Racket as a tiny
sandbox for exploring changes to contemporary industry thinking-- but
also because I might have an unreleased app gathering dust, and there's
no way I'm going to commit to numerous current and future hours of
clerical-drone UI coding, for the nontrivial "configuration / preference
settings". :)
--
You received this message because you are subscribed to the Google Groups "Racket
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.