From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 107f24,6f568a2e6507575 X-Google-Attributes: gid107f24,public X-Google-Thread: f891f,6f568a2e6507575 X-Google-Attributes: gidf891f,public X-Google-Thread: 103376,6f568a2e6507575 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-04-25 00:42:07 PST Path: newsfeed.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.skycache.com!Cidera!portc03.blue.aol.com!uunet!dca.uu.net!news5-gui.server.ntli.net!ntli.net!news11-gui.server.ntli.net.POSTED!not-for-mail Message-ID: <3AE67F57.722A78D8@andrewcooke.free-online.co.uk> From: Andrew Cooke X-Mailer: Mozilla 4.7 [en-gb] (WinNT; U) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.lang.ada,comp.lang.functional,comp.lang.misc Subject: Re: Thoughts and Opinions or something like that References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Date: Wed, 25 Apr 2001 08:40:07 +0100 NNTP-Posting-Host: 213.107.111.32 X-Complaints-To: abuse@ntlworld.com X-Trace: news11-gui.server.ntli.net 988184221 213.107.111.32 (Wed, 25 Apr 2001 08:37:01 BST) NNTP-Posting-Date: Wed, 25 Apr 2001 08:37:01 BST Organization: ntl Cablemodem News Service Xref: newsfeed.google.com comp.lang.ada:6912 comp.lang.functional:5275 comp.lang.misc:1123 Date: 2001-04-25T08:40:07+01:00 List-Id: Things I'd like from a VM (off the top of my head - I don't use VMs directly and I have no idea whether the following are possible): - garbage collection - support for coroutines (no single stack restrictions) - support for tail recursion (the last two are known problems with the JVM, I believe). If you want to concentrate on your language, rather than writing the VM, you could target an existing machine - apart from the obvious .net and JVM, you might consider C-- Andrew "chris.danx" wrote: > > Hi, > Someone on these news groups suggested to someone that in order to make a > reliable Virtual Machines, they needed the opinions of many programmers in many > languages. {Can't remember who, some of those threads get huge and i get lost! > Good idea who ever it was!} > > I'm involved in a project to develop a VM and i was looking for peoples thoughts > on this. I've started with a simple RISC machine that's not finished yet. I > will complete this soon, but i've been thinking my approach is flawed. Not to > say RISC is bad, but maybe it's too simplistic or lacks specific support for > features that'd make it A:more efficient and B:easier to program. > > The language project will support the following imperative features: > > - For/While loops > - Procedures > - side effect enabled programming (variables) > - "tidy" pointers > - modes for parameters (only for procedures, functions nonmodified params) > - Generitcity (polymorphism) > > and the following functional features > > - pattern matching > - side effect free programming (values) > - higher order functions > - guards > - Algebraic types > - N-Tuples > - Genericity (polymorphisism) > > and the following "not sure" or "in many paradigms" features > > - Units bound to values/variables > - Lists [] > - Arrays <> > - Records > - Sets (and Records as Sets) {} > - Enumeration types (with extensiblity and subtyping) > - Subtyping > - Relational programming (some paper i really liked described it, prologish > but somewhat different) > > This list is quite exhaustive and i know it doesn't look that nice now, but the > work i've done so far seems to indicate this is all possible and looks nice too. > The major stumbling block is state->stateless programming but i'm looking and > trying ideas out. Something will be done; whether or not it's pretty is another > matter. > > I know many folks get annoyed when they here about "yet another new language" > but this is not about the language itself. It is about me learning about all > this stuff and seeing what i can do with a big collection of (sometimes > unrelated) issues and see what can come of it. > > The real problem is the VM, so i'm looking for peoples thoughts on this. What > concepts would you have found useful, and what you'd rule out. > > Please feel free to ignore this if you don't want to contribute (i know you will > anyway). > > Regards, > Chris