SNOBOL has been one of the leading network languages used on computer networks since the mid 1970s. The language has since been adapted for various purposes, from software that runs on UNIX and Windows systems to scripting systems used in network monitoring systems and web servers. Although the language is primarily intended for networking applications, SNOBOL also offers a variety of features to make programmers’ lives easier. Most importantly, however, SNOBOL provides a powerful set of tools for the programmer, especially when developing embedded systems.
The programming language is written in C, which is an open source language supported by a number of open source software projects. It is a highly flexible language, allowing the programmer to work with both strings and numerical data. This flexibility allows programmers to write code in the style of traditional FORTRAN or C++, or even in the style of other object-oriented languages like Java or C#. A large number of tools are available for programmers wishing to use SNOBOL in their software products. They include a standard set of command line utilities, as well as libraries that provide a variety of functions such as the ability to read from or write to memory.
SNOBOL has a built-in data type conversion mechanism, which allows programmers to quickly convert between various types of data, both in the form of strings and numerical data. There are several different types of conversions available for data such as date and time, as well as an extensive library of date formatting functions.
The language has several built-in facilities for managing files, both in the file and in memory. Files can be organized as a hierarchical file system, allowing the programmer to easily locate and retrieve information within the hierarchy, as well as for easy access to multiple files at once.
The language also supports various storage formats, including various types of network block and file based storage. Files stored in block based storage (e.g., FAT, FAT32, NTFS) are often stored on a FAT drive while larger files (e.g., Zip, Tar, GZip) are stored on NTFS drives.
The language also supports both read and write access to device drivers. Most of the drivers are supported by the Linux kernel, which means that programmers need only know a few simple commands to access these devices. There is also a special type of device driver called the SMIME device driver that is used to read and write messages to the devices.
SNOBOL has been widely used to design a variety of network applications, including a high-level network programming language, the NetBinding framework and a framework for creating secure network services, including authentication, authorization, access control, security and monitoring. SNOBOL developers have successfully used the language to build a wide range of software products, including software that works with routers, firewalls, and virtual private LANs (VPN).
SNOBOL programmers have also successfully used the language to design the programming languages PLY (prox) and BIN (binary numeric) as well as the embedded control language FORTH (a.k.a. FORTRAN). The language is also useful for the design of programs for networks such as the Internet.
The language is also used as a programming language for web servers, allowing for the creation of databases and other database-related facilities. It is not recommended that programmers who plan to use SNOBOL as a programming language to try to use the language directly on UNIX systems.