720 karma · joined January 25, 2015
In other words vectors may be scaled with little precision loss, or they may be scaled naively (render to bitmap and then scale the bitmap).
Having that in mind it is an irony that such broken law is the only thing that stands in a way of automatic and unattributed exploitation of people effort at scale. And it stands only on one leg at that :)
Sarcasm aside, this take is very disappointing. People leverage copyright for many purposes - copyleft, recognition, exclusiveness and many more.
It is a different story when coworker tells "boss" who is lazying around, and a different story when someone reports a serious misconduct towards other people. I'm not sure how to phrase it clearly, but generally I would not associate myself with former people, but I wouldn't mind the latter. Maybe one day they'd prevent me from doing something really terrible (given I wouldn't know better).
Say you have functions A and B that do roughly the same, so you refactor them into a function C and then redefine A() { C(); } B() { C(); }. So far good. But if B() is part of the API, some client could have defined auxiliary methods on B - normally they won't be called when C() is invoked directly. Moreover imagine that C() is also now part of the API and some new client could have defined auxiliary methods on C() - normally they won't be called when B() is invoked directly.
So either you need to specify that the old API is obsolete (so old programs doesn't work), or abandon the idea of exporting the new API. With a proxy generic function you may retain the old API and the new API at the same time without further duplicating functionality.
$ time ecl --eval "(quit)"
0.052 secs
$ time ecl --eval "(require 'asdf)" --eval "(quit)"
;;; Loading #P".../lib64/ecl-21.2.1/asdf.fas"
0.301 secs
There are two risks here (examples follow):
1. hostile requirements - "the agent won't feature adblockers", or "scraping without explicit website permission must be forbidden"
2. prohibitive requirements - "the agent implements protocols X, Y and Z and adheres to standards A, B and C" - all of these may be reasonable things, but en masse they may be too much work to carry by anyone but a reasonably big vendor
Additionally these criteria must be verifiable, so user can't basically modify the agent, because then the attestation is practically void.
If you manage to link musl libc statically then I'd greatly appreciate if you share your experience on our issue tracker or on irc (#ecl @ libera.chat), and if you have problems with it, you may ask in either for advice.
Even when you compile with "--disable-shared" you'll link against libc (but everything else will be statically linked). The function "--disable-shared" does not remove the compiler to native, it removes compilation of fasls to native. The reason for that is this:
- "native" fasls are shared objects under disguise linked against libecl (dlopen)
- they can't not link against libecl unless you want to statically link whole ecl with the fasl
Imagine that you call a PRINT function from the FASL. The symbol you will probably reference is ecl_print that is defined in ECL core runtime (usually in libecl.so, libecl.a/static-ecl).
The native compiler still can produce statically linked native binaries.
Now I'll get into current ECL developments - mind that this is not granted that this pan out as expected - perhaps I'll scrap whole work at some point:
I'm refactoring ECL compiler to have multiple frontends and backends (something like LLVM) - currently passes are far more coupled. With that I hope to have a better control over a generated code and we could use static analysis about which parts of CL are used, and in an opt-in manner we could allow minimal static builds that do not depend on full CL. Such static binaries could be really small.
[1] One of current GCL goals is to reach it
If I recall correctly Paul has a few applications in the Apple Store, but you'd need to ask him directly to confirm that.
> There’s an important notion to address here. Open source code on GitHub might be thought of as “open and freely accessible” but it is not. It’s possible for any person to access and download one single repo from GitHub. It’s not possible for a person to download all repos from Github or a percentage of all repos, they will hit limitations and restrictions when trying to download too many repos. (Unless there’s some special archives or mechanisms I am not aware of).