What is Splint?

The Secure Programming Group within the Department of Computer Science at the University of Virginia is charged with both the creation and continual enhancement of Splint, a static analysis tool. Leading this initiative is David Evans, who is also the primary developer of the project. The initial concept of memory bounds checking was introduced by David Larochelle, while University of Virginia students such as Chris Barker, David Friedman, Mike Lanouette, and Hien Phan made notable contributions to the project's advancement. Splint is essentially an evolution of LCLint, a tool that emerged from a collaborative research project involving the Massachusetts Institute of Technology and Digital Equipment Corporation's System Research Center. David Evans also played a pivotal role as the chief designer and developer of LCLint. The foundational idea for a static checking tool that could pinpoint inconsistencies between LCL specifications and their C implementations was conceived by John Guttag and Jim Horning. Their expertise and innovative ideas were instrumental in shaping both LCLint and its successor, Splint, thereby establishing a strong framework for developing tools that significantly improve software reliability and security. This collaborative effort highlights the importance of interdisciplinary teamwork in addressing complex programming challenges.

Pricing

Free Version:
Free Version available.

Screenshots and Video

Get Started

Company Facts

Company Name:
University of Virginia
Date Founded:
2007
Company Location:
United States
Company Website:
splint.org

Product Details

Deployment
SaaS
Training Options
Documentation Hub
Support
Web-Based Support

Product Details

Target Company Sizes
Individual
1-10
11-50
51-200
201-500
501-1000
1001-5000
5001-10000
10001+
Target Organization Types
Mid Size Business
Small Business
Enterprise
Freelance
Nonprofit
Government
Startup
Supported Languages
English

Splint Categories and Features

Static Code Analysis Software

Analytics / Reporting
Code Standardization / Validation
Multiple Programming Language Support
Provides Recommendations
Standard Security/Industry Libraries
Vulnerability Management

Static Application Security Testing (SAST) Software

Application Security
Dashboard
Debugging
Deployment Management
IDE
Multi-Language Scanning
Real-Time Analytics
Source Code Scanning
Vulnerability Scanning