title: Persistent programming language
text: # Persistent programming language
  
  * This computer science article is a stub. You can help Wikipedia by expanding it.
  * v
  * t
  * e
  
  Programming languages that natively and seamlessly allow objects to continue existing after the program has been closed down are called persistent programming languages. JADE is one such language.
  
  A persistent programming language is a programming language extended with constructs to handle persistent data. It is distinguished from embedded SQL in at least two ways:
  
  In a persistent programming language:
  
  * The query language is fully integrated with the host language and both share the same type system.
  * Any format changes required between the host language and the database are carried out transparently.
  
  In Embedded SQL:
  
  * Where the host language and data manipulation language have different type systems, code conversion operates outside of the OO type system, and hence has a higher chance of having undetected errors.
  * Format conversion must be handled explicitly and takes a substantial amount of code.
  
  Using Embedded SQL, a programmer is responsible for writing explicit code to fetch data into memory or store data back to the database. In a persistent programming language, a programmer can manipulate persistent data without having to write such code explicitly.
  
  The drawbacks of persistent programming languages include:
  
  * While they are powerful, it is easy to make programming errors that damage the database.
  * It is harder to do automatic high-level optimization.
  * They do not support declarative querying well.
  
  ## Examples
  
  * MUMPS
  * JADE
  * Caché ObjectScript
  