Support evaluating just an expression
Occasionally it can be useful to evaluate just an expression.
Currently, pkl eval -x requires to also specify a module.
A cross-platform workaround is pkl eval pkl:base -x.
However, it would be nice if pkl eval -x just worked.
Curious: what are the use-cases for this? I've found myself rarely ever wanting to run just an expression unless I'm testing something, and in those cases, I fire up the REPL.
I’m used to this feature from other scripting languages, hence requiring a module after -x feels surprising and unnecessary to me. That said, some of the ad-hoc scripting use cases I had in mind are better served by reading a source module from stdin (-). Perhaps @HT154 has something to add.
I do this because I'm REPL-averse (it's a personal failing, not Pkl's) and have a ton of jq muscle memory. Most of what I actually use this for are quick "how does Pkl handle XYZ?" checks that are probably served equally well by the REPL.
FWIW: you can also eval from stdin too. In that case, you need to provide a module, rather than an expression.
echo "foo = 1" | pkl eval -
I don't think this ask is unreasonable, but I'd like to wait for more feedback on the need for this before adding support for it.