-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
401 lines (345 loc) · 12.5 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="HandheldFriendly" content="True">
<meta name="format-detection" content="telephone=no">
<meta http-equiv="cleartype" content="on">
<meta http-equiv="imagetoolbar" content="false">
<!-- google meta tags -->
<meta name="description"
content="Radon is a programming language that is designed to be easy to learn and use. It is a high-level language intended to be used for general purpose programming. It is designed to be easy to learn and use, while still being powerful enough to be used for most tasks. Some of the features of Radon include: A simple syntax that is easy to learn and use, Dynamic typing so that you don't have to worry about types, Powerful standard library that makes it easy to do common tasks (On the way), Easy to use package manager that makes it easy to install packages (Future feature)">
<meta name="keywords"
content="radon, radon programming language, radon language, radon programming, radon programming language tutorial, radon programming language download, radon programming language github, radon programming language examples, radon programming language documentation, radon programming language tutorial pdf, radon programming language tutorial for beginners, radon programming language tutorial pdf download, radon programming language tutorial point, radon programming language tutorialspoint, radon programming language tutorial youtube, radon programming language tutorial for beginners pdf, radon programming language tutorial for beginners youtube, radon programming language tutorial for beginners pdf download, radon programming language tutorial for beginners point, radon programming language tutorial for beginners tutorialspoint, radon programming language tutorial for beginners youtube video, radon programming language tutorial for beginners youtube channel, radon programming language tutorial for beginners youtube video download">
<meta name="author" content="Md. Almas Ali">
<meta name="robots" content="index, follow">
<meta name="google-site-verification" content="zTEe-bypjwy2g3fTznxeCaJr54OYPmawh_Njmj3gB1o" />
<!-- facebook meta tags -->
<meta property="og:title" content="The Radon Programming Language">
<meta property="og:description"
content="Radon is a programming language that is designed to be easy to learn and use. It is a high-level language intended to be used for general purpose programming. It is designed to be easy to learn and use, while still being powerful enough to be used for most tasks. Some of the features of Radon include: A simple syntax that is easy to learn and use, Dynamic typing so that you don't have to worry about types, Powerful standard library that makes it easy to do common tasks (On the way), Easy to use package manager that makes it easy to install packages (Future feature)">
<meta property="og:image" content="./static/Rn.png">
<meta property="og:url" content="https://radon-project.github.io/">
<meta property="og:site_name" content="The Radon Programming Language">
<meta property="og:type" content="website">
<!-- twitter meta tags -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@almasali22">
<meta name="twitter:creator" content="@almasali22">
<meta name="twitter:title" content="The Radon Programming Language">
<meta name="twitter:description"
content="Radon is a programming language that is designed to be easy to learn and use. It is a high-level language intended to be used for general purpose programming. It is designed to be easy to learn and use, while still being powerful enough to be used for most tasks. Some of the features of Radon include: A simple syntax that is easy to learn and use, Dynamic typing so that you don't have to worry about types, Powerful standard library that makes it easy to do common tasks (On the way), Easy to use package manager that makes it easy to install packages (Future feature)">
<meta name="twitter:image" content="./static/Rn.png">
<title>The Radon Programming Language</title>
<link rel="shortcut icon" href="./static/favicon.ico" type="image/x-icon">
<link rel="stylesheet" href="./static/main.css?v=1.0.2">
</head>
<body>
<div class="loader-wrapper">
<span class="loader"></span>
</div>
<nav>
<a href="/" class="logo">
<img src="./static/Rn.svg" alt="Radon Logo">
</a>
<ul>
<li><a href="/">Home</a></li>
<li><a href="/docs">Docs</a></li>
<li><a href="#download">Download</a></li>
</ul>
</nav>
<div class="container">
<header>
<img src="./static/Rn.png" alt="Site Logo" class="header-img">
<h1>The Radon Programming Language</h1>
<p>
Radon is a programming language that is designed to be easy to learn and use. It is a high-level language
intended to be used for general purpose programming. It is designed to be easy to learn and use, while still
being powerful enough to be used for most tasks. Some of the features of Radon include:
</p>
<ul>
<li>
A simple syntax that is easy to learn and use
</li>
<li>
Dynamic typing so that you don't have to worry about types
</li>
<li>
Powerful standard library that makes it easy to do common tasks (On the way)
</li>
<li>
Easy to use package manager that makes it easy to install packages (Future feature)
</li>
</ul>
</header>
</div>
<div class="hr"></div>
<div class="download-menu" id="download">
<h2>Download</h2>
<p>Download the latest version of Radon</p>
<table>
<tr>
<th>Release version</th>
<th>Release date</th>
<th>Platform</th>
<th>
Click for more
</th>
</tr>
<tr>
<td>
Radon 0.0.1a2
</td>
<td>
31-08-2023
</td>
<td>
<a href="https://github.com/radon-project/radon/releases/download/v0.0.1a2/radon-0.0.1-a2.exe">Windows</a> |
<a href="https://github.com/radon-project/radon/archive/refs/tags/v0.0.1a2.tar.gz">Linux/Source</a>
</td>
<td>
<a href="#">Release Notes</a>
</td>
</tr>
<tr>
<td>
Radon 0.0.1a0
</td>
<td>
05-07-2023
</td>
<td>
<a href="https://github.com/radon-project/radon/releases/download/v0.0.1a0/radon-0.0.1.exe">Windows</a> |
<a href="https://github.com/radon-project/radon/archive/refs/tags/v0.0.1a0.tar.gz">Linux/Source</a>
</td>
<td>
<a href="#">Release Notes</a>
</td>
</tr>
</table>
</div>
<div class="hr"></div>
<div class="box">
<h1>Getting Started</h1>
<p>
After downloading Radon, you can run it by double clicking on the executable. This will open the Radon REPL
(Read Evaluate Print Loop). You can type in code and it will be executed immediately. You can also run a Radon
file by typing <span class="code-block">radon filename.rn</span> in the command line. This will run the code in
the file. Before you do that though, you need to make sure that Radon is in your PATH variable. If you are on
Windows, you can do this by going to Control Panel > System > Advanced System Settings > Environment Variables.
Then, you need to add the path to the Radon executable to the PATH variable. If you are on Linux, you can do
this by adding the path to the Radon executable to the PATH variable in your .bashrc file.
</p>
</div>
<div class="hr"></div>
<div class="box">
<h1>
Standard Library
</h1>
<p>
We are currently working on the standard library. We need contributors to help us build the standard library. If
you are interested, please make contributions to the <span class="code-block">stdlib</span> directory.
</p>
</div>
<div class="hr"></div>
<div class="box">
<h1>Project Structure</h1>
<code>
<pre>
radon
├── core
│ ├── builtin_funcs.py
│ ├── datatypes.py
│ ├── errors.py
│ ├── __init__.py
│ ├── interpreter.py
│ ├── lexer.py
│ ├── nodes.py
│ ├── parser.py
│ └── tokens.py
├── examples
│ ├── args_test.rn
│ ├── arrays.rn
│ ├── classes.rn
│ ├── functions.rn
│ ├── import_test.rn
│ ├── new_syntax.rn
│ ├── python_api.rn
│ ├── simple.rn
│ └── syntax.rn
├── Makefile
├── radon.png
├── radon.py
├── README.md
├── stdlib
│ ├── Argparser.rn
│ ├── Array.rn
│ ├── Math.rn
│ ├── String.rn
│ ├── System.rn
│ └── Winlib.rn
├── tests
└── TODO.md
</pre>
</code>
</div>
<div class="hr"></div>
<div class="box" id="docs">
<h1>Syntax</h1>
<code>
<pre>
# This is a comment
# Arithmetic operators
# + - Addition
# - - Subtraction
# * - Multiplication
# / - Division
# % - Modulus
# ^ - Exponentiation
# Comparison operators
# == - Equal to
# != - Not equal to
# > - Greater than
# < - Less than
# >= - Greater than or equal to
# <= - Less than or equal to
# Logical operators
# and - Logical and
# or - Logical or
# not - Logical not
# Assignment operators (Development)
# = - Assign
# += - Add and assign
# -= - Subtract and assign
# *= - Multiply and assign
# /= - Divide and assign
# %= - Modulus and assign
# ^= - Exponentiation and assign
# Variable definition
var a = 10
var b = 20
print(a + b) # 30
var c = "Hello"
var d = "World"
print(c + " " + d) # Hello World
# Conditional statement
if a > b {
print("a is greater than b")
} elif a < b {
print("a is less than b")
} else {
print("a is equal to b")
}
# For loop
var x = 9 # Multiplication table of 9
for i = 1 to 11 {
print(str(x) + " X " + str(i) + " = " + str(x * i))
}
# While loop
while x > 0 {
print(x)
var x = x - 1
}
# Function definition
fun add(a, b) {
return a + b
}
print(add(10, 20)) # 30
# Anonymous function
var sub = fun (a, b) {
return a - b
}
print(sub(20, 10)) # 10
# Single line function
fun mul(a, b) -> a * b
print(mul(10, 20)) # 200
# Class definition
class Person {
# Constructor
fun Person(name, age) {
var this.name = name
var this.age = age
}
fun get_name() {
return this.name
}
fun get_age() {
return this.age
}
}
# Use a class
var person = Person("Almas", 21)
var details = "Name is : " + person.get_name() + ", Age : " + str(person.get_age())
print(details)
# Include statement
include Math # to include math library
include "examples/simple.rn" # to use a path
# builtin functions
# Utility methods
cls()
clear()
exit()
# same as include statement
require()
# Command line arguments
sys_args()
# API methods
pyapi(string)
# Typecase methods
int()
float()
str()
bool()
type()
# Type checker methods
is_num()
is_int()
is_float()
is_str()
is_bool()
is_array()
is_fun()
# String methods
str_len()
str_find(string, index)
str_slice(string, start, end)
# I/O methods
print()
print_ret()
input()
input_int()
# Array methods
arr_len()
arr_push(array, item)
arr_pop(array, index)
arr_append(array, item)
arr_extend(array1, array2)
arr_find(array, index)
arr_slice(array, start, end)
</pre>
</code>
</div>
<footer>
<p>Radon Software Foundation © 2023</p>
<p>
Author : <a href="https://almasali.net" target="_blank"
title="A passionate software engineer from Bangladesh.">Md. Almas Ali</a>
</p>
</footer>
<script>
window.addEventListener('load', () => {
const loader = document.querySelector('.loader-wrapper');
loader.className += ' hidden';
});
</script>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-EQVZ8DQMSF"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-EQVZ8DQMSF');
</script>
</body>
</html>