Read the comments - the distinction between a linked in driver and a port is an important one in Erlang, and is a concept that languages like Python/Perl/Ruby/Tcl etc... don't really have. Not that you can't do it in those languages, it's just that pretty much all C code gets directly linked in, or an external program gets executed, usually with a preference for the first.