Skip to content

Commit 901ae97

Browse files
committed
Add FAQ on contributing to external libs
1 parent cc4a2ee commit 901ae97

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

FAQ.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
- [Why not change the ECMAScript specification to use better Math algorithms?](#ecmascript-math-specification)
1414
- [What can be done at the standards level to better support numeric computing?](#ecmascript-recommendations)
1515
- [Why reimplement module functionality already available on npm?](#reimplementing-existing-packages)
16+
- [Why not submit improvements to existing libraries?](#contributing-to-existing-libraries)
1617
- [Backward compatibility?](#backward-compatibility)
1718
- [Why use semicolons?](#semicolons)
1819
- [Import support?](#import-support)
@@ -293,6 +294,21 @@ To better support numeric computing, standards bodies can do the following:
293294

294295
* * *
295296

297+
<a name="contributing-to-existing-libraries"></a>
298+
299+
### Why not submit improvements to existing libraries?
300+
301+
- **Rewrites**: often, our approach and improvements would require a drastic shift in how existing libraries are written. In some cases, incorporating changes would require completely rewriting one or more libraries. And if a rewrite is necessary, a rewritten library differs from a separate implementation in name only.
302+
- **Bandwidth**: we do not have the time or resources to both develop the project and actively contribute to any and all existing libraries which might benefit from our improvements. In an ideal world, we would contribute any insights, bug fixes, and improved algorithms to external community libraries; however, we simply lack the bandwidth to do so. As this project is open source, we encourage authors of community libraries to track project development. If someone wants to take our improvements and incorporate them elsewhere, she is free to do so (**subject to the project license**), but this is **not** something we plan on actively pursuing.
303+
- **Opportunity Cost**: while we acknowledge that the project may benefit from engaging with authors of existing libraries in terms of knowledge transfer and insight, we also recognize that such efforts entail risk (no guarantee efforts will lead to library inclusion or achieve intended aim) and real costs (allocated time), and, as such, the opportunity cost (along with maintenance burden) of _pushing_ changes to external community libraries is too great.
304+
- **Priorities**: based on our experience, authors of external community libraries can be rather opinionated, and we are not interested in engaging in endless developer debate, especially given our rather strong opinions on how things should be done. The more we spend time in debate, the less we can allocate time to project development. Our preference is to focus our attention on those aspects over which we have most control and which achieve the greatest development efficiency.
305+
306+
<!-- </faq-question> -->
307+
308+
<!-- <faq-question> -->
309+
310+
* * *
311+
296312
<a name="backward-compatibility"></a>
297313

298314
### Backward compatibility?

0 commit comments

Comments
 (0)