I am assuming Rockwell/Allen-Bradley. If otherwise, please let us know.
The RET instruction is typically found at the end of a subroutine. In addition to returning parameters, the RET instruction tells the scan to return from the subroutine, back to the JSR that called that routine. But it isn't required to use the RET as the END rung performs this same action.
However, you could program the RET with an input condition and place it somewhere in the middle of your subroutine. If the input is true, the scan would return now, and the rest of the subroutine would not be scanned. If the RET rung were false, the scan would continue to the END and then return.
So yes, the RET can be used in a program without making use of return parameters.
OG