craouettecraouette Posts: 113


I really like blocks... but there is a problem with the naming.
In the current version, "Block" is used for two very different things:

  • Block that defines what is the minimum requirement for an instance of a block to be used in a given situation;
  • Block that defines an instance, an implementation of this interface.

The distinction can be found in the API, with ExecBlock ans InstBlock.
Following Java naming, the 1st one is Block Interface and second one is Block Implementation. Or it can be Block Template and Block instance... whatever, but I really thing the whole concept will benefit with a different name for the two concepts.
And one question: what is the plan for porting Block to PEX. As far as I see it, you will have to annotate all presets as PEX compatible or not. Or let the user decide and create PEX Block Instance...

Blocks are really a huge step forward... changing the name is not mandatory of course, but it will make think clearer, easier to understand.



  • Kevin TureskiKevin Tureski Posts: 126 ✭✭

    Thanks for the feedback Pierre. I've made a note to ensure that Peter sees this when he is back from vacation. As to Blocks & PEX, we wanted to get Blocks into the hands of users as soon as possible so that we could get feedback that would help improve the implementation. Peter already has a design in mind for"PEXification of Blocks". As should come as no surprise, it is a big chunk of work and one we are not putting a timeline on yet.

  • pzionpzion Moderator, Fabric Employee Posts: 118 Fabric Employee

    Hi Pierre, thanks for your input here. I agree that more precise terminology would help clarify things, both in the UI and in the documentation. At the same time, we don't want users to need to understand the distinction in the case that they don't really need to, which will usually be the case -- for instance, most users will probably learn to just "fill in the block" and will never actually create their own presets that expose "ExecBlocks" ("block interfaces" as you have suggested). In any case, we'll keep considering what the right way is of exposing this in the UI and documentation; perhaps using "Block" to refer to what the API terms an "InstBlock", and using "Block Interface" to refer to what the API terms an "ExecBlock"?

    Peter Zion
    Fabric Engine

  • pzionpzion Moderator, Fabric Employee Posts: 118 Fabric Employee

    Also, yes, PEX support may require that the block have flags set indicating whether it can safely be executed in parallel, although we will see if there are cases where this can be automatically determined.

    Peter Zion
    Fabric Engine

  • craouettecraouette Posts: 113

    thanks peter for the answer. it was just my 2 cents note.

Sign In or Register to comment.