On Wednesday, August 9, 2023 at 1:18:50 AM UTC+8, Kaz Kylheku wrote:
> On 2023-08-08,
Mut...@dastardlyhq.com <
Mut...@dastardlyhq.com> wrote:
> > On Tue, 8 Aug 2023 05:43:33 -0700 (PDT)
> > wij <
wyni...@gmail.com> wrote:
> >>On Tuesday, August 8, 2023 at 3:18:24=E2=80=AFPM UTC+8, Mut...@dastardlyhq.=
> >>com wrote:
> >>> On Mon, 7 Aug 2023 13:48:13 -0700 (PDT)=20
> >>> wij <
wyni...@gmail.com> wrote:=20
> >>> >libwy
https://sourceforge.net/projects/cscall/files/latest/download=20
> >>> >is based on GNU-Clib/syscall (mostly POSIX calls, on Linux machines), pr=
> >>ovides=20
> >>> >basic 'system objects' for C++ aprogramers to program in Object-Oriented=
> >> way.
> >>> You might want to look into the concept known as indentation. It makes co=
> >>de=20
> >>> a lot more readable.
> >>=20
> >> Show us an example!
> >
> > If you don't understand indentation there's little point showing you. A 3
> > year old could grasp the concept.
> The code in libwy is indented. He has documentation in the form of
> numerous man pages, and there are test cases.
>
> It doesn't compile for me; the ./configure script runs, but then
> when running make, there are C++ errors.
What kind of compiling errors?
The current libwy just tested on my machine. I am tire to test more in current stage of development.
> The LGPL license of this library is a problem because some modules
> consist of C++ inline functions. If anyone uses these inline functions,
> their own license must be GPL-compatible and their program as a whole
> has to be released under the GPL or LGPL.
I don't think inline functions are an issue, very weak in the court.
Anyway, I was intended copyright libwy Public Domain, but not sure it will do.
> In my experience with this sort of thing is that it's easier to roll
> what you need than figuring out something like this.
If you mean std::string,vector,list,unique_ptr,.... I can't agree more, they are trivial to me.
> It saves you a bit of typing that it's already written, but
> you're going to have to own the code all the same: debug it yourself,
> maintain it yourself.
>
> There has to be a compelling reason, like the thing is the best of its
> kind, widely used. Nobody is going to switch to a random, obscure C++
> library you've never heard of, let alone one with licensing issues.
>
> E.g. if I want an epoll wrapper or semaphore wrapper in C++, I can just
> spend one hour making it myself, and not deal with this third party
> stuff that I would have to maintain as if it were my own anyway--but
> have to deal with its naming conventions, formatting, and other
> stylistic and design decisions that are not mine.
Can C++ programmers spend several months or several years for such libraries?
I would say not likely. I've considered the same for the 20 years about the
'too easy' sort of things of the seemingly trivial 'wrapper' design. But the
true thing is far from so.
For a rough and simple summary, the API being looking like a thin wrapper is
DELIBERATE, so little burden is added for users (as you can know it and use it
just by a look). There are 'concept' in Unix-like OS and the POSIX API that is
invisible (many things need experience to understand) and no good to hide as
would be done in normal 'advanced' libraries, see ClassGuidelines.txt in /doc
directory for more details (REAME.TXT is the 20 years old original document,
I tried as possible not to modify it so I can evaluate the whole thing of the
project).
Yes, in some cases, serious applications will always want to implement their own class
or function. This is explicitly allowed and should be simple as doc'd in libwy library guidelines.