I share @oeyoews concerns about the high investment on a pretty niche language when you learn all the bells and whistles of the TW operator/filter language, with low support on your dev environment or even inside TW. For example, in other environments, once you have extended the core language, let’s say, creating a function or a method, you get type completion, tooltip suggestions, keyboard shortcuts and so on. When you create a macro or procedure on TW you don’t get any of this, and I find myself editing my macro tiddlers just to see the source code and remember the parameters of my own defined macros.
I did a more elaborated response on Operators/filters knowledge seems too specific and difficult to recontextualize elsewhere and I even proposed there an imaginary Lua DSL embedded in TW to address the composition of functions, that would work like operators/filters, but it would apply more general programming principles, while still it would keep a compact syntax (of course, with the advantage of moving in the imagination and without dealing with the reality of its implementation).
I use and enjoy TiddlyWiki daily and find it pretty inspiring, even within its constrains and limitations (which are inspiring also). But when I think how to bridge the gap between programmers and non programmers in TW, my mind tends to go into more abstract/architectural concerns to deal with the problems stated above:
- Could we enable extension languages beyond JS for TW?
- If yes, how this would change functionality in TW, offering still a gentile learning path between content and functionality creators in the wiki, which is one of the big advantages of TW, but with more general concepts that can be used outside TW and with improved tool support that is usual there?
My path to explore such questions is more related with some alternative explorations, that I hope can come back in some way to TW.