Hi Jacques, I split my replies to address different aspects separately.
This one about scheme/guile Am Mo., 19. Okt. 2020 um 08:40 Uhr schrieb Jacques Menu <imj-muz...@bluewin.ch>: > Some aspects of the current state of the Lily implementation are a bit > saddening: > - Scheme is not easy to read nor write for most users, who can > fortunately get help from the very useful and active users group; > - the extensive use of Scheme code in the implementation is very > flexible and powerful, but implies performance limitations; > There have been very interesting discussions about all this at the Salzburg > conference last January, which lead me to dream of things being done another > way in an ideal world: > - switch to another, easier to read and write extension language. > Someone suggested Lua, for example, which would be a good candidate it seems; > - rely more on C++ in the implantation for speed, keeping the > extension language mainly for users in their files; Doing more in C++ will probably speed up, though then this C++-functionality is not longer accessible for the user. Unless you provide entrance-hooks in said C++-code which probably will lower speed again. Currently the melange of scheme-guile/C++ is very close. Switching to another extension language will mean to rewrite mostly anything, loosing a plethora of user-code like in oll and LSR and on this list. Furthermore, speaking only for myself, I'm not a programmer, I have not even owned a computer for the first three decades of my life. After discovering LilyPond I learned guile to let LilyPond do what I want it to do. This was work, yes, and I'm still learning. Though, I will not have the energy and motivation to learn a different language to extend LilyPond. Imho, the main problem users have with guile in LilyPond is not guile itself, but the poorly documented interplay between them. Cheers, Harm