X-Git-Url: http://www.git.stargrave.org/?p=public-inbox.git;a=blobdiff_plain;f=HACKING;h=859745ef3151c642c22623b6ce31327f3f563e67;hp=666d504e7336b61ef7d26f559e5b192c56fbd9de;hb=e0c7955ead5251f969c742e3aab8d912f7d510f3;hpb=f9fc5cf2e8cefda4a56d937ed217e47689fd7e49 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