You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+12-15Lines changed: 12 additions & 15 deletions
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
3
3
JSPython is a python-like syntax interpreter implemented with javascript that runs entirely in the web browser and/or in the NodeJS environment.
4
4
5
-
It does not transpile/compile your code into JavaScript, instead, it provides an interactive interpreter that reads Python code and carries out their instructions. With JSPython you should be able to safely use or interact any JavaScript libraries or API with a nice Python language.
5
+
It does not transpile/compile your code into JavaScript, instead, it provides an interactive interpreter that reads Python code and carries out their instructions. With JSPython you should be able to safely use or interact with any JavaScript libraries or APIs in a nice Python language.
Interactive [Worksheet Systems JSPython editor](https://run.worksheet.systems/data-studio/app/guest/jspy-playground?file=main.jspy) with an ability to query REST APIs and display results in Object Explorer, a configurable Excel-like data grid or just as a JSON or text.
22
22
23
23
## Why would you use it?
24
-
You can easily embed `JSPython` into your web app and your end users will benefit from a Pythonlike scripting facility to:
24
+
You can easily embed `JSPython` into your web app and your end users will benefit from a Python-like scripting facility to:
25
25
* to build data transformation and data analysis tasks
26
-
* allow users to configure a JS objects at run-time
26
+
* allow users to configure JS objects at run-time
27
27
* run a comprehensive testing scenarios
28
28
* experiment with your JS Libraries or features.
29
-
* bring a SAFE runtime script evaluation functions to your web app
29
+
* bring a SAFE run-time script evaluation functions to your web app
30
30
* bring Python language to NodeJS environment
31
31
32
32
## Features
33
33
Our aim here is to provide a SAFE Python experience to Javascript or NodeJS users at run-time. So far, we implement a core set of Python feature which should be OK to start coding.
34
34
35
35
***Syntax and code flow** Same as Python, In `JSPython` we use indentation to indicate a block of code. All flow features like `if - else`, `for`, `while` loops - along with `break` and `continue`
36
36
37
-
***Objects, Arrays**`JSPython` allows you to work with JavaScript objects and arrays and you should be able to invoke their methods and properties as normal. So, all methods including prototype functions `push()`, `pop()`, `splice()` and [any more](https://www.w3schools.com/js/js_array_methods.asp) will work out of box.
37
+
***Objects, Arrays**`JSPython` allows you to work with JavaScript objects and arrays and you should be able to invoke their methods and properties as normal. So, all methods including prototype functions `push()`, `pop()`, `splice()` and [many more](https://www.w3schools.com/js/js_array_methods.asp) will work out of box.
38
38
39
39
***JSON** JSPython allows you to work with JSON same way as you would in JavaScript or Python dictionaries
40
40
@@ -47,15 +47,15 @@ Our aim here is to provide a SAFE Python experience to Javascript or NodeJS user
47
47
***None, null**`null` and `None` are synonyms and can be used interchangeably
48
48
49
49
## JSPython distinctive features
50
-
Although we haven't implemented all the features available in Python yet. But, we already have a several usefull and distinctive features that are popular in other morden languages, but not in Python:
50
+
We haven't implemented all the features available in Python yet. However, we do already have several useful and distinctive features that are popular in other modern languages, but aren't in Python:
51
51
- A single line arrow functions `=>` (no lambda keyword required)
52
-
- A multiline arrow function `=>`. Particularly usefull when building data transformation pipelines
52
+
- A multiline arrow function `=>`. Particularly useful when building data transformation pipelines
53
53
- Null conditioning (null-coalescing) `myObj?.property?.subProperty or "N/A"`.
54
54
55
55
## Quick start
56
56
57
57
Zero install !
58
-
The most simple way to get started, without anything to install, is to use the distribution available online through jsDelivr. You can choose the latest stable release :
58
+
The simplest way to get started, without anything to install, is to use the distribution available online through jsDelivr. You can choose the latest stable release :
0 commit comments