On 12/08/2018 6:59 AM, Aruna Maurya wrote:
1. If it would have been C++, the above can be implemented by using the mmap() syscall to                  allocate memory from the heap. However, something that I am not able to understand in the idea description is 'runtime hooks'.


A runtime hook is a function that the compiler injects a call to, to perform some function. Like allocate a class.

By reimplementing a lot of these primitives, the compiler will be able to optimize them better e.g. inlining and removing dependencies on other runtime information.

2. Also as far as I can understand, this idea is about implementing the above from scratch, and not tweaking the existing codebase. Do let me know if I am wrong.

It is modifying existing druntime and with it dmd (frontend) after developing these building blocks.

This project is just an idea, you can set your own set of goals and scope in the proposal. For example, you may choose to rewrite the memory management stuff in libc in D and support it across Windows, Linux and OSX. Instead of dealing with integration into druntime/dmd.

Reply via email to