From b4d6b2715133f6361353c25e4bdc0b712025ca5c Mon Sep 17 00:00:00 2001 From: Filip Hracek Date: Thu, 1 Dec 2016 16:34:42 -0800 Subject: [PATCH] Change order of rationale for choosing Dart MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit There is evidence that people assume performance was the only reason why Flutter chose Dart. Let’s counter that by ordering the relevant FAQ answer differently. --- faq.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/faq.md b/faq.md index f1129f08964..1162a8b1971 100644 --- a/faq.md +++ b/faq.md @@ -367,13 +367,6 @@ virtual machine are implemented in C/C++. The primary criteria we used to pick a programming language were the following: -* _Predictable, high performance_. With Flutter, we want to empower developers - to create fast, fluid user experiences. In order to achieve that, we need to - be able to run a significant amount of end-developer code during every - animation frame. That means we need a language that both delivers high - performance and delivers predictable performance, without periodic - pauses that would cause dropped frames. - * _Developer productivity_. One of Flutter's main value propositions is that it saves engineering resources by letting developers create apps for both iOS and Android with the same codebase. Using a highly productive language @@ -385,6 +378,13 @@ The primary criteria we used to pick a programming language were the following: object-oriented languages. While we could use a non-object-oriented language, this would mean reinventing the wheel to solve several hard problems. +* _Predictable, high performance_. With Flutter, we want to empower developers + to create fast, fluid user experiences. In order to achieve that, we need to + be able to run a significant amount of end-developer code during every + animation frame. That means we need a language that both delivers high + performance and delivers predictable performance, without periodic + pauses that would cause dropped frames. + * _Fast allocation_. The Flutter framework uses a functional-reactive style programming model, whose performance depends heavily on the underlying memory allocator efficiently handling small, short-lived allocations. The