libxslt has a (configurable) maximum recursion depth of 1500 which does mean that if you can’t reasonably chunk your markup language into smaller pieces than that you can probably only process things which are very small
i bet you could write an efficient djot parser for it though
re: prrgrrmmng
sorry markdown