Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
history:start [2024/03/26 10:14] – rajit | history:start [2025/01/27 12:16] (current) – rajit | ||
---|---|---|---|
Line 23: | Line 23: | ||
define f (node a) | define f (node a) | ||
{ node p, q; | { node p, q; | ||
- | | + | prs { |
- | p -> q+ | + | |
- | | + | } |
- | a = p; | + | |
} | } | ||
f(); | f(); | ||
Line 35: | Line 35: | ||
* 1998-2003 Development continued at Caltech, including embedding CAST-like syntax within the Modula-3 language. This version was used to design the Lutonium processor. | * 1998-2003 Development continued at Caltech, including embedding CAST-like syntax within the Modula-3 language. This version was used to design the Lutonium processor. | ||
* 2004 A language that provided the same functionality as CAST but with syntax for new features (not implemented) was developed at Cornell by Rajit Manohar, based on lessons from using CAST for chip design. This was called ACT (version 0; 0 because the new features were not supported yet) | * 2004 A language that provided the same functionality as CAST but with syntax for new features (not implemented) was developed at Cornell by Rajit Manohar, based on lessons from using CAST for chip design. This was called ACT (version 0; 0 because the new features were not supported yet) | ||
- | * 2005-2008 ACT v0 was used by Achronix Semiconductor, | + | * 2005-2008 ACT v0 was used by Achronix Semiconductor, |
+ | < | ||
+ | defproc f (bool a) | ||
+ | { bool p, q; | ||
+ | prs { | ||
+ | p -> q+ | ||
+ | } | ||
+ | a = p; | ||
+ | } | ||
+ | f dummy; | ||
+ | </ | ||
* 2005-2010 An open-source (GPLed) implementation of an ACT v0 variant (called " | * 2005-2010 An open-source (GPLed) implementation of an ACT v0 variant (called " | ||
* 2005-2014: ACT was used to implement a large number of asynchronous chips, including microprocessors, | * 2005-2014: ACT was used to implement a large number of asynchronous chips, including microprocessors, | ||
Line 42: | Line 52: | ||
* 2012, Intel acquires Fulcrum Microsystems, | * 2012, Intel acquires Fulcrum Microsystems, | ||
* 2017, actual implementation of the new features started at Yale with a fresh implementation of the entire system. | * 2017, actual implementation of the new features started at Yale with a fresh implementation of the entire system. | ||
- | * 2018, Most features of ACT v1 ready | + | * 2018, Most features of ACT v1 ready. The example above would be defined as follows: |
+ | <code act> | ||
+ | defproc f (bool? a) | ||
+ | { bool p, q; | ||
+ | prs { | ||
+ | p -> q+ | ||
+ | } | ||
+ | a = p; | ||
+ | } | ||
+ | f dummy; | ||
+ | </ | ||
* 1/2019, first [[http:// | * 1/2019, first [[http:// | ||
* 4/2019, documentation effort initiated | * 4/2019, documentation effort initiated | ||
+ | |||
+ | |||
+ | ACT Language features (current version): | ||
+ | * 1/2019: support for production rules and netlist generation | ||
+ |