Language Comparison Calculator
This tool accompanies a blog post about why we chose Rust for mobile
development at FullStory. Each row
represents one of the criteria we used for evaluating programming languages. It works
like a spreadsheet, you can double-click any cell to change the value and
update the calculated scores.
Criteria Descriptions
- Familiarity:
Did we have existing experience with the language or would we need to
train engineers or hire new engineers to develop in it?
- Learning Curve:
How easy would it be for developers to learn this as a new language?
- Interference:
Would use of the language in one library interfere with the use of the
same language (or a different language) in our customer’s applications,
including other libraries they may already be using?
- Performance: What’s the average performance of code written in this language?
- Size:
What’s the size impact of this language on the framework we would
deliver for our customers?
- Thread Safety: How well does this language handle thread safety?
- Memory Safety: How well does this language handle memory safety?
- Memory Control:
What degree of control over memory allocation does this language
provide?
- Flatbuffers:
How easy is it to write code in this language that works with
flatbuffers? How mature and optimized is the flatbuffer backend for this
language?