Replies: 5 comments
-
Some of this stuff is already directly accessible through the Section object, e.g.
|
Beta Was this translation helpful? Give feedback.
-
Yep! So that's the "low hanging fruit"/Pythonic/modern aspect of it, we'd be in a prime position to extend the interface with cleaner, more expressive and intuitive APIs that make what's already there easier to use and find (e.g. Another big one would be that we could much easier fully document this using |
Beta Was this translation helpful? Give feedback.
-
For what it's worth, you could think of
|
Beta Was this translation helpful? Give feedback.
-
Yea, what's in Speaking of
Anything else that the object Things like |
Beta Was this translation helpful? Give feedback.
-
A section is not in general a cylinder. It's the union of potentially many frusta and many compartments (segments). |
Beta Was this translation helpful? Give feedback.
-
Hi everyone, this is going to be my longpost discussion thread on all things Python interface! Join me!
The
neuron
root module in Python is currently an empty redirect to theh
HocInterpreter
but as I see it, being the root namespace .. and empty, it could house an extended Python interface to the things inside ofnrn
and the things accessible throughh
.I'd like to propose thinking about a Python-first interface that leaves behind all historical limitations that come with the C, HOC roots of NEURON and focus on what makes the Python interface great. That is ofcourse until it gets replaced by the next thing. Rust-NEURON anyone?
To get started here are some outlines and ground rules for my ambitions of this Python interface (let's debate!):
nrn
to preserve base functions but don't expose all of them directly to the userh
in a shiny new Pythonic coat.h
APITo give you an idea I have something like this in mind (that thanks to @ramcdougal I can actually start work on now! See #1096 )
The take away point of this is that us Python users/devs can create a Python interface from Python and give it whatever API NEURON's Python community decides on, empowering voiceless Pythonistas to contribute code in the language they're using, and without dealing with a "bastardized" hoc interface and its inherent historical difficulties (given that we can do the things we want still using that same interface under the hood). I see it as a noninvase enrichment of NEURON with a modern Python interface.
Beta Was this translation helpful? Give feedback.
All reactions