Ну, а слово JOINER ни о чём не говорит? Переведите с английского инфинитив и узнаете, почему он непечатаемый.
Join — значит присоединять, примыкать. Эти символы просто соединяют несколько глифов, как будто бы это один глиф. С той разницей лишь, что первый соединяет не предназначенные для соединения глифы, а второй — разделяет лигатуры из нескольких глифов, если они существуют.
Это, в основном, используется в арабском, всяких хинди, и прочих языках с вязью.
На кой, простите, чёрт вам арабский в именах переменных, вы можете объяснить?
Различать вам их нужно только, если вы пишете библиотеку для обработки арабского текста или иврита, например. В других случаях это знать не нужно.