Comments (7)
As for the standard libraries part: Standard-Libraries
from tengo.
Thanks for the kind words and the HackerNews share. But I'm not sure if Tengo's ready for HN 😄
Let me try to answer your questions, but, please know that Tengo is fairly new and there are tons of things to add going forward.
- Language-level support for concurrency is something I need to think about. Tengo was not to replace something entirely. (Maybe in the far future..?) So, honestly, I don't have a clear plan for this, but, I'm always open to ideas/proposals.
- I've been focusing on implementing the cores, and, didn't really spend enough time on documentations and examples. But I plan to add more and more. Also please shoot me an email or create an issue if something doesn't work. (Also, I don't know that's the issue or not, but, note that you should use double quotes (
"
) for strings.) - This may change (or extended) in the future, but, currently a file correspond to a module that can be imported to other scripts/modules. And each module gets not just their own namespace but also their own VM actually. And the importing script (code calling
import()
) get the global variables of the module as an immutable map object. - Interoperability is critical as an embedded language for sure. There are couple different ways for doing it, but, currently the easiest way is to implement
objects.Object
interface and use it in the same way as other primitive types. (SeeCounter
example code in README.) I'm planning to add more interoperability features, and, like always, challenging part is to make it work without losing any performance. - Compiling native executables is in the development roadmap. Currently you can use
tengo
CLI tool (which can be built cross-platform) to compile and run the binaries. It's like you usejava
orpython
to run their source or binaries in the platform agnostic way. - Benchmark in README unless you mean something else.
from tengo.
As for the standard libraries part: Standard-Libraries
Thank you @mdbazuin, that's good to know 😃
from tengo.
Thanks for the kind words and the HackerNews share.
But I'm not sure if Tengo's ready for HN smile
I'm sure it does. One person that commented on it and said "I do like this idea though and think I have an application for it", so there you have it.
Let me try to answer your questions, but, please know that Tengo is fairly new
and there are tons of things to add going forward.* Language-level support for concurrency is something I need to think about.
Tengo was not to replace something entirely. (Maybe in the far future..?)
So, honestly, I don't have a clear plan for this, but, I'm always open to ideas/proposals.
By concurrency I mean using all the CPU cores,
No need to replace anything, more and more languages pop up like mushrooms, but none of them performs as fast as Tengo. People love speed and readability.
So, since Tengo has both, why not use it as a standalone language?
- I've been focusing on implementing the cores, and, didn't really spend
enough time on documentations and examples.
But I plan to add more and more. Also please shoot me an email or
create an issue if something doesn't work.
(Also, I don't know that's the issue or not, but, note that you should use double quotes ("
) for strings.)
I think we need more examples about the proper usage of Tengo, because it's not clear yet how it should be used.
* This may change (or extended) in the future, but, currently a file correspond to
a module that can be imported to other scripts/modules. And each module gets not
just their own namespace but also their own VM actually. And the importing script
(code callingimport()
) get the global variables of the module as an immutable map object.
Ah I see, this is clearer now.
* Interoperability is critical as an embedded language for sure.
There are couple different ways for doing it, but, currently the easiest way is to implement
objects.Object
interface and use it in the same way as other primitive types.
(SeeCounter
example code in README.) I'm planning to add more interoperability features,
and, like always, challenging part is to make it work without losing any performance.
Yeah, I understand.
- Compiling native executables is in the development roadmap.
Currently you can usetengo
CLI tool (which can be built cross-platform) to compile
and run the binaries. It's like you usejava
orpython
to run their source or binaries
in the platform agnostic way.
Awesome! I can't wait to use it 😃
* [Benchmark](https://github.com/d5/tengo#benchmark) in README
unless you mean something else.
By benchmarks I mean something like https://benchmarksgame-team.pages.debian.net/benchmarksgame/
from tengo.
@stefanos82 I'm curious to know what you think of roadmap that I had updated recently. Any feedback/thoughts would be appreciated.
from tengo.
A dream coming true! Go for it 👍
from tengo.
Great. I will close this issue then. Thanks for the help!
from tengo.
Related Issues (20)
- provide compiled.CloneWithoutGlobals() or make compiled's fields accessible
- Is there a example on the use of `Regexp`
- VSCode Extention Support & Monaco-editor language support, EBNF is wanted.
- Does Tengo Playground support code format or code compress?
- [Performance Improvement] Using pool to avoid stack and frames memory allocation
- Any plan to add settrace() functionality to VM?
- Changing Owners? HOT 2
- Isolated VM possible ? HOT 2
- Ability to call a CompiledFunc from a UserFunc @kcsampson this functionality is now available in the `tengo2` branch. The `Callable` interface and `CallableFunc` signatures have changed, so you might need to update your code to support that, but you will be able to call back to tengo code from go code provided you make the call from the same goroutine the VM is running on. HOT 1
- Support for centralized configuration and shared variables in separate Tengo scripts HOT 1
- FromInterface support HOT 1
- bug:invalid jump position:0 HOT 13
- binaryop and equals diff HOT 1
- Lack of means to obtain vm context
- UX improvement: conditionalize the installation of rescue handler...
- [question] How can I register native type into script? HOT 1
- FYI: wasm-compiled tengo playground running in a browser HOT 2
- Allow removal of specific attributes from builtin module
- Is there a plan to develop a VSCode plugin for Tengo to support Tengo code debugging?
- Map-object methods
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tengo.