The Pylons (Python) Web Framework integrates Prototype and script.aculo.us in a manner very similar to Rails, making their functions available in templates (views) via Web Helpers.

Here’s an example of creating an Ajax.Updater form:

<%
  # This will call the `show` method of the query
  # controller with ``q`` and ``region`` as params.
  h.form_remote_tag(
    update={'success': 'result', 'failure': 'errors'},
    url='/%s/query/:q/?format=frag' % c.region_key,
    method='get',
    position='top',
    before='UI.beforeSearchQuery(this)',
    loading='UI.onQueryLoading(request, "Searching.\..");',
    loaded='UI.onQueryLoaded(request);',
    success='UI.onSearchSuccess(request);',
    failure='UI.onSearchFailure(request);',
    complete='UI.onSearchComplete(request);',
    html=dict(id='query_form', method='get', action='/%s/query' % c.region_key)
  )
%>