Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: while loop grammar question



Being built-in doesn't stop something from being a command. `cd` is no less a command just because it has to be built into the shell to work! Anything you can run is a command, whether it's a binary executable somewhere on disk, a shell builtin, a script, a function, or an alias. 

Which makes the shell's idea of condition very powerful. It's kind of like how everything in C is an _expression_, including things that are valueless statements in other languages. The shell itself doesn't really have expressions as a concept; it just has commands. So everything is a command. And for convenience, it includes some commands which interpret their parameters as expressions. So you can have your cake and eat it, too.

Mark J. Reed <markjreed@xxxxxxxxx>


On Mon, Dec 9, 2024 at 20:13 Ray Andrews <rayandrews@xxxxxxxxxxx> wrote:



On 2024-12-09 13:47, Lawrence Velázquez wrote:
> They're built-in commands, as is zsh's own test/[.  Unlike test/[,
> they have to be implemented as syntax because of their special
> parsing rules.
A whole new province of things to think about.




Messages sorted by: Reverse Date, Date, Thread, Author