[HN Gopher] Show HN: Mandelbrot - programmed in widely unknown E...
___________________________________________________________________
Show HN: Mandelbrot - programmed in widely unknown Easylang,
speeded up by WASM
Author : chkas
Score : 12 points
Date : 2023-10-03 15:15 UTC (7 hours ago)
(HTM) web link (easylang.dev)
(TXT) w3m dump (easylang.dev)
| chkas wrote:
| Easylang is a domain-specific language for learning programming
| and also for small web canvas applications. It has a reduced set
| of functions, a simple syntax, a browser IDE and integrated
| graphic commands. It is statically typed and has only strings and
| numbers (floating point), arrays of strings and numbers, and
| arrays of arrays as data types. Easylang was made by me and is
| open source (GPL).
|
| It is written mainly in C and is run in the browser using WASM
| (WebAssembly). The Easylang programs are compiled directly in the
| browser into an AST (abstract syntax tree) and this is then
| interpreted.
|
| A recently added feature is that certain code can be compiled
| directly into WASM code. This is useful for the "inner loop" and
| can multiply the speed of execution. This feature is experimental
| and currently only works for certain language constructs. You can
| test the speed difference in this example by changing "fastfunc
| iter" to "func iter".
|
| The code of this example is embedded in the URL.
| nuancebydefault wrote:
| I find this amazing! The code read/writes like a high level
| interpreted language and runs like offline compiled code. The
| fact that it works in a 'random' browser on a 'random' platform
| is the cherry on the cake.
___________________________________________________________________
(page generated 2023-10-03 23:01 UTC)