Gravar-mail: Assessment of JavaScript’s advanced composition mechanisms based on design patterns