20,741
edits
| Line 90: | Line 90: | ||
By focusing on updating the garbage collector, the FlightGear project can avoid repeating these mistakes and make significant improvements to the performance and usability of the simulator without undertaking a massive and risky overhaul of the scripting engine. | By focusing on updating the garbage collector, the FlightGear project can avoid repeating these mistakes and make significant improvements to the performance and usability of the simulator without undertaking a massive and risky overhaul of the scripting engine. | ||
Reworking an existing mark/sweep collector to become generational or incremental is likely to be superior to integrating a new scripting language for several reasons. First, changing the garbage collector would involve modifying the existing code base, but the overall structure and organization of the code would remain the same. This means that the existing code and scripts could continue to function without requiring significant changes or porting. | |||
In contrast, integrating a new scripting language would require significant changes to the code, as well as the creation of new interfaces and support for existing scripts. This would likely require a greater amount of time and manpower, as well as a higher level of expertise and familiarity with the new language. | |||
Additionally, implementing a new scripting language would introduce compatibility and interoperability issues, as the existing code and scripts would need to be adapted to work with the new language. This could potentially lead to conflicts or errors, and would require careful testing and debugging to ensure that the existing code continues to function correctly. | |||
On the other hand, reworking the garbage collector to be generational or incremental would likely provide significant performance benefits, as these types of collectors are generally more efficient and effective at managing memory. This could result in improved runtime performance and overall system stability, without requiring significant changes to the existing code base. | |||
Overall, while both options would involve a significant amount of effort and expertise, reworking the existing garbage collector is likely to be the more practical and efficient choice, given the existing code base and the resources available. | |||
=== Nasal in FlightGear === | === Nasal in FlightGear === | ||