there are so many cores

Just another WordPress.com site

Need another parsing stage

Another parsing stage is required just after the front-end bytecode and before anything else. This is where duplicate subgraphs in the execution trace are identified using a memo. This is generally useful for both interpreting and kernel assembly. The interpreter avoids recalculating results using the memo as it recursively traverses the execution trace. In a similar fashion, kernel assembly avoids duplicated reductions.

The current design goes directly from stack machine bytecode to the interpreter and JIT. While this keeps the front-end simple, it also forces syntactical analysis (identifying structure in the execution trace like identical subgraphs) deep into the middle-end and back-end where it does not belong.

As usual, if a design does not feel right, then it is probably wrong.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: