1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- (post
- :title "8sync 0.3 released"
- :date (make-date* 2016 12 19 17 00)
- :tags '("release")
- :slug "8sync-0-3-released"
- (p [Greetings, all!
- I'm pleased to announce
- ,(anchor [8sync 0.3]
- "ftp://ftp.gnu.org/gnu/8sync/8sync-0.3.0.tar.gz")!
- 8sync is a library for
- ,(anchor [GNU Guile] "http://www.gnu.org/software/guile/")
- which provides an asynchronous event loop and which uses the
- actor model as its primary concurrency synchronization mechanism.])
- (p [This release brings some major changes and improvements.
- The
- ,(anchor [8sync 0.2]
- "https://www.gnu.org/software/8sync/news/8sync-02-released-and-the-future-of-8sync.html")
- release announcement (less than two weeks ago!) anticipated some of
- these changes.
- In summary:])
- (ul (li [8sync is now Guile 2.2 only, in order to support...])
- (li [Suspendable ports!
- Writing networked code is considerably simpler in 8sync 0.3.
- Using Guile 2.2's
- ,(anchor [suspendable ports]
- "https://www.gnu.org/software/guile/docs/master/guile.html/Non_002dBlocking-I_002fO.html")
- tooling, when reading and writing from ports that are set to
- be nonblocking, 8sync's scheduler will automatically
- suspend to the scheduler and resume your code when network
- data is ready to be handled.])
- (li [Actors now have an "actions" slot which is automatically
- inheritable.])
- (li ["define-mhandler" is deprecated.
- Instead, message handlers are simple procedures, and a
- message's body can be any sort of Guile procedure argument
- list.]))
- (p [And more!
- See the
- ,(anchor [NEWS file]
- "http://git.savannah.gnu.org/cgit/8sync.git/tree/NEWS?h=v0.3.0&id=29745029f85cbc462bcfa0c75f92156ea2c6b494")
- for full details.])
- (p [What's next?
- If all goes well, 8sync 0.4 should be around the corner soon as well.
- You can expect the actor system to be moved to take center stage
- in the application and (finally!) some decent documentation.])
- (p [Happy hacking!]))
|