X-Git-Url: http://www.git.stargrave.org/?p=public-inbox.git;a=blobdiff_plain;f=HACKING;h=859745ef3151c642c22623b6ce31327f3f563e67;hp=666d504e7336b61ef7d26f559e5b192c56fbd9de;hb=e3e9ebdaaf2c2f8192fc003f1857979f933b9a8b;hpb=d07658376f6b05c85ca0763fb06a610a9211fb77 diff --git a/HACKING b/HACKING index 666d504e..859745ef 100644 --- a/HACKING +++ b/HACKING @@ -43,6 +43,11 @@ distribute and verify. public-inbox itself will only be implemented in scripting languages (currently Perl 5) and optional JIT-compiled C (via Inline::C) +Do not recurse on user-supplied data. Neither Perl or C handle +deep recursion gracefully. See lib/PublicInbox/SearchThread.pm +and lib/PublicInbox/MsgIter.pm for examples of non-recursive +alternatives to previously-recursive algorithms. + Performance should be reasonably good for server administrators, too, and we will sacrifice features to achieve predictable performance. Encouraging folks to self-host will be easier with lower hardware