Software calculator
A software calculator is a calculator that has been implemented as a computer program, rather than as a physical hardware device. They are among the simpler interactive software tools, and, as such, they provide operations for the user to select one at a time. They can be used to perform any process that consists of a sequence of steps each of which applies one of these operations, and have no purpose other than these processes, because the operations are the sole, or at least the primary, features of the calculator, rather than being secondary features that support other  functionality that is not normally known simply as calculation. As a "calculator", rather than a computer, they usually have a small set of relatively simple operations, perform short processes that are not compute intensive and do not accept large amounts of input data or produce many results. Platforms. Software calculators are available for many different platforms, and they can be: History. Early years. Computers as we know them today first emerged in the 1940s and 1950s. The software that they ran was naturally used to perform calculations, but it was specially designed for a substantial application that was not limited  to simple calculations. For example, the LEO computer was designed to run business application software such as payroll. Software specifically to perform calculations as its main purpose was first written in the 1960s, and the first software package for general calculations to obtain widespread use was released in 1978. This was VisiCalc and it was called an "interactive visible calculator", but it was actually a spreadsheet, and these are now not normally known simply as calculators. The Unix version released in 1979, V7 Unix, contained a command-line accessible calculator. Simulation of hardware calculators. Calculators have been used since ancient  times and until the advent of software calculators they were physical, hardware machines. The most recent hardware calculators are electronic hand-held devices with buttons for digits and operations, and a small window for inputs and results. The first software calculators imitated these hardware calculators by implementing the same functionality with mouse-operated, rather than finger-operated, buttons. Such software calculators first emerged in the 1980s as part of the original Macintosh operating system (System 1) and the Windows operating system (Windows 1.0). Some software calculators directly simulate one of the hardware calculators, by presenting an image that looks like  the calculator, and by providing the same functionality. Software calculators on the Internet. There is now a very wide range of software calculators, and searching the Internet produces very large numbers of programs that are called "calculators". The results include numerical calculators that apply arithmetic operations or mathematical functions to numbers, and that produce numerical results or graphs of numerical functions, plus some non-numerical tools and games that are also called calculators. Many of the results are calculators that do not imitate or simulate hardware calculators, but that take advantage of the greater power of computer software to implement  alternative types of calculators. Software calculators are provided on the Internet which are customizable to use any conceivable algebraic expression. These user-customizable software calculators can also be used in conjunction with formula or equation creation capabilities so that the software calculator can now be created to perform all possible mathematical functions. No longer limited to a set of trigonometric and simple algebraic expressions, versions of the software calculator are now tailored to any and all topical applications. Examples. Numerical calculators. Every type of hardware calculator has been implemented in software, including conversion, financial, graphing, programmable and scientific calculators. Other  numerical calculators that do not imitate hardware calculators include: Window-based calculators. Window-based calculators present a dialog box that allows users to enter data, rather than data "and" operations, and they have a built-in formula that is automatically applied to this data. There are many examples of such calculators in finance, mathematics, science and other disciplines. Specialised calculators. There are software calculators that contain operations relevant to a specific application area and profession, including automotive, construction and electrical engineering. Non-numerical tools. Non-numerical calculators include life-style and scientific calculators: Some programs can generate a list of  astronomical events of certain types during a period of time, e.g. a year. Astronomical calculators can be also a part of a simulation software, displaying the sky at a certain time. Games. There are some software games that are called calculators, including: Related software packages. There are many interactive software packages that provide user-accessible calculation features, but that are not normally called "calculators", because the calculation features play only a supporting role rather than being an end in themselves. These include: Spreadsheets. Spreadsheets are not normally called "calculators" because their main purpose is to organise data in rows and  columns, and to automatically update the values of possibly many dependent cells when the value in another cell changes. The calculation features are only used in a supporting role to specify the values in some cells. Computer algebra systems. Computer algebra systems are not normally called "calculators" because their main purpose is to perform symbolic manipulation of mathematical expressions that can contain variables and complex operations, such as integration. However, the expressions can be basic calculations that do not use variables, and that are simply evaluated, as with a calculator. Databases. Databases are not normally called "calculators" because their main  purpose is data entry and storage, plus reporting against this data. The calculation features are only used in a supporting role to specify the values in some fields.