From 8274196802ab816e17e25a30f7b232fb8f5a996f Mon Sep 17 00:00:00 2001 From: lkcl Date: Mon, 4 Oct 2021 11:59:38 +0100 Subject: [PATCH] --- 3d_gpu/architecture/dynamic_simd.mdwn | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/3d_gpu/architecture/dynamic_simd.mdwn b/3d_gpu/architecture/dynamic_simd.mdwn index 6a79f758c..55f4976a0 100644 --- a/3d_gpu/architecture/dynamic_simd.mdwn +++ b/3d_gpu/architecture/dynamic_simd.mdwn @@ -269,9 +269,10 @@ Mathod (1) is an alarmingly large amount of work with severe to catastrophic implications in multiple areas. Method (2) by complete contrast allows the Liskov Substitution Principle to -be put to surprisingly good effect. If that was possible to +be put to surprisingly elegant effect. If that was possible to achieve then **almost no modifications to nmigen would -be required**. +be required** because dsl.Module is *already* 99% abstracted in terms +of the lower-level Type 1 (ast.*) constructs. Analysis of the internals of nmigen shows that m.If, m.Else, m.FSM and m.Switch are all redirected to ast.py `Switch`. Within that function Mux and other "global" functions (similar to python operator functions). The hypothesis is therefore proposed that if `Value.mux` is added in an identical way to how `operator.add` calls `__add__` this may turn out to be all that (or most of what) is needed. -- 2.30.2