Here is a list of the really cool features of Sling:
- totally RESTful: resources = resource tree ~= JCR + default HTTP methods already implemented
- thin server architecture: no need for complicated object models to get from URL to relational db storage
- resource thinking everywhere: server code can access resources (eg. include them) freely in the same way as requests are handled
- if JCR is not enough, the resource tree can be extended by code that resolves specific resources in a completely different way
- full filter pipeline, both for pre-request and post-request handling (and in both scripts and Java)
- support for many scripting languages (Javascript, Ruby, Python, etc.) - for quick development
- support for Java servlets - for IDE support
- more uptime through OSGi - updates at runtime!
- controlled software lifecycle management through versionized OSGi bundles
- import/export of resource data via JSON natively - great for AJAX apps