Sapling Logo

Grammar Checking in Haskell

Haskell

Haskell is a popular programming language in industry and academia. It is purely functional, declarative, and statically typed.

Sapling: AI Writing Assistant

With Sapling, you can add grammar or spell checking functionality to an existing Haskell application.

This page demonstrates a quick way to integrate grammar and spell checking functionality into a Haskell application using Sapling's API. If you are not looking for a Haskell guide, click here for guides for other programming languages.

Sapling does not currently maintain a Haskell-specific SDK, but you can access the Sapling Grammar Checking HTTP API using any programming language that supports HTTP POST requests. An example is shown below.

Setup Steps

Haskell Grammar Check Quickstart

import Data.Aeson
import Network.HTTP.Client

main = do
  putStrLn "Hello"
  putStrLn "World"
  s  :: String_type
  url  :: String_type
  manager <- newManager defaultManagerSettings
  s = "{\"key\":\"API_KEY\", \"text\":\"Lets get started!\", \"session_id\":\"Test Document UUID\"}"
  url = "https://api.sapling.ai/api/v1/edits"
  nakedRequest <- parseRequest url
  request = nakedRequest { method = "POST", requestBody = body }
  response <- httpLbs request manager
  let Just obj = decode (responseBody response)
  print (obj :: Object)

Returned result:

{
    "edits":[
      {
          "end":4,
          "error_type":"R:OTHER",
          "general_error_type":"Other",
          "id":"aa5ee291-a073-5146-8ebc-c9c899d01278",
          "replacement":"Let's",
          "sentence":"Lets get started!",
          "sentence_start":0,
          "start":0
      }
    ]
}

Documentation

Addtional parameters and Sapling's full API documentation can be accessed here: https://sapling.ai/docs