Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    Felix Queißner
    @MasterQ32
    ah wait, my fault
    nevermind
    okay, another question: can i somehow run the application synchronous with another UI "thread"?
    Curtis Wensley
    @cwensley
    as a hint, this: Binding.Property<Vector3>(nameof(Agent.Position)) is sometimes easier to write like this, so the type is inferred: Binding.Property((Agent m) => m.Position)
    Felix Queißner
    @MasterQ32
    yeah, but most probably i will have more than one type bound to the datacontext :P
    Curtis Wensley
    @cwensley
    Not sure what you mean how to run it synchronous with another UI thread.. do you have multiple UI toolkits in use or something?
    Felix Queißner
    @MasterQ32
    similar
    Curtis Wensley
    @cwensley
    btw, might want to move this over to #picoe/Eto
    Felix Queißner
    @MasterQ32
    i have OpenTK and Eto.Forms
    yeah, sure :D
    Felix Queißner
    @MasterQ32
    hey
    Curtis Wensley
    @cwensley
    hi!
    Felix Queißner
    @MasterQ32
    i'm having a problem with eto.parse again
    i'm using this grammar

    I have a problem with two rules:

    generic_type = name '<' expression_list '>';

    and

    binop = … | '<' | '>' ;
    if i change generic_type to not use < and > and use some other symbols instead, it works perfectly fine
    but right now, i can't get generics recognized
    the input to the grammar is this:
    type t = int<1,2>;
    Felix Queißner
    @MasterQ32
    any idea?
    Curtis Wensley
    @cwensley
    probably due to order of the alternatives, if the binop is matched, it will continue to the next rule but not rewind to try any other alternatives
    due to Eto.Parse being recursive descent
    Felix Queißner
    @MasterQ32
    hm, i understand
    how can i fix this? change the order of definition?
    Curtis Wensley
    @cwensley
    so if you can get it to try to match the generic type before the binop, then it should theoretically work
    rewinding is one feature I'd like to add to Eto.Parse so it'd better handle this situation, but that's a very complex task (;
    Felix Queißner
    @MasterQ32
    can you explain how to interpret the output from Match.Errors ?
    Curtis Wensley
    @cwensley
    it gives you a list of rules that are expected at that particular point in the string.
    Felix Queißner
    @MasterQ32
    okay, i have discovered match.ErrorMessage right now
    and i've found the problem: it's the closing >
    as it tries to interpret 2> as an expression instead of a end match
    Curtis Wensley
    @cwensley
    makes sense
    Felix Queißner
    @MasterQ32
    yep
    i think i can create an acceptable workaround by enforcing parenthesis for advanced expressions
    so i would have to do int<1,(2>3)>
    Curtis Wensley
    @cwensley
    are expressions really allowable there? or well I guess this is your own language not c# nevermind.. hehe
    Felix Queißner
    @MasterQ32
    yes, it's my own language :D
    C# only allows types for generics
    but i'd like to do a more C++esque approach by allowing any literal you can type and create expressions with
    what is the error index?
    Curtis Wensley
    @cwensley
    index in the string I believe.. it's been a while since i've used Eto.Parse so forgive me if I'm wrong. (;
    Felix Queißner
    @MasterQ32
    okay
    hmm
    i'm running into more problems :/
    Curtis Wensley
    @cwensley
    uh oh
    Felix Queißner
    @MasterQ32
    okay, i'm really confused
    Felix Queißner
    @MasterQ32
    now it seems that even function signatures are broken
    ArsenShnurkov
    @ArsenShnurkov
    cwensley: i love new implementation of "-" operation
    cwensley: I tried to switch to Pliant parser, because it's based on Earley instead of recursive descent, but their buggy library doesn't conform to standarts yet, so I stayed with Eto.Parse
    cwensley: I know that existing semantics of "-" differs from what ISO standart defines, but it works for me