I've been thinking about how I name operations. Originally I chose to use names like `e->` and `e~<-o?` because I thought that using readable names for low-level operations like this would take away names from actual user code.
In hindsight, that seems like missing the point. Names aren't for avoiding name clashes. Packages are for avoiding name clashes. I'm intending to do packags at one point.
So now I wonder whether it would be sensible o rename everything so Poslin becomes more readable.
So, what now looks like this:
eo~~ ! eo~ !
e:
b* ! ~: ! [] !
e-> & <- !
b-> & <- !
& b<- ! e<- ! b<- !
would then look like this:
curr-op-env-bind ! curr-op-env !
env-get
new-binding ! dup-here ! [] !
env-lookup & push !
retrieve & push !
& store ! env-set ! store !
which is still awfully low-level code but, I think, way more readable.
Now I am wondering…
Should the operations operating on stacks be renamed or should they stay short (that is, operations like `<-`/`push`, `:`/`top`, `->`/`pop`, `_`/`drop`…)? `!`, `&`, `#`, `[]` and `<?>` definitely won't be changed.
I would need to rewrite the standard library. That doesn't bother me in the slightest and I guess nobody is eagerly waiting for me to finish this thing, so I don't see no reason why this should be a problem, but maybe I missed something.
Does somebody maybe think that the short names are actually more readable? I mean, `e~<-o?` is full of information when you know what the single characters mean. On the other hand it probably scares people before they even have a chance to try to understand.
Any opinions?