[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)