lumos-language 2.0.0 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.npmrc.ci-backup +3 -0
- package/README.md +8 -43
- package/examples/hello.lumos +5 -0
- package/package.json +4 -1
- package/examples/advanced/calculator.lumos +0 -36
- package/examples/basic/hello.lumos +0 -13
- package/examples/comprehensive.lumos +0 -106
package/.npmrc.ci-backup
ADDED
package/README.md
CHANGED
|
@@ -32,48 +32,9 @@ Lumos Language Enhanced is a comprehensive programming language implementation t
|
|
|
32
32
|
|
|
33
33
|
### Compilation Targets
|
|
34
34
|
|
|
35
|
-
#### Assembly Languages
|
|
36
|
-
- x86/x64 Assembly
|
|
37
|
-
- ARM Assembly
|
|
38
|
-
- WebAssembly (WASM)
|
|
39
|
-
|
|
40
|
-
#### Compiled Languages
|
|
41
|
-
- C, C++, Rust
|
|
42
|
-
- Go, Swift, Objective-C
|
|
43
|
-
- Java, C#, F#
|
|
44
|
-
- Ada, D, Fortran
|
|
45
|
-
|
|
46
35
|
#### Interpreted Languages
|
|
47
|
-
- Python
|
|
48
|
-
-
|
|
49
|
-
- R, MATLAB
|
|
50
|
-
|
|
51
|
-
#### Scripting Languages
|
|
52
|
-
- JavaScript, TypeScript
|
|
53
|
-
- Bash, PowerShell
|
|
54
|
-
- VBScript, Groovy
|
|
55
|
-
|
|
56
|
-
#### Functional Languages
|
|
57
|
-
- Haskell, F#, OCaml
|
|
58
|
-
- Scala, Clojure, Lisp
|
|
59
|
-
- Elixir, Erlang
|
|
60
|
-
- Scheme
|
|
61
|
-
|
|
62
|
-
#### Web Technologies
|
|
63
|
-
- HTML, CSS, JSX
|
|
64
|
-
- React, Vue, Angular
|
|
65
|
-
- Next.js, Nuxt, Svelte
|
|
66
|
-
|
|
67
|
-
#### Database Languages
|
|
68
|
-
- SQL, PostgreSQL, MySQL
|
|
69
|
-
- SQLite, MongoDB
|
|
70
|
-
- GraphQL
|
|
71
|
-
|
|
72
|
-
#### Specialized Languages
|
|
73
|
-
- COBOL, Fortran, Pascal
|
|
74
|
-
- Prolog, Lisp, Scheme
|
|
75
|
-
- VHDL, Verilog, SystemC
|
|
76
|
-
- MQL4/MQL5 (Trading)
|
|
36
|
+
- Python
|
|
37
|
+
- Ruby
|
|
77
38
|
|
|
78
39
|
### Framework Support
|
|
79
40
|
|
|
@@ -102,13 +63,13 @@ Lumos Language Enhanced is a comprehensive programming language implementation t
|
|
|
102
63
|
## Installation
|
|
103
64
|
|
|
104
65
|
```bash
|
|
105
|
-
npm install lumos-language
|
|
66
|
+
npm install lumos-language
|
|
106
67
|
```
|
|
107
68
|
|
|
108
69
|
Or install globally:
|
|
109
70
|
|
|
110
71
|
```bash
|
|
111
|
-
npm install -g lumos-language
|
|
72
|
+
npm install -g lumos-language
|
|
112
73
|
```
|
|
113
74
|
|
|
114
75
|
## Usage
|
|
@@ -288,6 +249,10 @@ const rustCode = engine.compileToTarget(code, 'rust');
|
|
|
288
249
|
npm test
|
|
289
250
|
```
|
|
290
251
|
|
|
252
|
+
## Caution
|
|
253
|
+
|
|
254
|
+
- ***Please write all code on a single line.***
|
|
255
|
+
|
|
291
256
|
## Contributing
|
|
292
257
|
|
|
293
258
|
Contributions are welcome! Please read the contributing guidelines before submitting pull requests.
|
package/package.json
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lumos-language",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.2",
|
|
4
4
|
"description": "Lumos Language - Enhanced Multi-Target Compiler supporting 100+ languages",
|
|
5
|
+
"publishConfig": {
|
|
6
|
+
"registry": "https://npm.pkg.github.com"
|
|
7
|
+
},
|
|
5
8
|
"main": "./index.cjs",
|
|
6
9
|
"bin": {
|
|
7
10
|
"lumos": "./index.cjs"
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
class Calculator {
|
|
2
|
-
let result
|
|
3
|
-
|
|
4
|
-
def constructor() {
|
|
5
|
-
this.result = 0
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
def add(a, b) {
|
|
9
|
-
this.result = a + b
|
|
10
|
-
return this.result
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
def subtract(a, b) {
|
|
14
|
-
this.result = a - b
|
|
15
|
-
return this.result
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
def multiply(a, b) {
|
|
19
|
-
this.result = a * b
|
|
20
|
-
return this.result
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
def divide(a, b) {
|
|
24
|
-
if (b == 0) {
|
|
25
|
-
print("Error: Division by zero")
|
|
26
|
-
return null
|
|
27
|
-
}
|
|
28
|
-
this.result = a / b
|
|
29
|
-
return this.result
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
let calc = Calculator()
|
|
34
|
-
print(calc.add(10, 5))
|
|
35
|
-
print(calc.multiply(3, 7))
|
|
36
|
-
print(calc.divide(20, 4))
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
let name = "Lumos"
|
|
2
|
-
let version = 2.0
|
|
3
|
-
let isActive = true
|
|
4
|
-
|
|
5
|
-
def greet(user) {
|
|
6
|
-
let message = "Welcome to " + name
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
def calculate(a, b) {
|
|
10
|
-
let sum = a + b
|
|
11
|
-
let product = a * b
|
|
12
|
-
let average = (a + b) / 2
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
for i = 1 to 10 {
|
|
16
|
-
let square = i * i
|
|
17
|
-
let cube = i * i * i
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
let counter = 0
|
|
21
|
-
while (counter < 5) {
|
|
22
|
-
let counter = counter + 1
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
if (version >= 2.0) {
|
|
26
|
-
let status = "Modern"
|
|
27
|
-
} elsif (version >= 1.0) {
|
|
28
|
-
let status = "Legacy"
|
|
29
|
-
} else {
|
|
30
|
-
let status = "Deprecated"
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
3.times do |i| {
|
|
34
|
-
let index = i
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
def fibonacci(n) {
|
|
38
|
-
let result = n * n
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
def factorial(n) {
|
|
42
|
-
let total = n * (n - 1)
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
let data = { name: "test", value: 42 }
|
|
46
|
-
let items = [1, 2, 3, 4, 5]
|
|
47
|
-
|
|
48
|
-
class User {
|
|
49
|
-
def constructor(username) {
|
|
50
|
-
let this.username = username
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
def getInfo() {
|
|
54
|
-
let info = "User: " + this.username
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
try {
|
|
59
|
-
let result = performOperation()
|
|
60
|
-
} catch (error) {
|
|
61
|
-
let errorMsg = "Failed"
|
|
62
|
-
} finally {
|
|
63
|
-
let cleanup = true
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
match (status) {
|
|
67
|
-
case "active" => { let response = "Running" }
|
|
68
|
-
case "paused" => { let response = "Waiting" }
|
|
69
|
-
case _ => { let response = "Unknown" }
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
type Person = {
|
|
73
|
-
name: string,
|
|
74
|
-
age: number,
|
|
75
|
-
email: string
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
type Result = Success | Error
|
|
79
|
-
|
|
80
|
-
import { utility } from "helpers"
|
|
81
|
-
import database from "db"
|
|
82
|
-
|
|
83
|
-
export def publicFunction() {
|
|
84
|
-
let value = 100
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
def asyncOperation() {
|
|
88
|
-
let data = await fetchData()
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
let lambda = (x, y) => x + y
|
|
92
|
-
|
|
93
|
-
for item in collection {
|
|
94
|
-
let processed = transform(item)
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
switch (value) {
|
|
98
|
-
case 1:
|
|
99
|
-
let output = "One"
|
|
100
|
-
break
|
|
101
|
-
case 2:
|
|
102
|
-
let output = "Two"
|
|
103
|
-
break
|
|
104
|
-
default:
|
|
105
|
-
let output = "Other"
|
|
106
|
-
}
|