File tree Expand file tree Collapse file tree 1 file changed +36
-0
lines changed
Expand file tree Collapse file tree 1 file changed +36
-0
lines changed Original file line number Diff line number Diff line change 1+ # Please
2+
3+ An exploratory programming language.
4+
5+ ## Quick start
6+
7+ ``` sh
8+ git clone
[email protected] :mkantor/please-prototype.git
9+ cd please-prototype
10+ npm install
11+ npm run build
12+ echo ' {@runtime context => :context.program.start_time}' | ./please --output-format=json
13+ ```
14+
15+ ## What this repository is
16+
17+ ** This implementation of Please is a proof of concept** . There are plenty of bugs and missing
18+ pieces, and language syntax/semantics may change backwards-incompatibly on the way to an official
19+ release. This implementation is not particularly focused on performance, robustness, or developer
20+ experience—it's merely a place to experiment with ideas for the language. TypeScript was chosen
21+ because it's pretty good for rapid prototyping, but it's likely that another language will be used
22+ in a non-prototype implementation.
23+
24+ ## Current state
25+
26+ Enough pieces exist to write basic runnable programs. There is a type system, but it's not wired up
27+ in many places yet so mistakes often go unnoticed at compile time. The standard library is anemic,
28+ and it's not uncommon to encounter bugs in the compiler/runtime.
29+
30+ The current implementation of the runtime is an interpreter, but the plan is to eventually add one
31+ or more backends to allow building native executables.
32+
33+ ## What's next?
34+
35+ I'm focused on squashing compiler bugs and establishing solid foundations to build atop. Along the
36+ way I've been slowly fleshing out the type system and standard library.
You can’t perform that action at this time.
0 commit comments