Python can be stretched much further than most people realize
Yes, but why? I'd rather use a language with syntax specifically designed for target application.
Well, the developer, an experienced ASIC designer, clearly feels that his syntax is superior to VHDL's. It wouldn't hurt to at least hear him out. I know I asked for "opinions" but it would be polite to read his arguments and respond on the merits (or demerits).
I read the sales literature and have seen two other approaches to abstracting HDL into something else. Seriously, my indent level determines whether I am in a particular statement block? I have been messing around with Python and it has a lot of neat features for strings, lists, tuples and dictionaries. I got started because I saw an assembler in one page of code (something like that). Intriguing! But the syntax is abominable. I much prefer the rigid block structure of languages like Pascal, Modula 2 and Oberon. I think I'll like Ada if my fingers don't fall off typing...
Were I to adopt MyHDL, I would need to learn two languages: MyHDL to write the stuff and VHDL to see if it compiled correctly. Do MyHDL and I agree on what I want to create?
One of the sales points was that I didn't need to know whether my register represented an integer or a vector; the compiler would figure it out for me. I don't want the compiler to assume anything! If my code doesn't uniquely define some logical function, flag it and make me write it again! VHDL does just that: I either write it correctly or I write it again.
On the separate issue of state machines, I don't see how you retain state without a state machine. Now, there are a number of ways to code state machines but you can't get sequential operation without maintaining state. In school we spent a lot of time minimizing state machines. Even in the days of the 2102 bit slices, minimizing states was important. Fortunately, there is only a minor penalty for having additional states (one more bit in the one-hot encoding) and the code becomes a lot more obvious. I don't see the point of obscuring the code in order to save a few flops when I have tens of thousands. I would rather the code tell a good story.
But my code is going nowhere. It is strictly for a hobby, there is no pressure to use a smaller device and I don't want to clever myself into a hole.