[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: Working on issue 665, how to proceed?
From: |
lilypond |
Subject: |
RE: Working on issue 665, how to proceed? |
Date: |
Sun, 17 Nov 2019 18:13:33 +0100 |
> -----Oorspronkelijk bericht-----
> Van: David Kastrup <address@hidden>
> Verzonden: Sunday, November 17, 2019 5:20 PM
> Aan: address@hidden
> CC: 'Thomas Morley' <address@hidden>; 'Urs Liska'
> <address@hidden>; 'lilypond-devel' <address@hidden>
> Onderwerp: Re: Working on issue 665, how to proceed?
>
> <address@hidden> writes:
>
> >> -----Oorspronkelijk bericht-----
> >> Van: Thomas Morley <address@hidden>
> >>
> >> You use (oop goops).
> >> Is there need for it? This is a question not a hidden request!
> >> Speaking only for myself, I'm not familar with it. So reviewing your
> >> code will be difficult for me.
> >> We don't use it much so far.
> > I am a C ++ programmer and like to use classes. As you might have seen
> > I use several classes, and as far as I know goops is needed for that
>
> Goops is a framework for classes. It is a very, very generic framework which
> means that it doesn't really prescribe much of a programming style, and we
> don't have use of it established.
>
> Using methods and generics (or what Guile calls differentiating function
> implementations according to type) on Guile-1.8 has significant performance
> impact.
>
> There are some isolated modules using Goops that don't impact a lot of other
> stuff (I think a central part of the part combiner).
>
> In general "I am a C ++ programmer and like to use classes." is an iffish
> proposal
> for things interfacing with user programming and also gives some interplay
> with who will work with code.
>
> MusicXML conversion _is_ isolated from what users in general do. And it
> definitely warrants building an extensible framework for conversion. So using
> it _if_ it helps extending the conversion capabilities easily seems like a
> reasonable idea as long as one does not "infect" other code with generics
> (like
> overloading existing operators). The performance for MusicXML conversion
> itself does not seem critical.
>
> > I did use a lot of define-method, as it is easy this way to be type
> > save.
>
> I don't think the cost justifies the effort here. Scheme is not intended as a
> "type safe" language.
>
> --
> David Kastrup
David,
Thank for your input.
At the moment I decided to use Goops, I realized it should have performance
impact.
But it will (at least for me) speed up the development.
I am sure that all the work I am doing can be rewritten without using Goops
(Goops itself is also written without using Goops 😉 )
I am aware of the problems that can arise when I overload functions in other
modules, or worse operators.
I do think that when the musicxml conversion is working satisfactorily, we can
rewrite a part of the code to avoid classes and methods without too much effort.
In the mean time I start working with all of your suggestions, and after that I
go extend the conversion until the entire music part is converted.
I will continue to push to my own git repository, until I think the conversion
script is ready for a serious proposal.
And until that I will continue to ask the community for feedback.
At the same time I encourage you to use what I have written so far, and
appreciate your feedback
Jaap de Wolff
- RE: Working on issue 665, how to proceed?, (continued)
Re: Working on issue 665, how to proceed?, Thomas Morley, 2019/11/17
- RE: Working on issue 665, how to proceed?, lilypond, 2019/11/17
- Re: Working on issue 665, how to proceed?, Thomas Morley, 2019/11/17
- RE: Working on issue 665, how to proceed?, lilypond, 2019/11/17
- Re: Working on issue 665, how to proceed?, Thomas Morley, 2019/11/17
- Re: Working on issue 665, how to proceed?, Thomas Morley, 2019/11/17
- RE: Working on issue 665, how to proceed?, lilypond, 2019/11/17
- Re: Working on issue 665, how to proceed?, David Kastrup, 2019/11/17
- RE: Working on issue 665, how to proceed?,
lilypond <=
- Re: Working on issue 665, how to proceed?, Thomas Morley, 2019/11/17
- Re: Working on issue 665, how to proceed?, David Kastrup, 2019/11/17
- RE: Working on issue 665, how to proceed?, lilypond, 2019/11/18
Re: Working on issue 665, how to proceed?, Jacques Menu, 2019/11/17