larrytheliquid / dataflow Goto Github PK
View Code? Open in Web Editor NEWDataflow concurrency for Ruby (inspired by the Oz language)
License: MIT License
Dataflow concurrency for Ruby (inspired by the Oz language)
License: MIT License
Hello,
I'm trying to run dataflow on ruby-1.9.2-head but run into issues:
ruby-1.9.2-head > require "dataflow"
~/.rvm/gems/ruby-1.9.2-head/gems/dataflow-0.3.1/dataflow.rb:63: warning: undefining `object_id' may cause serious problems
=> true
ruby-1.9.2-head > include Dataflow
=> Object
ruby-1.9.2-head >
ruby-1.9.2-head > Ping = Actor.new {
ruby-1.9.2-head > 3.times {
ruby-1.9.2-head > case receive
ruby-1.9.2-head ?> when "Ping"
ruby-1.9.2-head ?> puts "Ping"
ruby-1.9.2-head ?> Pong.send "Pong"
ruby-1.9.2-head ?> end
ruby-1.9.2-head ?> }
ruby-1.9.2-head ?> }
=> #<Dataflow::Actor:0x000001019623d0 run>
ruby-1.9.2-head >
ruby-1.9.2-head > Pong = Actor.new {
ruby-1.9.2-head > 3.times {
ruby-1.9.2-head > case receive
ruby-1.9.2-head ?> when "Pong"
ruby-1.9.2-head ?> puts "Pong"
ruby-1.9.2-head ?> Ping.send "Ping"
ruby-1.9.2-head ?> end
ruby-1.9.2-head ?> }
ruby-1.9.2-head ?> }
=> #<Dataflow::Actor:0x0000010193f5d8 run>
ruby-1.9.2-head >
ruby-1.9.2-head > Actor.new { Ping.send "Ping" }
=> #<Dataflow::Actor:0x000001019382d8 run>
ruby-1.9.2-head >
ruby-1.9.2-head > Ping.join
fatal: deadlock detected
from (irb):27:in `join'
from (irb):27
from ~/.rvm/rubies/ruby-1.9.2-head/bin/irb:17:in `<main>'
ruby-1.9.2-head > Pong.join
As you see, first I got a warning on require, then Ping.join complain about some deadlock, the last instruction never ends. Is it even supposed to work on ruby 1.9.x or is dataflow meant for jruby only?
It would be really nice to have syntax highlighting for the README snippets.
I am not sure how to do that in Textile, but doing it in GFM is trivial. I might do a PR if you are OK with converting the README to Markdown.
Just by installing and require 'dataflow'
on Ruby 2.6 I get the following message:
c:/rubies/Ruby26-x64/lib/ruby/gems/2.6.0/gems/dataflow-0.3.1/dataflow.rb:63: warning: undefining `object_id' may cause serious problems
I suppose this warning was added in some recent version of Ruby.
Sounds scary.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.