Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Implement Bessel_j1 #3693

Merged
merged 3 commits into from
Mar 24, 2024
Merged

feat: Implement Bessel_j1 #3693

merged 3 commits into from
Mar 24, 2024

Conversation

HarshitaKalani
Copy link
Contributor

No description provided.

@HarshitaKalani
Copy link
Contributor Author

HarshitaKalani commented Mar 24, 2024

I tried to implement this. Currently the output is not aligning with GFortran.
Working on that.

Edit: works after changing abs to fabs

Copy link
Contributor

@certik certik left a comment

Choose a reason for hiding this comment

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

This is good. I thought the libc library has implementation of these, but it's good to have explicit implementations anyway, we'll have similar implementations for all math functions eventually, and we'll figure out how to organize it. For now this is good.

@certik certik enabled auto-merge March 24, 2024 17:10
@certik certik merged commit bc0ed99 into lfortran:main Mar 24, 2024
21 checks passed
@kargl
Copy link

kargl commented Mar 24, 2024

What is the software license for this piece of code? It seems that lfortran is now in violation of Copyright.

@certik
Copy link
Contributor

certik commented Mar 24, 2024

@kargl it's Apache 2.0 and Boost. We just need to copy the licenses, which I did in #3696.

@kargl
Copy link

kargl commented Mar 24, 2024

@kargl it's Apache 2.0 and Boost. We just need to copy the licenses, which I did in #3696.

Yes, I read the code and tracked down the licenses. The original commit appears to violate copyright. It's unclear to me whether displacing the licenses from the code is acceptable under copyright.

The question now is what other code in lfortran may have been imported from other projects without proper license(s)?

@certik
Copy link
Contributor

certik commented Mar 24, 2024

@kargl we diligently track all 3rd party licenses and which parts they apply to at https://github.com/lfortran/lfortran/blob/main/LICENSE. Thank you for reminding me about the above. We should have included it LICENSE right away, however, we did mark the parts of code that we copied. We develop LFortran completely in the open via pull requests, so it's easy to track and audit any line of code that goes in (which PR it came from, who wrote it, the review, the discussion around it, etc.).

If you discover any other contribution that is not properly listed there, definitely let me know.

It's unclear to me whether displacing the licenses from the code is acceptable under copyright.

This is a good question. I think it's allowed, for example the Boost license says "The copyright notices in the Software and this entire statement, including the above license grant, this restriction and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all derivative works of the Software". Our LICENSE file does exactly that. In fact, some licenses do not require to do this for binary distributions (for example this Boost license says "... unless such copies or derivative works are solely in the form of machine-executable object code generated by a source language processor."), but we copy LICENSE in our binary distribution also (the Conda package distributes the LICENSE file).

The question now is what other code in lfortran may have been imported from other projects without proper license(s)?

None that I know of, all our contributors write the code themselves, and if we copy code, we always mark it as such, including in this PR.

If you or anybody else discovers any issue, we'll fix it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants