sjfl 0.4.0

Simple language for config files
Documentation
binary로 serde할 때는 형태 그대로 하셈 -> 변수 풀지 말고 놔두셈

-> 그게 가능함? eval이든 exec이든 전부 다 substitute_var 호출하는데??

형태를 바꾸면??

-> import 때문에 힘들 듯??? A가 B를 Import함 -> A에서 B의 변수를 사용. 그 변수에는 현재 3이 들어가 있음 -> A를 binary로 바꾼 다음에 B의 변수를 4로 수정 -> A의 binary에는 그게 반영이 안됨...

-> 그럼 이것도 반영을 하자! -> A를 읽으라고 시키면 일단은 A의 binary를 찾음. A의 binary가 A의 raw text보다 나이가 어리면 binary 사용 -> binary 안에 A의 dependency를 다 기록해두자, dependency 중에서 A의 binary보다 어린 애가 있으면 A의 raw text를 써야지..!!

---

cyclic import는??

f1.sjfl

```py
import f2;
a = 1;
b = 2;
c = f + 1;
```

f2.sjfl

```py
import f1;
d = 3;
e = 4;
f = a + 1;
```

걍 cyclic import 자체를 금지시키자!

---

it should refuse redundant keys in a table!

---

test invalid formats

`datetime()`, unmatched parenthesis, ...