The Dart side
Packages that are Dart rather than ClojureDart, and are not Flutter.
Why this is a separate tree
frq_core is the binding to the Nim core in nim/. It is dart:ffi and
dart:convert and nothing else, and keeping it out of flutter/ buys two
things:
- It tests on the plain Dart VM.
flutter/pubspec.yamldepends on the
Flutter SDK, sodart pub getcannot resolve it at all — anything living
there needs a Flutter toolchain to run one assertion about a string. This
package resolves and tests in a second.just test dart. - It says which way the dependency goes. The Flutter app depends on this
by path. Nothing here may depend on Flutter, and if that ever becomes
tempting the thing being written belongs on the other side of the line.
Why Dart
The binding was ClojureDart for exactly one commit, which is how it got its
own README section. Writing it in the language being removed meant fighting
generic interop — lookupFunction takes two type arguments — for a file that
is pure marshalling. In Dart it is a typedef.
The ClojureDart is all gone now, and the shape it left is the one to keep:
Nim owns the rules, Dart owns the platform.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|