I read the "Programming Perl" by By Tom Christiansen, brian d foy, Larry Wall, Jon Orwant. There is the following text which I failed to understand (the exact places which I do not understand are marked with bold):
What you really want to know is which operators supply which context to their operands. As it happens, you can easily tell which ones supply list context because they all have LIST in their syntactic descriptions. Everything else supplies scalar context. Generally, it’s quite intuitive. If necessary, you can force scalar context onto an argument in the middle of a LIST by using the
scalar
pseudofunction. Perl provides no way to force list context in context, because anywhere you would want list context it’s already provided by the LIST of some controlling function.
For convenience I would like to formulate the following questions:
What does it mean LIST in the snippet?
What is syntactic description? (seems to be a some sort of documentation)
What does it mean the next text:
you can force scalar context onto an argument in the middle of a LIST