Bootstrapping Forth on JVM, .NET CLR, etc.

forth

    Sponsored Links

    Next

  • 1. Froth running under Windows XP
    I was trying to get WFroth to run on my XP machine and it opens a DOS box and gives the error, "Program too big to fit in memory". I have added all three types of DOS memory and I still get the same error. Obviously the problem is not a lack of memory. Any ideas? I don't recall where I downloaded this program. I guess I could go back and try to find some documentation. I have a file that is supposed to be source, but it seems to be an output from a Microsoft tool and says not to edit the file. I don't see anything useful in this file in the way of installtion information.
  • 2. SwiftForth vs. SwiftX
    My immediate need is to write a few lines of code to read in BOMs and compare them. I tried using Codewright, but the lines contain a lot of superfluous data and are often flagged as changed rather than added or deleted. So I want to write my own simple program to read in two BOMs and give me the true differences. I know that SwiftX is for embedded development and SwiftForth is for Windows programming. Obviously I can do this with SwiftForth. But I have no other use for SwiftForth. On the other hand, I would like to have a copy of SwiftX for the ARM. But I don't actually know if I can write programs under SwiftX that operate on host files and display results and/or write back to files. If it can do that, then I can kill two birds with one stone, or more accurately, I can get this tool in house and have it for later when I am doing ARM development. I'm not looking for anything to write complex code or provide fancy GUI interfaces. I would be happy with basic command line functionality that can open, read and write files on the host. Can I do that with SwiftX? I am asking here because everyone at Forth Inc seems to have taken an early lunch today. I bet I get an answer here before I get a return phone call from Forth Inc!

Bootstrapping Forth on JVM, .NET CLR, etc.

Postby joel reymont » Tue, 07 Aug 2007 14:38:01 GMT

Folks,

Suppose I wanted to bootstrap a Forth on a JVM, .NET CLR or another
existing VM.

Where would I start?

I'm learning Forth on a Mac (gForth) and don't want to use Windows.

My goal is to create a network link from my Mac to the target VM for
interactive development with cross-compilation and debugging happening
locally.

    Thanks, Joel


Re: Bootstrapping Forth on JVM, .NET CLR, etc.

Postby joel reymont » Tue, 07 Aug 2007 15:53:42 GMT

To be more precise... Suppose I started up gforth and I'm at the
interpreter prompt.

I want EXECUTE to generate the appropriate bytecode and run it on the
linked VM.

How do I make sure that EXECUTE is not the one that gforth supplies?

Do I hack at the gforth source code to build the cross-compiled Forth
and if so then is gforth the right Forth to start with?

I see no reason to re-implement the "outer interpreter" (right
expression?) and would like to let gforth parse my Forth code. I can't
envision how I would replace the code generation part, though.

    Thanks, Joel



Re: Bootstrapping Forth on JVM, .NET CLR, etc.

Postby Dmitry Ponyatov » Fri, 10 Aug 2007 03:01:27 GMT

You can use your own byte-code interpreter (a.k.a. inner interpreter =
engine = virtual machine) written in Java/C#, and cross-compiler
written in FORTH which generates byte-code from Forth-like language


Re: Bootstrapping Forth on JVM, .NET CLR, etc.

Postby Dmitry Ponyatov » Fri, 10 Aug 2007 03:04:52 GMT

at  http://www.**--****.com/ 
build upon this principle -- simple virtual forth machine in C with
some C++ elements and cross-compiler for SP-FORTH (I still now
understand vocabularies and use lower-cased words for FVM commands and
some non-standard language elements like { } var const buffer)


Similar Threads:

1.JVM vs CLR

2.Micro Focus COBOL runtime, /clr:pure, etc.

Pete raised this issue in another thread, and coincidentally I ran
smack up against it yesterday.

A .NET application compiled using the Micro Focus Net Express add-in
for Visual Studio will not run on a system which lacks the Micro Focus
COBOL runtime DLLs. I infer from the reference to accountants, that
the cost per seat to license the runtime is high. This rules out
redistribution on my part.

Interested developers could just download and install the same free
tools as I've already used to create my non-commercial project. I've
posted instructions on the Barbarian's CodePlex page, which explain
how to acquire and install these tools: Net Express 5.1 Personal
Edition, and the Visual Studio Shell which is its minimal requirement
for installation.

Granted, nobody should do this while on the clock. My application is a
toy.

Tell me, though, does the Micro Focus COBOL compiler have any command
line option similar to /crl:pure? This compiler option for Visual C++
2008 generates assemblies which run with nothing more than the .NET
runtime.

One last technical question. When working with other languages, the
command line arguments for the compiler are displayed in Visual
Studio's project properties. Does the Micro Focus add-in provide this
feature somewhere?

If I've violated the Net Express Personal Edition license agreement by
releasing a Micro Focus-dependent EXE to CodePlex, somebody please
tell me, so I can kill that project now.

Thanks.

 - Matt Fisher

3.a tutorial on bootstrapping forth?

For a while now I've been trying to find a good tutorial on implementing a
forth system from scratch.  I haven't found one yet so I decided to ask here
and see if anybody knows of one.

From my research I've learned about the inner/outer interpreters.  I've even
heard that some people have written extremely basic forth compilers in
assembly that support only a handful of words (e.g. get/set a byte, colon,
semicolon and a few others) and then they "cross-compile" forth code for
the two interpreters into full featured Forth system.

Does anybody know what the minimal set of words would be for the
"cross-compile" bootstrapping method?  Does anybody know of forth source for
an inner and outer interpeter combo?

Thanks,
Dave



4.Forth bootstrapping framework - Bootforth

5.Bootstrapping a Forth in 40 lines of Lua code

6. Cleaning up ANS Forth variables, values etc

7. Fw: Using Forth to send a windows message to a MS application (spell checking etc)

8. cat-v.org FORTH v GO plan9 etc



Return to forth

 

Who is online

Users browsing this forum: No registered users and 99 guest