Experimental Option<@T> types for arguments and return values.

 * But it makes code complicated but brings few benefit…
 * It will be rejected.