Hi Michel,

Really appreciate all the hard work you're putting into this! And the
metrics look very good, but ...

I think what I really need to see as "proof of viability" for this project
is that the guts of MetaModel is converted. Here I'm thinking about the
essential "engine" classes such as QueryPostprocessDataContext and
MetaModelHelper. Without those, we just have an empty shell around an
engine that's not implemented. So probably my advise would be to worry less
about a complete conversion. I think C# has a ton of language features and
libraries that we'd want to take advantage of when there is a more viable
project. So converting MM 1-to-1 doesn't even seem like a really good idea.
Rather we should convert the engine parts and then build up something
native to C# around it. Does that make sense? Once we have that, there's
something "working" that anyone can contribute to too. At that point I
think it would be the time to have a discussion and vote on making it a
subproject. I hope this does not discourage you at all. As said, I really
think you're putting some good effort into this - I just want to bring your
focus to the engine side instead of all the rudimentary features that might
not be needed in the same way in .NET.

Best regards,

2017-08-09 8:43 GMT-07:00 Michel Kern <echoprax...@gmail.com>:

> Hello Core Team
> I've just published update 0.0.1 of the C# port prototype on Github (
> https://github.com/Echopraxium/apache_metamodel_dotnet_core_bud)
> It would be very nice if the core team could allocate some time to review
> the code and give a feedback regarding the viability of this prototype as a
> candidate subproject of Apache MetaModel. Please find below some metrics
> which give an idea of the target codebase vs original codebase.
> * Metrics :
> - 120 java source files ported in C#
>   - 29% of the 'core' package of Apache MetaModel (416 java source files)
>   - 16% of the full code base (748 java source files, including
> implementation of connectors like 'Jdbc', 'Json', etc...)
> - 43 'helper' classes (to emulate java classes without a .Net equivalence,
> these classes are prefixed by 'N', e.g. (e.g. Java's 'Number' class
> converted to 'NNumber')).
> Best Regards
> Michel Kern (echopraxium)

Reply via email to