ClojureDart icon indicating copy to clipboard operation
ClojureDart copied to clipboard

Clojure dialect for Flutter and Dart

Results 103 ClojureDart issues
Sort by recently updated
recently updated
newest added

The compiler fails when one of the cljd files is not readable during cljd compilation. This can happen because I compulsively save one by doing several small updates in a...

bug
papercut

Currently clojure functions compile to either classes or functions. Here I propose we get rid of emitting Dart functions and always compile to classes because: * Dart overcaptures https://github.com/dart-lang/sdk/issues/36983 *...

pondering-design

Magicasting is the process of generating adapter code when passing an argument whose runtime type is unknown is incompatible with the statically expected type. This is how for example a...

pondering-design

Lifting statements out of expressions is a concern through all the compiler `emit-*` functions. I propose we extract that concern into a distinct pass. Currently we have ``` text -(reader)->...

pondering-design

Dart has [conditional importing](https://dart.dev/guides/libraries/create-packages#conditionally-importing-and-exporting-library-files) to deal with web vs native. Clojure has conditional readers. How do we expose Dart affordances and can we do it with conditional reading?

enhancement

Dart has `await for` to iterate over streams, we don’t have anything like this. `.forEach` is less powerful (you can `await` inside an `await for` and it will pause/resume the...

enhancement

Currently `:bg-watcher` only allows for one binding: it can only listen to one stream/etc. This creates the need for utilities (like [switchmap](https://pub.dev/documentation/stream_transform/latest/stream_transform/Switch/switchMap.html)) to compose a single stream so as to...

`:bg-watcher` only allows one binding currently. Extending it to support multiple bindings with switchmap-like semantics (a change in a former binding trigger cancellation of later subscriptions) would simplify a lot...

enhancement

The problem is allowing a package (typically a CLJC package) to declare dependencies to a Dart package and this dependencies declaration to be preserved irrespective of the packaging and of...

We sometimes need to use different flutter libs when targetting different platforms. Dart allows [conditional imports/exports](https://dart.dev/guides/libraries/create-library-packages#conditionally-importing-and-exporting-library-files). Aleed on slack pointed to [cljs conditional reading](https://shadow-cljs.github.io/docs/UsersGuide.html#_conditional_reading).

enhancement