It sounds like Fil-C combines the ergonomics of C with the performance of Python.
It might have a beautiful niche for safely sandboxing legacy code. But I don’t see any compelling reason to use it for new code. Modern GC languages are much more ergonomic than C and better optimised. C#, Java, JavaScript and Go are all easier to write, they have better tooling and they will probably all perform as well or better than Fil-C in its current state.
The ergonomics of C are excellent and the performance seems to be more like Java or C# than Python. The point is that you don't have to rewrite anything, so even the ergonomics of C don't matter.
Personally when I write C, I miss memory safety. And thread safety. I miss non-nullable types. I miss having a good way to return results. And generics. And tuples. And real enums (sum types). I miss having a sane build system. I miss having IDEs that just work with my projects. I miss having a well designed standard library. I miss being able to hit build and have it more or less work on every OS. I miss having a good package manager. And a sane macro language. I wish I didn't need to write header files. And I wish my header files didn't need to be parsed MxN times. I miss fixed integer types just being built into the language - like u8/u16/u32/... And real strings. And on and on.
C compilers are fast and mature, so that's a plus. And C binaries are tiny. I mean, C has aged surprisingly well given the language is 53 years old. But its a really old language. And it shows. I would never use it for a new project, because it seems worse in every way compared to languages like Zig, Odin and Rust.
> and the performance seems to be more like Java or C# than Python.
Alright, I was exaggerating. But I still don't want my linux workstation to feel like a big java program.
> The point is that you don't have to rewrite anything, so even the ergonomics of C don't matter.
As I said in another comment, I really agree with this. Fil-C makes a lot of sense to me if the goal is to simply take existing legacy software and recompile it in a more memory safe way. But I don't think that's how the developers see it. I think they want fil-C so rust developers shut up, and they can go back to writing C code forever and ever and ever.
It sounds like Fil-C combines the ergonomics of C with the performance of Python.
It might have a beautiful niche for safely sandboxing legacy code. But I don’t see any compelling reason to use it for new code. Modern GC languages are much more ergonomic than C and better optimised. C#, Java, JavaScript and Go are all easier to write, they have better tooling and they will probably all perform as well or better than Fil-C in its current state.