Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Mark Truluck
    @frame-lang
    Hello and welcome to the Frame community!
    Just getting started, but I'm going to be adding resources here soon. Please say hi and if you would like why you are interested in Frame or what you would like to know.
    Mark Truluck
    @frame-lang
    So I'm contemplating the next languages to add to the Framepiler. I'm going to do Rust first but any opinions on what the next should be?
    Mark Truluck
    @frame-lang
    An initial Rust implementation of this Frame spec
    Mark Truluck
    @frame-lang
    Atom Machine Maker v0.2.0 is now available: https://atom.io/packages/frame-machine-maker
    Mark Truluck
    @frame-lang
    John Yanarella
    @johnyanarella
    Congrats, Mark! Those are some huge milestones accomplished.
    Mark Truluck
    @frame-lang
    Thanks John!
    Would love to get any feedback - I know it is still rough :)
    Mark Truluck
    @frame-lang
    VSCode Machine Maker v0.3.0 release! Now saves both documentation and code to file as well as provides a copy button for easy copy and paste.
    Mark Truluck
    @frame-lang
    Created new repo for Frame examples: https://github.com/frame-lang/frame_solution_depot
    v0.4.1 branch increasingly stable and supporting Rust.
    Mark Truluck
    @frame-lang
    VSCode MM v0.3.1 released. Fixed important bugs with copy/paste and also stopped autogenerating files, instead providing a save to file button
    Mark Truluck
    @frame-lang
    The v0.4.1 release of the Framepiler is now available. This includes full Rust support and some new language features including a reference token '&'. https://github.com/frame-lang/frame_transpiler
    Mark Truluck
    @frame-lang
    @bradnelson Hey Bradley - I should have the v0.4.3 version of transpiler and editors out tomorrow. I am going to start to work on v0.5 which is going to focus on creating testing infrastructure and configuring the transpiler. I think your yaml is a good starting point so if you have additional thoughts lmk.
    Mark Truluck
    @frame-lang
    New versions of he transpiler and editors available now with much better UML image manipulation (zoom) as well as a few key bug fixes with code generation
    Bradley Nelson
    @bradnelson
    Sweet! Sounds great, I keep saying this but I think soon I'll get to further testing!! ><
    Mark Truluck
    @frame-lang
    no worries :) And just lmk whats top priority for config as that is the theme for 0.5. I'm going to make all codegen to be as modifiable as possible but don't know what else you might like in there.
    Bradley Nelson
    @bradnelson
    Yeah, I think the yaml file could work. A lot of the needs could also be covered by the attribution system you added recently also, that seems to be pretty handy and could cover a lot of language- or system-specific fine-tuning. Both are decent options IMO.
    Mark Truluck
    @frame-lang
    There will be a meetup at 7PM PT on July 14 to introduce Frame. I plan to do one every other week for people interested in connecting: https://www.meetup.com/seattle-software-architecture-and-modeling/events/279096204/
    Mark Truluck
    @frame-lang
    @bradnelson @walkie So I took some time to experiment with a new pattern for the state machines which would solve a key problem for non-reactive applications that I'd like to get your thoughts on.
    Basically if you write a machine that is called once and it just iterates through states then the stack will eventually blow up due the the way the enter event handler works. If you transition in it, you leave the previous state on the stack.
    I've got a proposal that fixes that and I wrote a couple of test cases.
    The solution is to 1) make all transitions "asynchronous" and are put on a queue rather than executed immediately and 2) introduce a machine() method that is a choke point for all events coming out of the interface into the state machine which execute any transitions queued in the last state call.
    Mark Truluck
    @frame-lang
    I'm sure there are ways to completely bugger yourself but hope that might be handled in the parser to detect.
    I'm also thinking to keep both codegen options and make it configurable which you want. In the future I want to support multiple output formats so this would be a first instance of that capability.
    Thoughts?
    Bradley Nelson
    @bradnelson
    yeah, fernando took a look in there and we think that makes sense :thumbsup:
    Mark Truluck
    @frame-lang
    cool thx
    Mark Truluck
    @frame-lang
    Checked in v0.5.1 a lot of cleanup of rust formatting. Haven't exhaustively gone through the options so send me samples to fix.
    Also now generate a config.yaml file from the internal default if one is not found and load parameters from it if it is.
    I think I'm feature complete for this release so starting testing
    Bradley Nelson
    @bradnelson
    Exciting! I'll start testing from your branch later today! I had to make a few modifications to get the latest state machine I'm working on to run, I might submit a patch (if the problem is still there). I think Eric possibly has a PR queued up as well that might be nice to get into the release.
    Mark Truluck
    @frame-lang
    I have merged Erics PR too
    LMK if you guys would like to meet sometime this week to discuss progress and roadmap
    Bradley Nelson
    @bradnelson
    I think Eric had another PR he was holding on to, and I have made a few minor mods as well to send your way (but I made my mods off of Eric's fork, lol). Probably no big deal, up to you if you want to wrap the release go for it!
    Eric Walkingshaw
    @walkie
    I think the PR I was working on needs more discussion before we send it your way. We want some mechanism for generically monitoring state transitions and my PR provides a way to do this by generating hook functions that will be called on each transition. But there are some drawbacks to this approach and we discussed an alternative callback mechanism quite a bit too. I definitely think we should sync up with Mark at some point soon about this since it's a pretty subtle design decision that it'd be good to get right.
    I agree with Brad though, we shouldn't let this block your release!
    Mark Truluck
    @frame-lang
    I'm not under any pressure to get the release out - nothing is hinging on it and I'm just doing more of the tidying Fernando requested to comply with rustfmt right now. So we can take the time to consider the right approach.
    Mark Truluck
    @frame-lang
    @walkie @bradnelson here is a link to the talk I've been giving on my meetups: https://docs.google.com/presentation/d/1PgjP6WvR1W0i0B_RiWLPEWQtHKUPvtGsku8ziZmEEN8/edit#slide=id.p
    There is a roadmap slide which might be useful for the discussion today
    (available for all to checkout)
    Eric Walkingshaw
    @walkie
    Thanks for sharing the talk slides, Mark. Super helpful to see your motivation and long-term vision.
    I ran a programming languages reading group at OSU for the last several years and coincidentally, one of the papers we read just a few months before I left was Harel's statecharts paper, so it was really fun to see this come up again. :-)
    Mark Truluck
    @frame-lang
    Cool. I've interacted w/ Harel a couple of times asking for permission to use images from his paper, which he graciously gave. Also thanked him for all the great ideas! A very gracious man.