Hacker News new | past | comments | ask | show | jobs | submit login

I also dislike language subsets. I feel that you run into the limitations of the subset real quick and figuring out the boundaries of the subset often feels like groping in the dark. Especially true for large languages like Python.

My most recent experience is with Numba, the python subset JIT, so it may be slightly different for micropython




What's the argument here? That it's difficult to learn to use a subset of a language because it is frustrating to locate the boundaries? Isn't it more frustrating to learn a completely unknown language?

Maybe what you're talking about is a combination of things. If you don't know what you can and can't do yet, then you're unlikely to recognize limitations. New languages also probably tend to have documentation that more completely specifies the language, versus subset languages where the implementation might be all there is to tell you what you can't do. In principle, a subset language is a new language that just happens to have familiar syntax and semantics.


In practice though, the familiar syntax and semantics often leads you to believe you can do things that you in fact cannot, until you face the "this feature is not supported" error or go read the documentation and search through the long list of unsupported features, then curse yourself and rewrite your code around the lack of said feature.

It's the gap between expectation and reality, coupled with the productivity hit of often using some feature, then having to rewrite without said feature, that leads me to dislike subset languages. It's often ultimately a different language with only syntactic similarity.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: