top | item 36031727

(no title)

Atlas22 | 2 years ago

Not knocking Ki or any new language but what does it offer over existing systems? I see the criticism of a few languages on the website but they all boil down in reasoning to things like: garbage collection = bad, makefiles = bad. It also doesn't mention or demonstrate how Ki addresses the complaints. For example: if Ki doesn't do garbage collection or manual memory management, what does it do? Smart pointers/reference counting? How are circular references handled? (E.g. doubly linked list)

Would recommend removing the "Other" comparison as pretty much anything that can be said there is wildly inaccurate. Would also like to see comparison with Zig as it seems to have similar goals.

discuss

order

ki_|2 years ago

"It does not have any garbage collection and instead uses ownership combined with minimal ref counting to manage memory"

Because we only allow you to store values with ownership inside other objects, you cannot have a circular reference. It uses reference counting to know if something needs to be freed or not. But because we keep track of ownership and moved values we are able to run an algorithm that removes most of these counts.