[M3devel] 32bit host 64bit target TextLiteral recurring problem
Darko Volaric
lists at darko.org
Fri Jun 5 13:07:20 CEST 2015
I guess it depends on your level of skills, but source to source compilers
aren't that challenging. The more important point is that exercise might
focus Jay's mind on the the complexity and desirability of those features.
It's all fine talking about them in the abstract, it's completely different
when you get down to brass tacks.
On Fri, Jun 5, 2015 at 1:24 AM, Elmar Stellnberger <estellnb at elstel.org>
wrote:
> Am 04.06.15 um 20:32 schrieb Darko Volaric:
>
>> You really should try writing your own language, it's really not that
>> hard.
>>
> Darko, you are dreaming. Writing a small demo compiler may be one weeks
> job.
> However writing something that implements all that your hart desires will
> be
> very hard to do if at all doable for a single person.
>
> M3 will never give you satisfaction. You've already implemented a C back
>> end and no doubt have an idea of how a compiler works.
>>
>> As for language features, I think we should be looking for features to
>> remove.
>>
>> Jay, with a little more time I would have been at your side in a first
> place!
> A couple of years ago I had some own plans for a M3/Pascal like language
> with similar or even more venturous properties.
>
> 1) operator overloading -- C++
> 2) templates with type deduction (i.e. C++ function templates, not just
> class templates or generic modules) -- C++
> 3) a small easy to understand language -- not C++, maybe Modula-3
> 4) a small easy to understand compiler (m3front I don't understand) --
> nowhere
> 5) fast compilation -- Modula-3
> 6) optional safey -- Modula-3
> 7) multiple inheritance, at least of "interfaces" -- C++
> 8) optionally stack or inline allocation of "classes"/"objects" -- C++
> 9) clear choice of build system -- Modula-3 perhaps
> 10) locals with destructors -- C++
> 11) clear portable choice for remoting/RPC -- Modula-3 perhaps
> 12) needs backend work -- Modula-3 perhaps
> 13) a small easty to understand backend -- Modula-3 perhaps kinda sorta
> 14) ?safety w/o garbage collection? -- rust??
> 15) static compilation for type checking -- C++, Modula-3, Java, Go, C#.
> Not Python/Perl/Ruby/Erlang/sh/Tcl.
> 16) static compilation to native code, maybe -- C++ and Modula-3! Go?
> Net.Native?
> 17) non-virtual member functions -- not C or Modula-3
> 18) virtual member functions -- C++, Modula-3
> 19) safe numbers? Scheme?? C++ w/ library? (with operator overloading)
> 20) clear/portable choice for threads -- Modula-3, C++14? Java. Geez C++
> was late here.
> 21) clear/portable choice for interlocked -- Win32, msvc gcc; Modula-3
> and C are decades late.
> 22) good string library
> 23) good regex library
>
> Nonetheless I wanna see what can be done with Modula-3 in its current
> state. -
> and I believe it already offers some interesting properties compared to C
> like
> f.i. range checking and better type safety which could make a difference
> for
> security relevant projects like f.i. a web browser. The only thing that
> would be
> necessary for such a project was a *** well tested and ready-to-use
> shipped ***
> GUI toolkit ...
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20150605/adeb8ff7/attachment-0002.html>
More information about the M3devel
mailing list