Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[Announcement] neos -- Coming Soon!

42 views
Skip to first unread message

Mr Flibble

unread,
Feb 8, 2019, 12:40:42 PM2/8/19
to
Hi!

Announcing "neos" a cross-platform language agnostic scripting engine with
a WASM JIT!

* Language agnostic: a schema describes the scripting language to use
(theoretically allowing any language to be used).
* RJSON (Relaxed JSON) language schema file format.
* Invent your own scripting language to use with "neos" by writing a new
language schema!

Available on GitHub: https://github.com/i42output/neos

Coming soon!

/Flibble

--
“You won’t burn in hell. But be nice anyway.” – Ricky Gervais

“I see Atheists are fighting and killing each other again, over who
doesn’t believe in any God the most. Oh, no..wait.. that never happens.” –
Ricky Gervais

"Suppose it's all true, and you walk up to the pearly gates, and are
confronted by God," Bryne asked on his show The Meaning of Life. "What
will Stephen Fry say to him, her, or it?"
"I'd say, bone cancer in children? What's that about?" Fry replied.
"How dare you? How dare you create a world to which there is such misery
that is not our fault. It's not right, it's utterly, utterly evil."
"Why should I respect a capricious, mean-minded, stupid God who creates a
world that is so full of injustice and pain. That's what I would say."

Mr Flibble

unread,
Feb 8, 2019, 6:29:57 PM2/8/19
to
On 08/02/2019 17:40, Mr Flibble wrote:
> Hi!
>
> Announcing "neos" a cross-platform language agnostic scripting engine with
> a WASM JIT!
>
> * Language agnostic: a schema describes the scripting language to use
> (theoretically allowing any language to be used).
> * RJSON (Relaxed JSON) language schema file format.
> * Invent your own scripting language to use with "neos" by writing a new
> language schema!
>
> Available on GitHub: https://github.com/i42output/neos
>
> Coming soon!

So WASM is a bit shite as it appears to lack a jump instruction. I will no
longer be using WASM in neos.

Mr Flibble

unread,
Feb 8, 2019, 7:44:36 PM2/8/19
to
On 08/02/2019 23:29, Mr Flibble wrote:
> On 08/02/2019 17:40, Mr Flibble wrote:
>> Hi!
>>
>> Announcing "neos" a cross-platform language agnostic scripting engine
>> with a WASM JIT!
>>
>> * Language agnostic: a schema describes the scripting language to use
>> (theoretically allowing any language to be used).
>> * RJSON (Relaxed JSON) language schema file format.
>> * Invent your own scripting language to use with "neos" by writing a new
>> language schema!
>>
>> Available on GitHub: https://github.com/i42output/neos
>>
>> Coming soon!
>
> So WASM is a bit shite as it appears to lack a jump instruction. I will no
> longer be using WASM in neos.

Now that I have rescinded the use of WASM in neos (due to its lack of a
jump instruction) here is the register map for the neos bytecode virtual
machine:

https://github.com/i42output/neos/blob/master/src/bytecode/registers.hpp

Cholo Lennon

unread,
Feb 8, 2019, 8:47:31 PM2/8/19
to
On 2/8/19 8:29 PM, Mr Flibble wrote:
> On 08/02/2019 17:40, Mr Flibble wrote:
>> Hi!
>>
>> Announcing "neos" a cross-platform language agnostic scripting engine
>> with a WASM JIT!
>>
>> * Language agnostic: a schema describes the scripting language to use
>> (theoretically allowing any language to be used).
>> * RJSON (Relaxed JSON) language schema file format.
>> * Invent your own scripting language to use with "neos" by writing a
>> new language schema!
>>
>> Available on GitHub: https://github.com/i42output/neos
>>
>> Coming soon!
>
> So WASM is a bit shite as it appears to lack a jump instruction. I will
> no longer be using WASM in neos.
>

I am using C++ with clang 4/7 (that outputs wasm) to write smart
contracts for EOS blockchain. From the C++ point of view it is all
transparent. Of course, there are some limitations due to the
deterministic nature of a blockachain (i.e. I can't use a timer or open
files), but beyond that everything is Ok with wasm and C++ (at least in
my experience). I know that it is not the same a "jump" as a "goto", but
the C/C++ goto statement is supported (emulated with the "block" opcode)

Regards

--
Cholo Lennon
Bs.As.
ARG

Mr Flibble

unread,
Feb 8, 2019, 11:18:42 PM2/8/19
to
Emulated = bad.

The decision has already been made: I will be using a bytecode of my own
design.

Cholo Lennon

unread,
Feb 9, 2019, 1:03:58 PM2/9/19
to
Well, maybe wasm is not so bad if C/C++/rust can be compiled to it.

>
> The decision has already been made: I will be using a bytecode of my own
> design.
>



Cholo Lennon

unread,
Feb 9, 2019, 2:22:42 PM2/9/19
to
I've just received this new paper, it's very interesting:

Mind the Gap: Analyzing the Performance of WebAssembly vs. Native Code
https://arxiv.org/abs/1901.09056
0 new messages