Comments (14)
Not familiar with Go + Luajit together. I want to see an example that go streams []bytes to luajit code and get output as []byte, probably via an external luajit process.
from glow.
well...right now i'm not ready to answer your question, but maybe this projects helps: https://github.com/mozilla-services/heka
p.s.: what would be nice - to have ability to make custom DSL or just make some strict rules for built-in scripting language to defines flows without recompilation. e.g.: we need daemon that spawn calculations with flows. flows will be changing time from time and recompilation is not possible in our case. So we are just looking for solution. Your library is looking very powerful and yet easy to learn.
from glow.
Probably worth mentioning at this point that (unless I missed it on the dependency graph) LuaJIT would be the first cgo dependency glow has, thus complicating the build process and bringing all of the other fun nonsense that cgo comes with. If he's looking to keep the library pure-go, this isn't going to happen. There are pure-go Lua VMs, but none of them are on par with the C interpreters.
from glow.
If going with LuaJIT, this would be a separate github project.
from glow.
there is also another library about "flow", but mainly about flow programming: https://github.com/trustmaster/goflow
Well, so maybe i miss something, but is it possible to:
dynamically "recreate" flow without recompilation? E.g.: we have UI to build flow for processing incoming data. As output of designed at UI flow we have something: DSL, json or whatever. After submit, "daemon" reload logic and recreate flow as designed. We can't have compiler to recompile each time. So any ideas?
from glow.
@alaska the problem with pure Lua VM is in speed, i suppose. LuaJit is very fast. If we omit speed, then any other language can be taken, e.g. javascript. I started topic about LuaJit because it's already using at projects where speed is critical:
tarantool, nginx, snabb switch, luvit.io, terralang and etc.
So it's already battle tested in highload. But if we are talking about our case - we need good speed, but also we need dynamic behaviour - ability to reload flow after some actions at UI side. I like Glow for learning curve - very easy to set/use, but right now can't decide how it can help us :(
we need maybe only small subset of functionalities - something like mini DSL to add some kind of UI to build/use it. For more advanced cases - golang is still the right way.
I'm thinking about something like this: http://leafo.net/guides/dsl-in-lua.html
from glow.
working on https://github.com/chrislusf/gleam
It's a Glow + Luajit combination. Currently only single computer only. Please try it out first.
from glow.
Wow, will try it soon. Looks like totally separate project. Looking forward for benchmarks :) it would be nice to see cons/pros of each library :)
Sent from iPhone
On 12 Sep 2016, at 08:17, Chris Lu [email protected] wrote:
working on https://github.com/chrislusf/gleam
It's a Glow + Luajit combination. Currently only single computer only. Please try it out first.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.
from glow.
@chrislusf is gleam the future of this project, or are they both active in separate lines?
from glow.
@tejasmanohar Glow is left as is. It is working fine by itself. But the performance is about 10x or 20x slower than Gleam.
from glow.
@chrislusf sorry for issue hijacking :) - but more what i meant is... is there any reason you'd use glow over gleam once gleam becomes more mature / finishes up features on roadmap?
from glow.
Glow has nice syntax and is more suited to some pure Go advocates' taste. That's it.
from glow.
Gotcha, cool! Do Glow/Gleam optimize for in-memory computations or ...? Do you have any benchmarks on how this compares to something like Spark?
from glow.
from glow.
Related Issues (20)
- Fold operation HOT 3
- Add unit tests for moderately complex APIs across the code base HOT 8
- Fix the timing out flakiness revealed in dataset_map_test.go HOT 2
- document failure/retry modes in distributed use HOT 1
- Consider reduce the number of Travis CI builds HOT 3
- any plan for hive like execution engine? HOT 2
- Is there a means of teeing the flow? HOT 3
- All the work is done by only 1 node HOT 2
- Read size invalid argument - expected data input? HOT 7
- Issues at start_local_glow_cluster.sh HOT 2
- Doing partial reduceByKey in Flow created in func init() HOT 3
- How to make it working for multiple split logs HOT 2
- Glow support a time window like the Flink?
- glow使用与部署方法怎么处理? HOT 3
- Has it been used in the commercial production environment so far?
- glow run block when read big file data to mysql HOT 2
- Glow support for elastic search
- feature requiest: type i to enter editor mode
- update instalation instructions since go get is not longer surported HOT 1
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 glow.