Skip to content

Commit b200212

Browse files
authored
Merge pull request #63 from behemehal/dev
v0.5.5 Major Release
2 parents 580a7f5 + 77ccb9a commit b200212

78 files changed

Lines changed: 3239 additions & 1338 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.vscode/launch.json

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
{
88
"type": "lldb",
99
"request": "launch",
10-
"name": "Debug executable file",
10+
"name": "Debug compiler",
1111
"cargo": {
1212
"args": ["build", "--bin=elliec", "--package=ellie_engine"],
1313
"filter": {
@@ -19,15 +19,13 @@
1919
"compile",
2020
"${workspaceFolder}/test_dir/test.ei",
2121
"--allow-panics",
22-
"-i ${workspaceFolder}/test_dir/ellie.bin=${workspaceFolder}/lib/",
23-
"--"
2422
],
2523
"cwd": "${workspaceFolder}"
2624
},
2725
{
2826
"type": "lldb",
2927
"request": "launch",
30-
"name": "Debug executable (no std) file",
28+
"name": "Debug compiler with (ellieStd)",
3129
"cargo": {
3230
"args": ["build", "--bin=elliec", "--package=ellie_engine"],
3331
"filter": {
@@ -37,7 +35,7 @@
3735
},
3836
"args": [
3937
"compile",
40-
"${workspaceFolder}/test_dir/test.ei",
38+
"${workspaceFolder}/Ellie-Standard-Library/lib/lib.ei",
4139
"--allow-panics",
4240
"--"
4341
],

CHANGELOG.md

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,15 @@
11
# Changelog
22

3-
# v2.0.0
4-
- Change cli options and behaviour
3+
# v0.5.5
4+
5+
- Parser v0.3.1
6+
7+
- Fix unresolved return type [05a1697137d8f1eed30b833cc86149646c6b344b](https://github.com/behemehal/Ellie-Language/commit/05a1697137d8f1eed30b833cc86149646c6b344b)
8+
- Implement getter & setter [48ff89ad3e159f175bf7f4435caf4e47605719bc](https://github.com/behemehal/Ellie-Language/commit/48ff89ad3e159f175bf7f4435caf4e47605719bc)
9+
- Fix faulty compiling sequence [931c9ffa930a19c42ad5186554ffafe18bdf2425](https://github.com/behemehal/Ellie-Language/commit/931c9ffa930a19c42ad5186554ffafe18bdf2425)
10+
11+
- Tokenizer v0.2.2
12+
- Fix cursor issues [3ea4d25726beae6fcecb00c477358cc6989055a3](https://github.com/behemehal/Ellie-Language/commit/3ea4d25726beae6fcecb00c477358cc6989055a3)
13+
- [TECHNICAL] Save function's parameter name and type cursor positions separately [5ab7849dd09407baea6a39a47803a3c6e953314b](https://github.com/behemehal/Ellie-Language/commit/5ab7849dd09407baea6a39a47803a3c6e953314b)
14+
- Fix the situation that ret cant be void. [97e877e5d08ca800e1c3c0394e09a158276a2d50](https://github.com/behemehal/Ellie-Language/commit/97e877e5d08ca800e1c3c0394e09a158276a2d50)
15+
- [Major] Fix cursor issues with cli. [3ea4d25726beae6fcecb00c477358cc6989055a3](https://github.com/behemehal/Ellie-Language/commit/3ea4d25726beae6fcecb00c477358cc6989055a3)

Cargo.toml

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "ellie_engine"
33
version_code = "BeautifulTropicalFish"
4-
version = "0.5.2"
4+
version = "0.5.5"
55
authors = ["Ahmetcan Aksu <ahmetcanaksu@behemehal.net>", "Behemehal <info@behemehal.net>"]
66
edition = "2021"
77
license-file = "LICENSE"
@@ -16,12 +16,13 @@ regex = { version = "1.1.7", optional = true }
1616
bincode = { version = "1.0", optional = true }
1717
clap = { version = "3.1.1", optional = true }
1818
clap_complete = { version = "3.0.0", optional = true }
19-
ellie_core = { path = "core", version = "0.2.0" }
20-
ellie_tokenizer = { path = "tokenizer", version = "0.2.1", default-features = false }
21-
ellie_parser = { path = "parser", version = "0.3.0", default-features = false }
22-
ellie_assist = { path = "EllieAssist", version = "0.1.0", optional = true }
23-
ellie_runtime = {path = "runtime", version = "0.1.0" }
24-
ellie_bytecode = { path = "bytecode", version = "0.1.0" }
19+
20+
ellie_core = { path = "core", version = "*" }
21+
ellie_tokenizer = { path = "tokenizer", version = "*", default-features = false }
22+
ellie_parser = { path = "parser", version = "*", default-features = false }
23+
ellie_assist = { path = "EllieAssist", version = "*", optional = true }
24+
ellie_runtime = {path = "runtime", version = "*" }
25+
ellie_bytecode = { path = "bytecode", version = "*" }
2526

2627
[features]
2728
default = ["standard_rules", "build-cli"]
@@ -40,14 +41,15 @@ features = [ "build-cli" ]
4041
clap = { version = "3.1.1", optional = true }
4142
clap_complete = { version = "3.0.0", optional = true }
4243
lazy_static = "1.4.0"
43-
ellie_core = { path = "core", version = "0.2.0" }
4444
serde_json = { version = "1.0", default-features = false, features = ["alloc"] }
45-
ellie_parser = {path = "parser", version = "0.3.0", default-features = false}
4645
path-absolutize = { version = "3.0.10" }
4746
toml = "0.5.8"
4847
regex = { version = "1.1.7" }
49-
ellie_tokenizer = {path = "tokenizer", version = "0.2.0", default-features = false}
5048
bincode = { version = "1.0", optional = true }
5149

50+
ellie_core = { path = "core", version = "*" }
51+
ellie_parser = {path = "parser", version = "*", default-features = false}
52+
ellie_tokenizer = {path = "tokenizer", version = "*", default-features = false}
53+
5254
[profile.release]
5355
opt-level = 3

Ellie-Standard-Library

build.rs

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -58,17 +58,18 @@ fn main() {
5858
#[cfg(feature = "build-cli")]
5959
{
6060
let mut bash =
61-
File::create(env::var("OUT_DIR").unwrap().to_owned() + "/elliec_completion_bash")
61+
File::create(env!("CARGO_MANIFEST_DIR").to_string() + "/target/elliec_completion_bash")
6262
.unwrap();
6363
let mut fish =
64-
File::create(env::var("OUT_DIR").unwrap().to_owned() + "/elliec_completion_fish")
64+
File::create(env!("CARGO_MANIFEST_DIR").to_string() + "/target/elliec_completion_fish")
6565
.unwrap();
6666
let mut zsh =
67-
File::create(env::var("OUT_DIR").unwrap().to_owned() + "/elliec_completion_zsh")
68-
.unwrap();
69-
let mut powershell =
70-
File::create(env::var("OUT_DIR").unwrap().to_owned() + "/elliec_completion_powershell")
67+
File::create(env!("CARGO_MANIFEST_DIR").to_string() + "/target/elliec_completion_zsh")
7168
.unwrap();
69+
let mut powershell = File::create(
70+
env!("CARGO_MANIFEST_DIR").to_string() + "/target/elliec_completion_powershell",
71+
)
72+
.unwrap();
7273

7374
let cmd = cli_utils::generate_elliec_options();
7475
generate(
@@ -86,14 +87,14 @@ fn main() {
8687
);
8788

8889
generate(
89-
clap_complete::shells::Fish,
90+
clap_complete::shells::Zsh,
9091
&mut cmd.clone(),
9192
cmd.get_name().to_string(),
9293
&mut zsh,
9394
);
9495

9596
generate(
96-
clap_complete::shells::Fish,
97+
clap_complete::shells::PowerShell,
9798
&mut cmd.clone(),
9899
cmd.get_name().to_string(),
99100
&mut powershell,

bytecode/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ authors = ["Ahmetcan Aksu <ahmetcanaksu@behemehal.net>"]
77
license = "GPL-2.0"
88

99
[dependencies]
10-
ellie_core = { path = "../core", version = "0.2.0" }
11-
ellie_parser = { path = "../parser", version = "0.3.0" }
10+
ellie_core = { path = "../core", version = "*" }
11+
ellie_parser = { path = "../parser", version = "*" }
1212
enum-as-inner = "0.3.3"
1313
phf = {version = "0.10.1", features = ["macros"]}
1414

bytecode/README.md

Lines changed: 2 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Ellie bytecode is phase 3 of compiling process.
2222
| indirectc | Instructions that takes C register as parameter |
2323
| indirectx | Instructions that takes X register as parameter |
2424
| indirecty | Instructions that takes Y register as parameter |
25-
| reference | Instructions that takes reference as parameter |
25+
| reference? | Instructions that takes reference as parameter |
2626

2727

2828
### Registers
@@ -44,11 +44,6 @@ Ellie bytecode is phase 3 of compiling process.
4444
* LDC #VALUE
4545
* LDX #VALUE
4646
* LDY #VALUE
47-
* MCA
48-
* MCB
49-
* MCC
50-
* MCX
51-
* MCY
5247

5348
### Store
5449
* STA $ADDRESS
@@ -111,45 +106,4 @@ Debug Headers:
111106
6: 3
112107
```
113108

114-
--
115-
116-
| Instructions | Implicit | Immediate | absolute | indirecta | indirectb | indirectc | indirectx | indirecty |
117-
| ------------ | --------- | --------- | -------- | --------- | --------- | --------- | --------- | --------- |
118-
| LDA | -- | -- | -- | -- | -- | -- | -- | -- |
119-
| LDB | -- | -- | -- | -- | -- | -- | -- | -- |
120-
| LDC | -- | -- | -- | -- | -- | -- | -- | -- |
121-
| LDX | -- | -- | -- | -- | -- | -- | -- | -- |
122-
| LDY | -- | -- | -- | -- | -- | -- | -- | -- |
123-
| !MCA | -- | -- | -- | -- | -- | -- | -- | -- |
124-
| !MCB | -- | -- | -- | -- | -- | -- | -- | -- |
125-
| !MCC | -- | -- | -- | -- | -- | -- | -- | -- |
126-
| !MCX | -- | -- | -- | -- | -- | -- | -- | -- |
127-
| !MCY | -- | -- | -- | -- | -- | -- | -- | -- |
128-
| STA | -- | -- | -- | -- | -- | -- | -- | -- |
129-
| STB | -- | -- | -- | -- | -- | -- | -- | -- |
130-
| STC | -- | -- | -- | -- | -- | -- | -- | -- |
131-
| STX | -- | -- | -- | -- | -- | -- | -- | -- |
132-
| STY | -- | -- | -- | -- | -- | -- | -- | -- |
133-
| EQ | -- | -- | -- | -- | -- | -- | -- | -- |
134-
| NE | -- | -- | -- | -- | -- | -- | -- | -- |
135-
| GT | -- | -- | -- | -- | -- | -- | -- | -- |
136-
| LT | -- | -- | -- | -- | -- | -- | -- | -- |
137-
| GQ | -- | -- | -- | -- | -- | -- | -- | -- |
138-
| LQ | -- | -- | -- | -- | -- | -- | -- | -- |
139-
| AND | -- | -- | -- | -- | -- | -- | -- | -- |
140-
| OR | -- | -- | -- | -- | -- | -- | -- | -- |
141-
| ADD | -- | -- | -- | -- | -- | -- | -- | -- |
142-
| SUB | -- | -- | -- | -- | -- | -- | -- | -- |
143-
| MUL | -- | -- | -- | -- | -- | -- | -- | -- |
144-
| EXP | -- | -- | -- | -- | -- | -- | -- | -- |
145-
| DIV | -- | -- | -- | -- | -- | -- | -- | -- |
146-
| MOD | -- | -- | -- | -- | -- | -- | -- | -- |
147-
| INC | -- | -- | -- | -- | -- | -- | -- | -- |
148-
| DEC | -- | -- | -- | -- | -- | -- | -- | -- |
149-
| CALL | -- | -- | -- | -- | -- | -- | -- | -- |
150-
| RET | -- | -- | -- | -- | -- | -- | -- | -- |
151-
| JMP | -- | -- | -- | -- | -- | -- | -- | -- |
152-
153-
(I): Illegal instruction
154-
(P): Pointer
155-
* Illegal Instructions could be used in the future to implement other instructions
109+
### [Instruction Table](./instructions.md)

0 commit comments

Comments
 (0)