Mercurial > pytave
comparison README.md @ 429:c8543d9a4bff draft default tip @
Empty the repository, leave a note about where development has been moved
author | Mike Miller <mtmiller@octave.org> |
---|---|
date | Fri, 25 Oct 2019 13:53:09 -0700 |
parents | 14b134ffdc24 |
children |
comparison
equal
deleted
inserted
replaced
428:3af3665348a1 | 429:c8543d9a4bff |
---|---|
1 Octave Python Interface | 1 Octave Python Interface |
2 ======================= | 2 ======================= |
3 | 3 |
4 This project is for development of a native Python calling interface for | 4 Development on the Python language interface continues in the Pythonic package! |
5 [GNU Octave](http://www.octave.org). | |
6 | 5 |
7 Goals | 6 This repository has been converted and moved, the current development |
8 ----- | 7 repository can be found at https://gitlab.com/mtmiller/octave-pythonic |
9 | 8 |
10 The goals of this extension include | 9 * https://gitlab.com/mtmiller/octave-pythonic |
11 | 10 * https://wiki.octave.org/Pythonic |
12 * call any loadable Python modules, classes, and functions | |
13 * automatic translation of certain Octave data types into Python | |
14 arguments | |
15 * hold reference to and performing operations on any Python data type as | |
16 Octave variables | |
17 * automatic translation of certain Python data types into Octave return | |
18 values | |
19 * be as compatible as possible with Matlab's own Python calling | |
20 interface | |
21 | |
22 Examples | |
23 -------- | |
24 | |
25 A few examples are listed here to give a brief introduction to how the | |
26 Python runtime is translated to Octave. | |
27 | |
28 Add a directory to the Python module search path | |
29 | |
30 py.sys.path.insert (int32 (0), "/path/to/module"); | |
31 | |
32 Use a vectorized NumPy function | |
33 | |
34 x = py.numpy.sqrt (1:10); | |
35 | |
36 Call a function with keyword arguments | |
37 | |
38 a = py.int ("5ba0", pyargs ("base", int32 (16))); | |
39 | |
40 Read an entire text file into a string | |
41 | |
42 s = py.str ().join (py.open ("/etc/passwd").readlines ()); | |
43 | |
44 Installation | |
45 ------------ | |
46 | |
47 There is currently no support for installing this project as an Octave | |
48 package or in a system or user directory for regular use. This is | |
49 intentional, since the project is still being developed and is not | |
50 stable enough for actual use yet. | |
51 | |
52 What is supported is building and running the project from the build | |
53 directory. Building requires Octave and Python development libraries and | |
54 GNU autotools. | |
55 | |
56 1. `hg clone https://bitbucket.org/mtmiller/pytave` | |
57 2. `cd pytave` | |
58 3. `autoreconf -i` | |
59 4. `./configure` | |
60 5. `make` | |
61 6. Run Octave with the build directory added to the load path | |
62 | |
63 Development | |
64 ----------- | |
65 | |
66 We welcome all contributors, bug reports, test results, and ideas for | |
67 improvement. Contributions in any of the following forms, in no | |
68 particular order, are needed and appreciated. | |
69 | |
70 * Testing on different operating systems and in different environments | |
71 * Testing for full functionality with a variety of Python libraries | |
72 * Bug reports detailing problems encountered or unexpected behavior | |
73 * Code contributions | |
74 * Documentation in the form of examples, improvements to help texts, or | |
75 some sort of user manual | |
76 | |
77 Other Resources | |
78 --------------- | |
79 | |
80 Please discuss or ask questions about this project on the Octave | |
81 [maintainers mailing list](https://lists.gnu.org/mailman/listinfo/octave-maintainers). | |
82 | |
83 The [wiki page](http://wiki.octave.org/Python_interface) contains more | |
84 examples and ideas about the project. |