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

numpy #48

Open
alanjds opened this issue Aug 21, 2018 · 3 comments
Open

numpy #48

alanjds opened this issue Aug 21, 2018 · 3 comments
Labels
imported Imported from google/grumpy

Comments

@alanjds
Copy link

alanjds commented Aug 21, 2018

google#330 opened by @aep on Jun 15, 2017

continuing the issue started with google#112

numpy is currently the most relevant data science library, but it uses c extensions which grumpy doesn't support.

Maybe there's a way to bring numpy over to grumpy

@alanjds
Copy link
Author

alanjds commented Aug 21, 2018

Comment by zfsamzfsam
Friday Jun 16, 2017 at 06:40 GMT


+1

@alanjds
Copy link
Author

alanjds commented Aug 21, 2018

Comment by trotterdylan
Saturday Jun 17, 2017 at 14:56 GMT


It is possible to implement numpy using Grumpy, in either Python or Go and then leverage the libraries built on top of numpy. But it'd be very challenging to leverage the numpy C extension directly, and the results would probably be sub-optimal or partially broken since Grumpy has no GIL and numpy may use it for synchronization.

Having said that, depending on how the code is written, it may be possible to leverage parts of the code and expose them to Go via cgo. How much code could be reused in this way kind of depends on how deep in the extension the Python part is rooted: if they use PyObjects through all the code then that'd be a problem, but if they use numpy specific data structures and functions and then a thin layer of C extension code on the top, then things would be much easier.

@alanjds
Copy link
Author

alanjds commented Aug 21, 2018

Comment by zfsamzfsam
Friday Jul 07, 2017 at 11:15 GMT


c2goasm: C to Go Assembly
https://github.com/minio/c2goasm

Introduction

This is a tool to convert assembly as generated by a C/C++ compiler into Golang assembly. It is meant to be used in combination with asm2plan9s in order to automatically generate pure Go wrappers for C/C++ code

@alanjds alanjds added the imported Imported from google/grumpy label Aug 21, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
imported Imported from google/grumpy
Projects
None yet
Development

No branches or pull requests

1 participant