Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Kent Recursive Calculator
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Use dmy dates|date=April 2022}} {{Infobox programming language | name = KRC | logo = | paradigm = [[Functional programming|Functional]] | year = {{Start date and age|1981}} | designer = [[David Turner (computer scientist)|David Turner]] | developer = | latest_release_version = | latest_release_date = | latest_test_version = | latest_test_date = | typing = | implementations = | dialects = | influenced_by = [[SASL (programming language)|SASL]] | influenced = [[Miranda programming language|Miranda]] | operating_system = | license = | website = }} '''KRC''' ('''Kent Recursive Calculator''') is a [[lazy evaluation|lazy]] [[functional language]] developed by [[David Turner (computer scientist)|David Turner]] from November 1979 to October 1981<ref>Dates in the commentary to the BCPL KRC source code for EMAS.</ref> based on [[SASL programming language|SASL]], with [[pattern matching]], [[guard (computer science)|guard]]s and [[ZF expression]]s<ref>{{FOLDOC|Kent+Recursive+Calculator}}</ref> (now more usually called [[list comprehensions]]). Two implementations of KRC were written: David Turner's original one in [[BCPL]] running on [[Edinburgh Multiple Access System|EMAS]], and Simon J. Croft's later one in [[C (programming language)|C]] under [[Unix]], and KRC was the main language used for teaching functional programming at the [[University of Kent]] at Canterbury (UK) from 1982 to 1985. The direct successor to KRC is [[Miranda programming language|Miranda]], which includes a polymorphic type discipline based on that of Milner's [[ML (programming language)|ML]]. ==References== {{Reflist}} ==Further reading== * ''[https://books.google.com/books?id=O_M8AAAAIAAJ&q=KRC Functional Programming and its Applications]'', David A. Turner, Cambridge U Press 1982. * {{cite book|last=Turner|first=D.A.|year=1981|chapter=The semantic elegance of Applicative Languages|title=Proceedings of the 1981 Conference on Functional Programming Languages and Computer Architecture |pages=85β92 |publisher=[[Association for Computing Machinery]] |isbn=0-89791-060-5}} ==External links== * [http://www.krc-lang.org KRC's home page] * [https://codeberg.org/DATurner/KRC Its open source interpreter for Unix], based on Professor Turner's 1982 version for EMAS {{Programming language}} [[Category:Functional languages]] [[Category:History of computing in the United Kingdom]] [[Category:University of Kent]] [[Category:Programming languages created in 1981]] {{compu-lang-stub}}
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Templates used on this page:
Template:Cite book
(
edit
)
Template:Compu-lang-stub
(
edit
)
Template:FOLDOC
(
edit
)
Template:Infobox programming language
(
edit
)
Template:Programming language
(
edit
)
Template:Reflist
(
edit
)
Template:Use dmy dates
(
edit
)
Search
Search
Editing
Kent Recursive Calculator
Add topic