<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Alef_%28programming_language%29</id>
	<title>Alef (programming language) - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Alef_%28programming_language%29"/>
	<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Alef_(programming_language)&amp;action=history"/>
	<updated>2026-05-15T16:06:44Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Alef_(programming_language)&amp;diff=1405168&amp;oldid=prev</id>
		<title>78.146.52.238: fix grammar</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Alef_(programming_language)&amp;diff=1405168&amp;oldid=prev"/>
		<updated>2024-12-11T22:54:36Z</updated>

		<summary type="html">&lt;p&gt;fix grammar&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Short description|Concurrent programming language}}&lt;br /&gt;
{{Infobox programming language&lt;br /&gt;
| name                   = Alef&lt;br /&gt;
| logo                   = &lt;br /&gt;
| caption                = &lt;br /&gt;
| file_ext               = &lt;br /&gt;
| paradigm               = [[Compiled language|compiled]], [[Concurrent programming|concurrent]], [[structured programming|structured]]&lt;br /&gt;
| year                   = {{Start date and age|1992}}&lt;br /&gt;
| designer               = [[Phil Winterbottom]]&lt;br /&gt;
| developer              = &lt;br /&gt;
| latest_release_version = &lt;br /&gt;
| latest_release_date    = &lt;br /&gt;
| latest_test_version    = &lt;br /&gt;
| latest_test_date       = &lt;br /&gt;
| typing                 = [[Static typing|Static]], [[Strongly-typed programming language|strong]]&lt;br /&gt;
| implementations        = &lt;br /&gt;
| dialects               = &lt;br /&gt;
| influenced_by          = [[C (programming language)|C]], [[Newsqueak]]&lt;br /&gt;
| influenced             = [[Limbo (programming language)|Limbo]], [[Rust (programming language)|Rust]], [[Go (programming language)|Go]]&lt;br /&gt;
| operating_system       = [[Plan 9 from Bell Labs]]&lt;br /&gt;
| license                = &lt;br /&gt;
| website                = &lt;br /&gt;
| wikibooks              = &lt;br /&gt;
}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Alef&amp;#039;&amp;#039;&amp;#039; is a discontinued [[concurrent programming language]], designed as part of the [[Plan 9 from Bell Labs|Plan 9]] [[operating system]] by [[Phil Winterbottom]] of [[Bell Labs]]. It implemented the channel-based [[Concurrency (computer science)|concurrency]] model of [[Newsqueak]] in a [[compiler|compiled]], [[C (programming language)|C]]-like language.&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
Alef appeared in the first and second editions of Plan 9, but was abandoned during development of the third edition.&amp;lt;ref name=&amp;quot;alefref&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;3e-preface&amp;quot;/&amp;gt; [[Rob Pike]] later explained Alef&amp;#039;s demise by pointing to its lack of [[automatic memory management]], despite Pike&amp;#039;s and other people&amp;#039;s urging Winterbottom to add [[garbage collection (computer science)|garbage collection]] to the language;&amp;lt;ref&amp;gt;{{cite conference |first=Rob |last=Pike |url=https://www.youtube.com/watch?v=3DtUzH3zoFo  |archive-url=https://ghostarchive.org/varchive/youtube/20211213/3DtUzH3zoFo |archive-date=2021-12-13 |url-status=live|title=Origins of Go concurrency style |conference=OSCON Emerging Languages Camp |year=2010}}{{cbignore}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
also, in a February 2000 slideshow, Pike noted: &amp;quot;…although Alef was a fruitful language, it proved too difficult to maintain a variant language across multiple architectures, so we took what we learned from it and built the thread library for C.&amp;quot;&amp;lt;ref&amp;gt;{{cite web|last=Pike|first=Rob|title=Rio: Design of a Concurrent Window System|url=http://doc.cat-v.org/plan_9/3rd_edition/rio/rio_slides.pdf|access-date=8 March 2013}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alef was superseded by two programming environments. The [[Limbo (programming language)|Limbo programming language]] can be considered a direct successor of Alef and is the most commonly used language in the [[Inferno (operating system)|Inferno]] operating system. The Alef concurrency model was replicated in the third edition of Plan 9 in the form of the &amp;#039;&amp;#039;libthread&amp;#039;&amp;#039; [[Library (computing)|library]], which makes some of Alef&amp;#039;s functionality available to [[C (programming language)|C]] programs and allowed existing Alef programs (such as [[Acme (text editor)|Acme]]) to be translated.&amp;lt;ref name=&amp;quot;libthread&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example was taken from the Alef reference manual.&amp;lt;ref name=&amp;quot;alefref&amp;quot; /&amp;gt; The piece illustrates the use of the [[tuple]] data type.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
(int, byte*, byte) &lt;br /&gt;
func() &lt;br /&gt;
{ &lt;br /&gt;
    return (10, &amp;quot;hello&amp;quot;, &amp;#039;c&amp;#039;); &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void &lt;br /&gt;
main() &lt;br /&gt;
{&lt;br /&gt;
    int a; &lt;br /&gt;
    byte* str; &lt;br /&gt;
    byte c; &lt;br /&gt;
    (a, str, c) = func(); &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
* [[Communicating sequential processes]]&lt;br /&gt;
* [[Plan 9 from Bell Labs]]&lt;br /&gt;
* [[Go (programming language)]]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
{{Reflist|refs=&lt;br /&gt;
&amp;lt;ref name=&amp;quot;3e-preface&amp;quot;&amp;gt;{{cite book&lt;br /&gt;
 | title = Plan 9 Manual&lt;br /&gt;
 | section = Preface to the Third (2000) Edition&lt;br /&gt;
 | section-url = http://plan9.bell-labs.com/sys/man/preface3.html&lt;br /&gt;
 | publisher = Bell Labs&lt;br /&gt;
 | location = Murray Hill&lt;br /&gt;
 | date = June 2000&lt;br /&gt;
 | access-date = 2012-10-29&lt;br /&gt;
 | archive-date = 2015-02-05&lt;br /&gt;
 | archive-url = https://web.archive.org/web/20150205030100/http://plan9.bell-labs.com/sys/man/preface3.html&lt;br /&gt;
 | url-status = dead&lt;br /&gt;
 }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;alefref&amp;quot;&amp;gt;&lt;br /&gt;
 {{cite book&lt;br /&gt;
 | first = Phil&lt;br /&gt;
 | last = Winterbottom&lt;br /&gt;
 | chapter = Alef Language Reference Manual&lt;br /&gt;
 | title = Plan 9 Programmer&amp;#039;s Manual: Volume Two&lt;br /&gt;
 | publisher = AT&amp;amp;T&lt;br /&gt;
 | location = Murray Hill&lt;br /&gt;
 | year = 1995&lt;br /&gt;
 | chapter-url = http://doc.cat-v.org/plan_9/2nd_edition/papers/alef/ref&lt;br /&gt;
 }}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;libthread&amp;quot;&amp;gt;&lt;br /&gt;
 {{cite book&lt;br /&gt;
 | title = Plan 9 Manual&lt;br /&gt;
 | section = thread(2)&lt;br /&gt;
 | section-url = http://plan9.bell-labs.com/magic/man2html/2/thread&lt;br /&gt;
 | access-date = 2012-10-29&lt;br /&gt;
 }}&lt;br /&gt;
&amp;lt;/ref&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
* {{cite book&lt;br /&gt;
 | first = Bob&lt;br /&gt;
 | last = Flandrena&lt;br /&gt;
 | chapter = Alef Users&amp;#039; Guide&lt;br /&gt;
 | title = Plan 9 Programmer&amp;#039;s Manual: Volume Two&lt;br /&gt;
 | publisher = Bell Labs&lt;br /&gt;
 | location = Murray Hill&lt;br /&gt;
 | year = 1995&lt;br /&gt;
 | chapter-url = http://doc.cat-v.org/plan_9/2nd_edition/papers/alef/ug&lt;br /&gt;
 }}&lt;br /&gt;
* {{cite newsgroup&lt;br /&gt;
 | author = Phil Winterbottom&lt;br /&gt;
 | author-link = Phil Winterbottom&lt;br /&gt;
 | title = Plan9 VM&lt;br /&gt;
 | date = 1992-10-20&lt;br /&gt;
 | newsgroup = comp.os.research&lt;br /&gt;
 |message-id= 1c1denINN441@darkstar.UCSC.EDU&lt;br /&gt;
 | url = https://groups.google.com/group/comp.os.research/msg/a7dce2f02eb44ffd?&amp;amp;hl=en&lt;br /&gt;
 }}&lt;br /&gt;
&lt;br /&gt;
{{Programming language}}&lt;br /&gt;
&lt;br /&gt;
[[Category:C programming language family]]&lt;br /&gt;
[[Category:Concurrent programming languages]]&lt;br /&gt;
[[Category:Plan 9 from Bell Labs]]&lt;br /&gt;
[[Category:Programming languages created in 1992]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{prog-lang-stub}}&lt;/div&gt;</summary>
		<author><name>78.146.52.238</name></author>
	</entry>
</feed>