Often for security reasons I want to limit certain address parameters to non-contract addresses for certain functions in my contracts, ie. there are no code stored on the addresses passed in as function parameters or as msg.sender, so to make sure the addresses are not some attack contracts that may try to exploit some re-entrancy vulnerabilities or conditionally congest the Ethereum network, etc. etc.
With solidity it seems the current de-facto standard way is to use inline assembly that checks if there are code stored on the address. Since Vyper has no inline assembly, is it possible for a Vyper contract to check if certain address parameters and/or the transaction sender are contracts or not?