# Refal

> functional programming language oriented toward symbolic computations

**Wikidata**: [Q2626418](https://www.wikidata.org/wiki/Q2626418)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Refal)  
**Source**: https://4ort.xyz/entity/refal

## Summary
Refal is a functional programming language oriented toward symbolic computations. It was designed and developed by Valentin Turchin and first appeared in 1968. Refal (also written REFAL) is classified as a programming language with a functional programming paradigm and uses dynamic and strong typing.

## Key Facts
- Refal was created and designed by Valentin Turchin.  
- Refal's inception date is 1968.  
- Alias names include "Recursive functions algorithmic language" and "REFAL".  
- Official website: http://www.refal.net.  
- Refal is an instance of both a programming language and a functional programming language.  
- Programming paradigm: functional programming.  
- Typing discipline: dynamic typing and strong typing.  
- Freebase identifier: /m/03h1x74.  
- Library of Congress authority ID: sh85112182.  
- National Library of Israel J9U ID: 987007529480505171.  
- Microsoft Academic ID (discontinued): 2779067897.  
- Wikipedia title: Refal; available Wikipedia languages include bg, en, ja, ru, tg, uk.  
- Wikidata sitelink_count: 6.

## FAQs
### Q: What is Refal?
A: Refal is a functional programming language oriented toward symbolic computations, designed and developed by Valentin Turchin. It was first created in 1968.

### Q: Who created Refal?
A: Refal was designed and developed by Valentin Turchin.

### Q: When was Refal first introduced?
A: Refal's inception is recorded as 1968.

### Q: What typing discipline does Refal use?
A: Refal is described as using dynamic typing and strong typing.

### Q: Where can I find official information about Refal?
A: The official website listed for Refal is http://www.refal.net.

## Why It Matters
Refal occupies a distinct position as a functional programming language explicitly oriented toward symbolic computation. Originating in 1968, it represents an early approach to applying functional programming principles to problems that require manipulation of symbols rather than primarily numeric computation. As a language designed and developed by Valentin Turchin, Refal embodies concepts useful for expressing computations over symbolic structures in a functional style. Its typing discipline is described as both dynamic and strong, and it is cataloged in bibliographic and academic systems (Freebase, Library of Congress, National Library of Israel, Microsoft Academic). For researchers, language historians, and developers interested in the evolution of functional languages and symbolic processing techniques, Refal is a documented example of mid-20th-century work linking formal algorithmic thinking with symbolic computation needs.

## Notable For
- Being a functional programming language specifically oriented toward symbolic computations.  
- Having been created and designed by Valentin Turchin.  
- First appearing in 1968, making it an early language in the functional programming space.  
- Known also by the full name "Recursive functions algorithmic language" (REFAL).  
- Documented across bibliographic and academic identifier systems (Freebase, Library of Congress, National Library of Israel).

## Body
### Overview
- Name: Refal (also REFAL; "Recursive functions algorithmic language").  
- One-line description: Functional programming language oriented toward symbolic computations.  
- Developer / Designer: Valentin Turchin.

### History
- Inception year: 1968.  
- Creator: Valentin Turchin (listed as both developer and designer).

### Classification and Paradigm
- Instance of: programming language; functional programming language.  
- Programming paradigm: functional programming.  
- Wikidata description: functional programming language oriented toward symbolic computations.

### Typing and Language Characteristics
- Typing discipline: described as dynamic typing and strong typing.  
- The language is presented as oriented to symbolic computation rather than exclusively numeric or system programming.

### Identifiers and Resources
- Official website: http://www.refal.net.  
- Freebase ID: /m/03h1x74.  
- Library of Congress authority ID: sh85112182.  
- National Library of Israel J9U ID: 987007529480505171.  
- Microsoft Academic ID (discontinued): 2779067897.  
- Wikipedia title: Refal; available languages include bg, en, ja, ru, tg, uk.  
- Wikidata entity referenced in source material: Q328 (as used in references).  
- Wikidata sitelink_count: 6.

### Documentation and Metadata
- Wikipedia and Wikidata entries exist (wikipedia_title: Refal; wikidata_description matches language orientation).  
- The language appears in multiple bibliographic and authority control systems.

## Schema Markup
```json
{
  "@context": "https://schema.org",
  "@type": "Thing",
  "name": "Refal",
  "description": "Functional programming language oriented toward symbolic computations",
  "url": "http://www.refal.net",
  "sameAs": [
    "https://www.wikidata.org/wiki/Q328",
    "https://en.wikipedia.org/wiki/Refal"
  ],
  "additionalType": "functional programming language"
}

## References

1. [Source](https://github.com/JohnMarkOckerbloom/ftl/blob/master/data/wikimap)
2. Freebase Data Dumps. 2013
3. National Library of Israel Names and Subjects Authority File