1.0.3 • Published 6 years ago
sugly v1.0.3
Sugly-Lang
A simple & ugly script language, which is mostly inspired by Lisp, Python and JavaScript.
print "Hello, world!";
# or, without sweetener
(print "Hello, world!")Try it online
Sugly.DEV
help; # for help.
# to verify your browser's compatibility.
selftest;
# to run a quick-sort example
run "examples/qsort1";
# to print its code
print (.loader read "examples/qsort1");
# try to list all examples
.loader list "examples/";
# use print to show a full list.
print (.loader list "examples/");
# break items into lines
.loader list "examples/":: for-each print;
# display source url only
.loader list "examples/":: for-each (= item (print (item 0);
# display item no. for counting
.loader list "examples/":: for-each (= (item, no.) (print '#$(no.), $(item 0)');
# display path only
.loader list "examples/":: for-each (= (item, no.) (print '#$(no.),', (var url (item 0):: slice (url first-of "examples/");
# Q: What's happening?
var print-examples (=>:() (var examples (.loader list "examples/")) (=> pattern (examples for-each (=> (item, no.) (print (string format (pattern ?* "{0}, {1}, {2}"), no., (item 0), (item 1);
# As a hint, here's a (more) friendly version.
(var print-examples (=>:()
var examples (.loader list "examples/");
(=> pattern
(examples for-each (=> (item, no.)
print (string format (pattern ?* "{0}, {1}, {2}"), no., (item 0), (item 1);
).
# You may also want to check
print print-examples;
# Finally, the Y-combinator in Sugly
print (.loader read "yc");Install it
npm i -g sugly
sugly selftest # optionalrun an example, or your own code:
sugly examples/qsort1REPL in terminal:
suglyYou can do almost the same things after calling
fetch "https://sugly.dev/@";
# or try
fetch "https://sugly.dev/@":: finally (=>() (.loader list:: for-each print);Use it in your JS project
add it
npm i --save suglyuse it
var $void = require('sugly')
$void.$run('path-to-your-app.s')use it in web page
var $void = require('sugly/web')
$void.$run('path-to-your-app.s')Check the source code
git clone https://github.com/NirlStudio/sugly-lang.git
cd sugly-lang
npm install
npm test
bin/sugly
# or, start the local web shell
npm run build-dev & npm run startIDE Support
VS Code Extension
In Extensions sidebar, search for Sugly
Atom Plugin
apm install language-suglyYou can help to
- Test it in various OSes and browsers.
- Use it in your projects.
- Recommend it to your friends.
- Create documentation & tools.
- Report bugs and help to fix.
- Request for features.
- Create interpreters in other native languages
- Java, Go, Rust, Python, C#, C, etc
- ...
Enjoy the sugliness.
1.0.3
6 years ago
1.0.2
6 years ago
1.0.1
7 years ago
0.9.9
7 years ago
0.9.8
7 years ago
0.8.1
7 years ago
0.6.1
7 years ago
0.4.1
7 years ago
0.3.6
7 years ago
0.3.3
8 years ago
0.3.2
8 years ago
0.2.1
9 years ago
0.1.9
10 years ago
0.1.8
10 years ago
0.1.7
10 years ago
0.1.6
10 years ago
0.1.5
10 years ago
0.1.4
10 years ago
0.1.3
10 years ago
0.1.2
10 years ago
0.1.1
10 years ago
0.1.0
10 years ago
0.0.2
10 years ago
0.0.1
10 years ago