~repos /plum

#treesitter#compiler#wasm

git clone https://pyrossh.dev/repos/plum.git

A statically typed, imperative programming language inspired by rust, python


267c2624 pyrossh

11 months ago
get string working
test/sample.plum CHANGED
@@ -1,8 +1,7 @@
1
1
  import std.(List, Map, Math)
2
2
  import std/encoding.(Base64)
3
- import include/libs/libc
4
3
 
5
- library LibPCRE
4
+ library LibC("include/libs/libc")
6
5
  sqrt(x: C.Double) -> C.Double
7
6
  pow(x: C.Double, y: C.Double) -> C.Double
8
7
  sqrt(x: C.Double) -> C.Double
tooling/vscode-plum/syntaxes/plum.tmLanguage.json CHANGED
@@ -14,6 +14,9 @@
14
14
  {
15
15
  "include": "#string"
16
16
  },
17
+ {
18
+ "include": "#number"
19
+ },
17
20
  {
18
21
  "include": "#entity"
19
22
  },
@@ -88,23 +91,17 @@
88
91
  ]
89
92
  },
90
93
  "string": {
91
- "name": "meta.fstring.plum",
94
+ "name": "string.quoted.double.plum",
92
- "begin": "([fF])(([\"]))",
95
+ "begin": "\"",
93
- "end": "(\\3)|((?<!\\\\)\\n)",
94
96
  "beginCaptures": {
95
- "1": {
97
+ "0": {
96
- "name": "string.interpolated.plum string.quoted.single.plum storage.type.string.plum"
97
- },
98
- "2": {
99
- "name": "punctuation.definition.string.begin.plum string.quoted.single.plum"
98
+ "name": "punctuation.definition.string.begin.plum"
100
99
  }
101
100
  },
101
+ "end": "\"",
102
102
  "endCaptures": {
103
- "1": {
103
+ "0": {
104
- "name": "punctuation.definition.string.end.plum string.interpolated.plum string.quoted.single.plum"
105
- },
106
- "2": {
107
- "name": "invalid.illegal.newline.plum"
104
+ "name": "punctuation.definition.string.end.plum"
108
105
  }
109
106
  },
110
107
  "patterns": [