-
-
Notifications
You must be signed in to change notification settings - Fork 8.2k
Good name for interpreter binary #17
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
Comments
I'm in favor of upython |
Given that chickenpotpython would probably fly over people's heads, I On Tue, Dec 31, 2013 at 5:40 PM, Paul Sokolovsky
|
+1 to upython Send from my Samsung Galaxy Note II
|
I also agree with upython.
but of course upython is shorter... |
upython - 👍 |
mupython +1 |
mupython is much better. |
I voted for upython, but after reading the topic, I think now mupython is a 2014/1/1 Jonathan Greig notifications@github.com
"Si quieres viajar alrededor del mundo y ser invitado a hablar en un monton |
Damien's major effort needs an easy 'hook' Its embedded python. ... pythembed embedpy Any non-pom (Non-English) scratching their head by now? Well ,Damien, Pick something with typing ease that ISN'T google search aliased already!!! Hugh Wallace On Jan 1, 2014, at 6:21 AM, Jesús Leganés Combarro notifications@github.com wrote:
|
I am a fan of "muPy" or "uPy" (which would be the nickname for the official long name "MicroPython") because it falls in line with other well-known Python libraries and platforms. For example, NumPy, SciPy, FePy, PyPy. |
Let me first say that the unix port was initially intended just for testing purposes, not suited for the real world. Hence the poor choice of binary name. It looks like the unix port is gonna get some legs, so, yes, we need a better name. In the code, I use "mp_" for everything Micro Python related. I like that because it's short and the simplest abbreviation for "Micro Python". "up_" would have been strange. "upy_" would have been okay, "mupy_" reads like muppet and is long :) So that's my rationale for function/type names in C. For binary, I would say either upython or mupython. Also I need a name for the board, since I want to make a separate repo for that (see update #18). |
upython reminds me of uWSGI. I don't think it will be lost on people that it means "micro." |
By the way, where are the code examples? Could you be able to upload them "Si quieres viajar alrededor del mundo y ser invitado a hablar en un monton |
Wanted to ask that too.
IMHO they belong to the main repo, let's not spread too thin. |
Look how many people here have actually posted μ instead of u for the binary name. Nobody. Using u is clearly wrong to start with. Also, for any OS that supports symbolic linking, it's not a major problem to provide the alternate spelling, I think it makes more sense to use mupython officially. The pyb made immediate sense to me for the board. |
"Si quieres viajar alrededor del mundo y ser invitado a hablar en un monton |
Maybe I did not understand it right, but you are discussing that you want If not just stop reading here ;) Since the project is called micropython, I see no problem to call the
I guess other projects do similar. I believe there is no real benefit The only drawback using micropython as name would be that there is a fear However, if you believe you need to separate the module name from the Just a total different idea ;) Torsten On 1 January 2014 16:33, Hugh Wallace notifications@github.com wrote:
|
"Si quieres viajar alrededor del mundo y ser invitado a hablar en un monton |
Actually, as the title says, this ticket was opened to discuss solely the name of a binary executable file produced by checking out the source code from the repo, going to "unix" subdir, and running "make". Though yeah, people started to discuss 3 other things here too ;-). |
Ok in that case
and
import stm_io and all I/O assignments would be readily set for the micro python board Well guess this is getting OT ;) Greetings Torsten On 1 January 2014 23:48, Paul Sokolovsky notifications@github.com wrote:
|
Okay, let's keep this issue for it's original title, to discuss the binary that at the moment is unix/py. The board/hardware is now in a separate repository called pyboard. |
I vote for "micropython": this is a fine name, easy to read and remember and to google for.
|
Folks, how about "mipy" (pronounced "My-Pie")? It's brief, doesn't appear encumbered by existing use, and doesn't have any negative associations in any (human) language I know. I don't really want to be typing "micropython" every time I run it, and I don't think I'm alone in that! |
Considering the info David mentions, micropython should really be the name for the interpreter. No nonsense or shortening of the name and is likely what someone would first type into the terminal if they cannot remember exactly. Eventually this may make it's way into Debian/Ubuntu repositories (or at a minimum, a package provided at micropython.org) and the package should be named micropython. I.E. apt-get install micropython There are numerous other packages that work the same way. Just keep it simple. As for the length of the binary name, anyone wanting to do multiple runs should be using a terminal where pressing up brings up the last issued command. I type micropython once and edit the file I want to run accordingly. Like I mentioned before, create symbolic links for the shortened name(s) when it is determined. Typing the full micropython should "just work". All of the major OS support symbolic linking, if your still running XP, upgrade or use a batch script. |
In most cases, you won't be running 'micropython' directly at all; it'll be loaded on the embedded system where it's supposed to execute. In the other cases, tab completion exists ;-) |
micropython 💯 if project is called micropython and this repository is called micropython it just makes perfect sense to also call binary that way. its just intuitive everything else assumes something. if somebody finds it hard to type (which is funny since autocomplete exists since before i was born) there is always a possibility to create aliases... |
Are you sure it indeed exists? Open terminal on your Android phone and check if it indeed does. Wait, where's tab key at all on standard Android virtual keyboard? Command names are selected not for optimistic conditions where you have brain-computer interface and need just think about something to have it typed, but for conservative environment, where there's no history, no completion, modem is damn slow, touchscreen is resistive, miscalibrated, or broken, and yet you need to run it many times in row ;-). |
Quoting Paul Sokolovsky (2014-01-02 17:15:54)
i'm not saying its going to work for everybody. but it makes sense for Rok Garbas - http://www.garbas.si |
While I don't want to demote my own work (!), I must say that I didn't intend the unix/py version of Micro Python to be used by the general public as an alternative to CPython on the unix command line. Beyond microcontrollers, I can see it being useful in games for a scripting engine, and perhaps on minimal Linux builds (by minimal I mean 16MB RAM minimal). But if you are on a fully fledged unix system, why not use CPython? To answer my own question, perhaps your Python program is eating lots of memory and you need something a bit leaner (this has happened to me more than once). In that case Micro Python may be a good fit. This is getting a bit off topic, but I think answers to the above question (why use MP instead of CPython?) are needed to decide what to call the binary. I agree with @davidedb, that "micropython" is fool proof and future proof. I also agree with @pfalcon that unix commands are meant to be lean. Although, that's what "alias mp=micropython" is for :) |
Does for me, but then that's because I use specific apps to interface with a real unix system when I want to do real unix things. The instances where you'd have to invoke micropython by name on an otherwise unconfigured system multiple times in a row are so vanishingly rare that, honestly, I don't think it's that worrisome. Building a 'lean' command name for the unix port is somewhat nonsensical also as the unix port isn't actually the focus of this project--the microcontroller version's the focus; the unix port's just there for the convenience of devs testing out code. @dpgeorge has it entirely correct: if you're going to be using it on a 'nix system, then alias it to something useful for you. Every project does not need to be everything for everyone; attempting to cover every edge case leads to feature creep, which leads to large binaries, which leads to leaving the scope of this project entirely ;-p |
[OffTopic]
In the last version it also has the Windows logo key, and I can assure you Namaste... ;-) [/OffTopic] After reading this latest mails, I remove my vote from mupython (as I did "Si quieres viajar alrededor del mundo y ser invitado a hablar en un monton |
I, too, change my vote to a simple: "micropython" :) |
Here's my take: Indeed, if one writes an app to run on "full-fledged" system (4Gb, 100W power), then it makes no sense to spend time on anything else but writing the app and just use existing solutions like CPython. I'm personally more interested in Ubiquitous Computing, whose idea is to put exactly as much as needed processing power where it is needed. So, when I want to write simple webapp I want to use toolset which will allow me to scale down say to 16Mb RAM/4Mb ROM router system, even if I initially develop it on 4Gb/100W box. CPython doesn't scale down to those requirements (it simply won't fit in 4Mb). So, instead of using CPython, and then port it to MicroPython (and yes, it will require porting), I'd rather use MicroPython right away. And if I'd want to develop something useful for deeply embedded uPy system (I love the idea, it just needs to prove itself being really viable), I'd still prefer to do (big) part of development, testing, and debugging on a desktop system, because it's much more convenient (again, because using CPy for that will lead to unneeded surprises). So, everything looks like having a "desktop" version of MicroPython is good thing to enable full potential of it and make development more productive and convenient. And doing it right (avoiding naming conflicts, choosing good name) will allow more people to leverage it easily (ultimately by installing from a distro package). |
Then people should not have strong opinions about it (like "call the binary the same as the project, because I have tab completion and don't care if someone else doesn't"). Indeed, I'm surprised that this ticket caught so much attention - it was intended for those few who care about such marginal questions, other naming discussions should have happened is separate tickets. |
The binary... and the source code folder... Send from my Samsung Galaxy Note II
|
No, only the unix binary. If you have any suggestions regarding source code folder, please open separate ticket. |
I'd want to have the full word "python" in the name (eg not mpy). As already pointed out, upython, mpython, mupython are already taken. So, unless we want to clash with something existing / make some people unhappy, that really just leaves "micropython". |
Let's go for it! |
atmel-samd: Enable full urandom module from extmod. Closes #17.
Deploy build from travis to S3
extmod/vfs_lfsx.c: Fix a few minor error in vfs_lfsx
Rename fir.display to fir.draw
I wanted to write that "py" name is a bit too generic, and if every python-related project seized that name, there would be conflicts. Well, there're conflicts, from http://docs.python.org/3/whatsnew/3.3.html :
More info: http://docs.python.org/3/using/windows.html#launcher
So, it would be good idea to come up with a more unclashy name. IMHO, "upython" would be both consistent, clear to users and unique - and based on idea that "u" is common way to represent Greek letter "mu" for "micro"; "mpython" would mean "minipython". But even "mpython" is better than current "py".
And this is of course borders on the question raised in Kickstarter comments - on project shortname/nickname to use in context where full "MicroPython" is too long.
The text was updated successfully, but these errors were encountered: