Do let me know if I have missed the point. This discussion is useful to me.

Reply to this note

Please Login to reply.

Discussion

redefining infix, postfix and prefix operators on anything other than value types is a bad game, as is macros - they make it so when reading the code you have to go through two things to remember instead of just one, and then spread that out to a whole project

i'd say the thing you missed is why make another language when there is already a pretty much perfect one?

for me, there is #bitcoin and then there is #golang and these are two things that really don't need to be changed without inordinately long processes of deliberation, testing and modeling

in fact, in both cases i am of the opinion that several things could be removed and nothing of value would be lost

i am warming up to type parameters though, they have a use in reducing the amount of casting between basically identical types (eg int and int64)

Type parameters. As in meta programming?

golang's "generics" are really just a logical extension of duck typing... if it can be inferred, then it is permitted if the type parameter specifies it

although i don't know yet what the ~ means in them yet, didn't read that in the docs yet but i've seen it in an "x" package

In D we have full blown metaprogramming. I don't use it all too heavily except in a few projects like serializers etc.

But it is great. I can write code that writes code.

I'm a compiler man, it's my craft.

So of course I would make my own language as I want to write in it.

yeah, it's a bit of a search for the holy grail... i can't deny i don't think about it... was one of the first things i did when i got my hands on a c compiler was to play with bison and yacc

I decided to do it all from scratch. As that is how I learnt at university. But this compiler has far surpassed that compiler 🤣🤣

AntiBison

AntiYacc

AntiLex

AntiANTLR

ProBased