Code Monkey home page Code Monkey logo

Comments (7)

DBraun avatar DBraun commented on July 18, 2024 1

On the other hand, if you can't break things then you end up with too many things. The purpose of a good library versioning system would be to inform people that there are non-backwards-compatible breaks. People should be able to continue to access the older version if they opt into it.

from faustlibraries.

sletz avatar sletz commented on July 18, 2024

from faustlibraries.

magnetophon avatar magnetophon commented on July 18, 2024

That looks great!
I don't think my comments would improve it, since you already mentioned Cargo as an inspiration.

from faustlibraries.

josmithiii avatar josmithiii commented on July 18, 2024

from faustlibraries.

magnetophon avatar magnetophon commented on July 18, 2024

Hi Julius,

I agree backwards compatibility is very important, that's why I brought this up.
I was just thinking aloud on how to best achieve it.

I can see the advantage of making a new name any time a breaking change is introduced.

On the other hand: sure, names are cheap, but if you can't find what you need, you might as well not have it.

There's a fine and subjective balance there:
I think it makes sense to have lot's of ways to generate a sine wave, since each has it's own advantages and disadvantages.
I don't hink it is a good user experience to have tons of legacy functions cluttering things up.
So far it's not too bad, but eventually there will be more legacy code than current code.

Cheers,
Bart.

from faustlibraries.

josmithiii avatar josmithiii commented on July 18, 2024

from faustlibraries.

magnetophon avatar magnetophon commented on July 18, 2024

I am not worried about API bloat from the creation of new names, because that's already out of control to the point that I think a new set of small, focused, downstream libraries is needed.

What you call "a set of focused libraries" is at the core of what I'm talking about.
As far as I'm concerned, they do not need to be small, as long as they are well organized.
Part of that organization should be in terms of functionality and part of it should be in terms of time/version.

As far as I can tell, that is also what the faustideas link is talking about.

from faustlibraries.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.