Channels ▼
RSS

Database

Typesafe Announces Scala Language Integrated Connection Kit


Typesafe has announced the Scala Language Integrated Connection Kit (Slick). Slick provides a framework for Scala programmers to connect to databases (both relational and NoSQL) and other data sources. It integrates databases into Scala, allowing stored and remote data to be queried and processed in the same way as in-memory data using ordinary Scala classes and collections. This enables full control of database access and data transfer.

NOTE: As an aide-mémoir for those not using the Scala general-purpose programming language, Scala seeks to integrate features of object-oriented and functional languages, so that code sizes are typically reduced by a factor of two to three when compared to an equivalent Java application.

Slick provides a front-end layer that integrates queries using ordinary Scala types. As a result, queries can be processed and validated at compile time, even in user-provided database backends. Using Slick, programmers can directly write database queries in Scala, benefitting from the static checking, compile-time safety, and compositionality of Scala. Slick also allows for writing SQL queries and executing them with an API optimized for Scala instead of using JDBC.

Key features of the Slick database connector include support for nested tuples to overcome the limitation of 22 columns per query, enabling better structuring of query results; updated query syntax tree for better compositionality; and separate layers for the AST and the front-end for simpler code generation.

"Slick, the database connector, will enhance the capabilities of Scala in multiple dimensions including web, parallel scalability across multiple cores, and horizontal scalability across multiple machines," said Michael Azoff, principal analyst with Ovum. "Typesafe's roadmap indicates the maturing of Scala."

Slick features an extensible query compiler that can generate code for different backends. The following database systems are directly supported for type-safe queries (using the query language or Scala code lifted to database queries):

  • Derby/JavaDB
  • H2
  • HSQLDB/HyperSQL
  • Microsoft Access
  • Microsoft SQL Server
  • MySQL
  • PostgreSQL
  • SQLite

"With more modern, efficient database query and access capabilities, Slick delivers a powerful framework for Scala programmers," said Mark Brewer, CEO of Typesafe. "With the introduction of our new database connector, we are making it even easier for developers to build next-generation distributed applications using Scala."


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 

Video