http://blog.atom.io/2014/07/02/moving-atom-to-react.html
http://blog.atom.io/2014/07/22/default-to-react-editor.html
Turns out that for the important things in an editor, React has a hard time optimizing as much. I'm a huge proponent of React, but the right tool for the right job is an important principle for the pragmatic.
https://github.com/atom/atom/pull/5624
I think since then, they've circled around to a much more restrictive and faster virtual dom. React could be made quite a bit faster (as proven by Inferno) without changing the API and moving to a more monomorphic, but verbose API could probably offer a big performance boost.
I've wondered in the past if the best solution wouldn't actually be to render the editor part as a canvas element and remove the normal DOM from the picture completely. VS Code did something similar with their console a few versions ago.
https://code.visualstudio.com/blogs/2017/10/03/terminal-rend...
EDIT: Looks like they've given some thought to canvas already (for the next go around). With webassembly, they could even offload to a nice C++ or rust library running and repainting a canvas element in another thread.
http://blog.atom.io/2017/06/22/a-new-approach-to-text-render...