Python/Unix Hybrid Demoed at PyCon (xon.sh)
A new shell "combines the Python language with features of Bash Unix and the fish and zsh shells," according to InfoWorld. An anonymous reader writes: Pronounced "conch," but spelled Xonsh, it runs on Linux, Windows, and Mac OS X systems, bringing Python libraries to the command line -- for example, the ability to use regular expressions when globbing files. "The first thing you'll notice about Xonsh is that it's really meant to be used as a general-purpose shell," the lead developer explained in a presentation at PyCon. "But on the other hand, it really is Python, so you can do things like add two numbers together."
They're describing it as "a Python-ish, BASHwards-looking shell language and command prompt...a superset of Python 3.4+ with additional support for the best parts of shells that you are used to, such as Bash, zsh, fish, and IPython...the superglue that bonds Python to a command-line interface and other shells."
They're describing it as "a Python-ish, BASHwards-looking shell language and command prompt...a superset of Python 3.4+ with additional support for the best parts of shells that you are used to, such as Bash, zsh, fish, and IPython...the superglue that bonds Python to a command-line interface and other shells."
It's cleverly named "conch", like the history of other shells (Korn shell, Bourne Shell, Bourne Again Shell (BASH), C Shell). I kinda wonder why there isn't a Taco Shell....
This is awesome! Wait, it's Python 3?
NOOOOOOOO
Why is the title of this article "Python/Unix Hybrid Demoed at PyCon" when it is a Python/Bash hybrid? Bash != Unix
Unix is not a shell (if it were, we would not need shells) and Xonsh/bash/Python are not operating systems.
Many people know that Perl is spelled "perl" and not pearl, but a lot of people don't know it's pronounced "Gob gipple fish waddle". So if you have been wondering while real perl monks ignore you when you ask a question about perl now you know.
Seriously, if you want a shell with magic powers just use perl. it's exactly what it was originally built for. It is wood chipper to pythons battery powered hedge trimmer when it comes to sysadmin tasks. It's the ideal sys admin and glue language.
Some drink at the fountain of knowledge. Others just gargle.
What is it with all this "it's spelt this way, but pronounced that way" stuff?
Just give it a not-so-clever name nobody cares.
Hipsters. As indicated by them taking the effort to call out "Pun in name" as being a distinguishing feature.
I am Slashdot. Are you Slashdot as well?
is "Bash Unix"?
I'm only pissed that they didn't but in-line ASM in there too :-(
1. What is so awesome about adding two numbers in the shell?
2. In any case, bash can do it too -- try echo $((15+7)).
3. One of the selling points of bash is that it needs to be fast for power users, so it uses cd instead of change_directory(). One of the selling points of Python is that readability counts, so it would choose change_directory() over cd. How do you plan to reconcile the two approaches?
My first program:
Hell Segmentation fault
How about NO?
This is yet another example of stupidity in the open source community. You don't get to define how a word sounds. The way you write it defines how it's said.
And even if you say "Xonsh", it sounds stupid anyway.
There's a reason people don't use "GIMP" in businesses. Nobody can go see his boss and asks to replace Photoshop by "GIMP".
Like PEP 8 clearly says,
Use 4 spaces per indentation level.
That's it. That's all there is to it. It's simpler and clearer than the rules for just about every other programming language out there.
Anyone who can't handle using 4 spaces is a lost cause.
I develop in python, java, and objective-c... you know what I hate more then python? Putting parenthesis around every single conditional statement. Once you work in python for awhile and go back, you start to notice how many brackets there are in the other languages.
Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
Let me rephrase that: if someone can't keep indentation straight, especially with the fact that an editor is doing most of the work anyway, I wouldn't want them checking in code for any language regardless of whether the white space was syntactically significant or not.
yes, and I meant to say brackets. Am I not allowed to increase the scope of my comment in the next sentence?
Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.
They clearly define the block no matter how you format it.
More than once I've seen a python program where someone has accidentaly deleted tabbed whitespace on a end line in a block and moved that line into the outer block and of course python says nothing. But now the program is broken. Try removing a bracket in C/C++/java and see what happens.
Whitespace as a block delimiter is a retarded idea, always has been, always will be.
Yeah I can't really get that excited about a programming language either way. I just use the tool for the job.
Laws are rules for the court, but merely a bottom bar to hit for life. Think beyond laws in your actions always.