Stratego Networking

Stratego -- Strategies for Program Transformation

stratego-net is a package you can use to implement CGI based services or access a service at a certain URL using HTTP.

Scenarios :

Client-side

Use stratego-net on the client-side to:

  • download an ATerm? from an URL
  • apply a transformation by invoking an ATermService

Both strategies are implemented in the http-client module. Use http-get-term to download an ATerm from the given URL. With xtc-http-get you can download any file. This strategy should be used in an XTC composition.

  <http-get-term> URL("http://www.foo.com/foo.aterm")

With xtc-http-transform you can invoke an ATermService to do some transformation. This strategy should be used with in an XTC composition. The http-transform operates on terms an can be used outside an XTC composition.

  xtc-io-wrap(
    xtc-http-transform(!URL("http://127.0.0.1/cgi-bin/calculator"))
  )

Server-side

TODO

Resources

Download and installation

The latest distribution is available at:

For tarballs configure the package with the locations of the dependencies:

  • --with-aterm
  • --with-sdf
  • --with-strategoxt
  • --with-curl

The daily distributions contain the latest of the latest developments, but if you really want to, the latest sources can be checked out using:

  svn checkout https://svn.strategoxt.org/repos/StrategoXT/stratego-net/trunk
Before you can configure the package as described above you have to run the ./bootstrap script.

See also