4 ms·
For a beginner, compared to many languages out there, it is very intuitive. I taught many 1st/2nd year college students Python as their first foray into program
by ajford 7y ago
For a beginner, compared to many languages out there, it is very intuitive. I taught many 1st/2nd year college students Python as their first foray into programming, and it's flexibility and readability was a great way to get people in the door.
I won't defend beauty, as that's extremely subjective. I happen to find the whitespace significantly more intelligible than nested braces and parens, but that's me. I know plenty of people who strongly prefer to have braces and parens, so no argument from me.
Everyone loves to bring up performance as a huge drawback to Python, but it never holds up as a fundamental problem. Yes, that means for specific problems, it's not suitable. But the same can be said about many languages. Fortran is a horrible language to try and build a web framework on top of. Lisp is a bad language to write an OS in. Programming languages are tools, choose the right one for the job.
If you need blazing fast processing of numerical data, choose the proper tool. If you want fast iterative development with a broad set of packages and an active community, Python is a suitable tool.
I do agree that the growth in new languages is amazing, and greatly welcome them to the the toolbox that is programing and software development.
- ummonk 7y agoYou don't need significant whitespace to get rid of nested braces - see every language with a pascal-like syntax.
- earenndil 7y ago> Lisp is a bad language to write an OS in Beg to differ. Lisp machines were huge, back in the day, and there are still hobbyist projects like https://github.com/froggey/Mezzano https://github.com/froggey/Mezzano
- shadowgovt 7y ago> and there are still hobbyist projects Given that it's been decades, I think it may be safe to say "If Lisp were a good language to write an OS in, we'd see more than hobbyist projects and the Lisp machine companies would still be offering them." (The need for garbage collection caused a bit of a stumble for the Lisp machines on the market, if I recall correctly).
- AnimalMuppet 7y ago"It was done at least once" != "it was a good choice", though. There's a reason why most OSes are not written in Lisp, and it's not because the OS writers aren't smart enough to learn Lisp. It's not because they don't know it exists. It's because there are better languages to write an OS in.
- deleted 7y ago[deleted]
- kazinator 7y agoWriting an OS in Lisp basically means adapting or developing, and then growing, a Lisp implementation on the bare hardware. Someone would only do this if they are simultaneously interested in OS research R&D and Lisp implementation R&D. This is different from someone working on an OS in, say, C. They just pick some C compiler and use it, without becoming a C researcher and implementor. (They might bemoan some things happening in the development of the compiler they are using that affect their work, but not actually take that on.)
- AnimalMuppet 7y agoI'm not sure I agree with this. How much assembly would you actually have to write to bootstrap a Lisp? If I understand correctly, not much. And you could cross-compile from some other platform for as long as needed as you use the Lisp to write the OS.
- kazinator 7y ago