Comments (7)
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.
- since Rust and Julia have a similar embeddable library model this would help to understand what happen in Julia
- we have some ideas on a more modern way to deal with libraries, see: https://github.com/grame-cncm/faustideas#packaging-system-for-faust-libraries. We can possibly enrich this description there with some of your comments ?
from faustlibraries.
That looks great!
I don't think my comments would improve it, since you already mentioned Cargo as an inspiration.
from faustlibraries.
from faustlibraries.
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.
from faustlibraries.
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)
- Feature request: allow si.bus(0) HOT 1
- Error in moogLadder filter algorithm HOT 7
- Add links to source code from libraries docs pages HOT 2
- co.RMS_compression_gain_mono causes core dump HOT 4
- Deprecated examples documentation ?
- N dimensional tabulate HOT 23
- Can the enable primitive become a fully supported feature? HOT 1
- DX7 Library is incomplete
- compilation of Max 8 externals for Apple ARM64 -> ok HOT 1
- Naming conventions for amplitude analysis functions HOT 18
- Strange behaviour of ba.if with fractional conditions < 1. HOT 1
- add edge detection to signal library HOT 1
- I want to help HOT 1
- oscillators.lib : 488 : ERROR : syntax error, unexpected IDENT HOT 6
- invalid links in inline documentation HOT 2
- hoa encoder3D HOT 4
- typo "quantizer.lib" in stdfaust.lib HOT 1
- Make the behaviour of si.smoo SR-independent. HOT 3
- pm.flute_ui_MIDI is not in tune
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from faustlibraries.