@@ -57,4 +57,53 @@ operating system kernels, or Wasm sandboxes.
57
57
58
58
Since all CGP features work only at compile-time, it provides the same
59
59
_ zero-cost abstraction_ advantage as Rust. Applications do not have to sacrifice
60
- any runtime overhead for using CGP in the code base.
60
+ any runtime overhead for using CGP in the code base.
61
+
62
+ # Current Status
63
+
64
+ As of end of 2024, CGP is still in _ early-stage_ development, with many
65
+ rough edges in terms of documentation, tooling, debugging techniques,
66
+ community support, and ecosystem.
67
+
68
+ As a result, you are advised to proceed _ at your own risk_ on using CGP in
69
+ any serious project. Note that the current risk of CGP is _ not_ technical,
70
+ but rather the limited support you may get when encoutering any challenge
71
+ or difficulty in learning or using CGP.
72
+
73
+ Currently, the target audience for CGP are primarily early adopters and
74
+ [ contributors] ( #contribution ) , preferrably with strong background in
75
+ _ functional programming_ .
76
+
77
+ # Getting Started
78
+
79
+ The best way to get started is to start reading the book
80
+ [ Context-Generic Programming Patterns] ( https://patterns.contextgeneric.dev/ ) .
81
+ You can also learn about how CGP works by looking at real world projects
82
+ such as [ Hermes SDK] ( https://github.com/informalsystems/hermes-sdk/ ) .
83
+
84
+ Also check out the [ Resources] ( /resources ) page to find out more resources
85
+ for learning CGP.
86
+
87
+ # Contribution
88
+
89
+ We are looking for any contributor who can help promote CGP to the wider
90
+ Rust ecosystem. The core concepts and paradigms are stable enough for
91
+ use in production, but we need contribution on improving documentation
92
+ and tooling.
93
+
94
+ You can also help promote CGP by writing tutorials, give feedback,
95
+ ask questions, and share about CGP on social media.
96
+
97
+ # Acknowledgement
98
+
99
+ CGP is invented by [ Soares Chen] ( https://maybevoid.com/ ) , with learnings and
100
+ inspirations taken from many related programming languages and paradigms,
101
+ particularly Haskell.
102
+
103
+ The development of CGP would not have been possible without strong support
104
+ from my employer, [ Informal Systems] ( https://informal.systems/ ) . In particular,
105
+ CGP was first introduced and evolved from the
106
+ [ Hermes SDK] ( https://github.com/informalsystems/hermes-sdk/ ) project,
107
+ which uses CGP to build a highly modular relayer for inter-blockchain communication.
108
+ (p.s. we are also hiring [ Rust engineers] ( https://informalsystems.bamboohr.com/careers/57 )
109
+ to work on Hermes SDK and CGP!)
0 commit comments