On Mon, Jun 19, 2017 at 07:29:46PM -0400, Steven Schveighoffer via Digitalmars-d-learn wrote: > On 6/19/17 5:45 PM, Moritz Maxeiner wrote: > > On Monday, 19 June 2017 at 21:35:56 UTC, Steven Schveighoffer wrote: > > > IIRC, Tango did not depend on libc at all. It only used system > > > calls. So it certainly is possible. > > > > How did they invoke those system calls? They are usually access via > > libc on POSIX systems, so you don't have to implement accessing e.g. > > vdso on Linux yourself. > > I may have misspoke. I mean they didn't depend on the library itself. > I think they do depend on the C wrappers. > > So for instance, they didn't use FILE *, but instead used > read/write/recv/send. > > I don't know what's involved in creating those wrappers, but I can't > imagine it's difficult to do with D (it's probably actually easier > than in C/assembly). [...]
The downside of that is that then we can no longer leverage the work done by libc authors to interface with that particular OS / platform. Meaning we have to maintain this low-level code ourselves, which includes potentially keeping up with OS-level changes that would otherwise be transparent had we used the libc wrappers. Sadly, we're not yet in the day when libd authors would do this for us with every new OS that comes out. :-D T -- Talk is cheap. Whining is actually free. -- Lars Wirzenius