numbl 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,24 @@
1
+ # Numbl
2
+
3
+ Numbl lets you run MATLAB-compatible code in the browser and on the command line. It works by compiling `.m` source code to JavaScript and executing it directly. In the browser, all execution happens locally — no code is sent to a remote server.
4
+
5
+ Numbl is under active development and new functionality is being added regularly.
6
+
7
+ ## Documentation
8
+
9
+ - [Overview](docs/overview.md) — What numbl is and how to use it
10
+ - [Architecture](docs/architecture.md) — How the compiler pipeline works
11
+ - [Function specialization](docs/specialization.md) — The type specialization optimization pass
12
+ - [Adding built-in functions](docs/adding-builtins.md) — How to contribute new built-ins
13
+ - [Test scripts](docs/test-scripts.md) — Writing and running `.m` integration tests
14
+ - [Development](docs/development.md) — Setting up local development
15
+ - [Performance](docs/performance.md) — How numbl achieves computational efficiency
16
+ - [Documentation guidelines](docs/documentation-guidelines.md) — Conventions for writing docs
17
+
18
+ ## License
19
+
20
+ Apache 2.0.
21
+
22
+ ## Acknowledgement
23
+
24
+ This project was inspired by the [runmat project](https://github.com/runmat-org/runmat). The initial TypeScript lexer and parser were generated by AI with access to runmat's Rust lexer and parser.
package/binding.gyp ADDED
@@ -0,0 +1,25 @@
1
+ {
2
+ "targets": [
3
+ {
4
+ "target_name": "lapack_addon",
5
+ "sources": [
6
+ "native/lapack_addon.cpp",
7
+ "native/lapack_inv.cpp",
8
+ "native/lapack_qr.cpp",
9
+ "native/lapack_svd.cpp",
10
+ "native/lapack_matmul.cpp",
11
+ "native/lapack_linsolve.cpp",
12
+ "native/lapack_eig.cpp"
13
+ ],
14
+ "include_dirs": [
15
+ "<!@(node -p \"require('node-addon-api').include\")"
16
+ ],
17
+ "dependencies": [
18
+ "<!(node -p \"require('node-addon-api').gyp\")"
19
+ ],
20
+ "defines": [ "NAPI_DISABLE_CPP_EXCEPTIONS" ],
21
+ "libraries": [ "-lopenblas" ],
22
+ "cflags_cc": [ "-std=c++17", "-O2" ]
23
+ }
24
+ ]
25
+ }