Skip to content

Add linear algebra design principles#149

Merged
kgryte merged 5 commits into
mainfrom
linalg-design-principles
May 12, 2021
Merged

Add linear algebra design principles#149
kgryte merged 5 commits into
mainfrom
linalg-design-principles

Conversation

@kgryte

@kgryte kgryte commented Mar 25, 2021

Copy link
Copy Markdown
Contributor

This PR

  • adds a section on design principles for linear algebra APIs.

@rgommers rgommers left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thanks @kgryte. Two other things come to mind:

  1. Namespaces. NumPy has the weird split between in linalg functions between its main namespace and numpy.linalg. Other libraries tend to follow that. There's no optimal solution; we should say something about it here though.
  2. You may want to include a part of gh-137. A principle may be "orthogonality", which is a reason for including only certain "dot" functions.

Comment thread spec/API_specification/linear_algebra_functions.md
@rgommers rgommers added the Narrative Content Narrative documentation content. label Mar 25, 2021
@kgryte

kgryte commented Mar 25, 2021

Copy link
Copy Markdown
Contributor Author

@rgommers I've added an orthogonality principle and a note regarding namespaces.

Comment thread spec/API_specification/linear_algebra_functions.md Outdated
@kgryte

kgryte commented May 12, 2021

Copy link
Copy Markdown
Contributor Author

I've removed the note, and will submit a follow-up PR regarding the mirroring of top-level linear algebra APIs in the linalg submodule as discussed during recent meetings.

@kgryte kgryte merged commit 83c6be3 into main May 12, 2021
@kgryte kgryte deleted the linalg-design-principles branch May 12, 2021 06:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Narrative Content Narrative documentation content.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants