With today's experiment, we are going to be halfway through Dunaj. I hope 
you are finding these write-ups interesting and
that eventually, they will enable us to write even more powerful and 
performant Clojure programs. Thanks for all the response so far.

If you haven't read the previous write-ups yet, please do it now. The order 
was not chosen randomly and following experiment relies on the existence of 
previous ones.

Experiment #5: Reducers First

Reducers were introduced in Clojure 1.5 and in version 1.7, transducers 
will be added to the language. Reducers are however a completely optional 
feature and collection related functions still return (mostly lazy) seqs by 
default. Dunaj makes reducers a new default and deemphasizes the role of 
seqs by making them an optional feature for most of the core API.

Dunaj’s initial and the main vision is to create API that uses reducers by 
default and to provide additional reducible data sources and consumers of 
reducible collections. The overhaul of reducers and collection related API 
is Dunaj’s biggest experiment. Goals of this fifth described experiment are 
as follows:

- Transform collection related API into one that uses reducers by default
- Enhance reducers to support straightforward conversion to lazy sequences
- Provide full API support for transducers

You can read more about this experiment at http://www.dunaj.org 

Best,
Jozef


On Thursday, March 5, 2015 at 10:33:53 PM UTC+1, Jozef Wagner wrote:
>
> I'm happy to announce a project called Dunaj [1], which provides an 
> alternative core API for Clojure. Its main aim is to experimentally test 
> major additions to the language. 
>
> Dunaj /ˈdunaɪ/ is a set of core language experiments aimed to improve 
> Clojure language and its core API. It deals with language features that 
> require changes across different parts of Clojure and which cannot be 
> evaluated in isolation. Dunaj aims to bring Clojure even more towards 
> simplicity, consistency and performance. 
> It is intended to be used by regular Clojure developers, either for 
> application or library development.
>
> Dunaj was created to test 10 experiments that bring significant changes to 
> the Clojure language. As there is a substantial number of additions and 
> changes, I want to try a bit unconventional approach here. Before I'll 
> release the actual library, I will introduce Dunaj's experiments in a 
> series of individual posts. Every part states the motivation behind the 
> experiment, introduces changes and additions to the language and 
> demonstrates its intended use. If you do not want to miss any of this, you 
> may want to register for a mailing list at [1] or follow @dunajproject at 
> Twitter.
>
> -- Jozef Wagner
>
> [1] http://www.dunaj.org/ 
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to