music
OSdata.com: programming text book 

OSdata.com

Forth implemented in JavaScript

summary

OSdata RSS
News Feed


OSdata blog RSS.

OSdata blog RSS - add to Bloglines
OSdata blog RSS - add to Google Reader.
OSdata blog RSS - add to My AOL
OSdata blog RSS - add to Newsgator.

Free open source version available at http://www.osdata.com/milo.html

    This is a new open source code project.

    The first step is to create a working version of Forth in multiple modern programming languages (starting with JavaScript).

    How does this help you?

    Threaded Interpreted Languages (TILs), such as Forth, can be deployed to new platforms very quickly.

    This will allow you to get your software up and running on new devices quickly.

target audience

    I will use two specific target audiences to demonstrate the power and utility of this software: game developers and hackers/crackers.

    This is part of an instructional series on the building of a Forth programming environment in any standard browser using JavaScript.

    Threaded Interpreted Languages (TILs), including Forth, are designed for customization.

    In addition to writing your own Forth programs, please modify the underlying engine to meet your specific needs.

    Please have fun with this project. Make it your own.

    The most recent version is at stable release version or http://www.twiddledom.com/coder/js78.html

    Free Open Souce: Licensed under MIT license. License printed in full below.

previous page   next page
previous page
Outrageous Coder
  next page
basic structure of HTML
Google

Forth implemented in JavaScript

summary

    Outrageous Coder is a new open source code project.

    The first step is to create a working version of Forth in multiple modern programming languages.

    After some experimentation I am exploring the idea of implementing most of this project in JavaScript.

    It will be much easier for the poor and the homeless to work in JavaScript, because they can download the .html files, modify them, and run them locally in a web browser. Because this requires no installs of software (especially compilers and IDEs), this is something that can be done from a typical school or library computer. Those who have access to a website can upload their files.

Threaded Interpreted Languages

    Forth is the most famous example of a Threaded Interpreted Language (TIL).

    In TILs, instead of writing software in a programming language, the programming language is extended until it becomes the desired program.

    Another difference between most TILs (particularly Forth) and typical programming languages is that TILs expose the programmer to internals, including a stack machine. This has the huge advantage that the programmer can freely modify and extend the internal mechanisms of the programming language.

    TILs make it possible to very quickly deploy software on new platforms.

    Charles Moore used Forth for years before its public release to rapidly move to new computers. Major advances in computer science and computer architecture were occurring rapidly throughout the 1960s, with manufacturers coming out with new models and architectures annually or even faster.

    Charles Moore only had to implement the inner interpreter and a few basic primatives on a new processor to have his language, tools, and entire development environment up and running in less than a couple of days.

return to Outrageous Coder

previous page   next page
previous page
Outrageous Coder
  next page
basic structure of HTML

contact
comments, suggestions, corrections, criticisms

because of ridiculous spam attacks,
contact through Twitter (@OutrageousCoder) will be more reliable than the contact form

please contact us

your name:
email address:
phone number:
message:

return to table of contents
free downloadable college text book

license

    This is example code from OSdata, This Side of Sanity, and Twiddledom, released under the MIT License.

    Copyright © 2014, 2015 Milo

    Licensed under the MIT License. You may obtain a copy of the License at

        http://opensource.org/licenses/MIT

    The MIT License (MIT)

    Copyright © 2014, 2015 Milo

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

previous page   next page
previous page
Outrageous Coder
  next page
basic structure of HTML

Google


Made with Macintosh

    This web site handcrafted on Macintosh computers using Tom Bender’s Tex-Edit Plus and served using FreeBSD .

Viewable With Any Browser


    †UNIX used as a generic term unless specifically used as a trademark (such as in the phrase “UNIX certified”). UNIX is a registered trademark in the United States and other countries, licensed exclusively through X/Open Company Ltd.

    Names and logos of various OSs are trademarks of their respective owners.

    Copyright © 2014 Milo

    Created: September 25, 2014

    Last Updated: May 5, 2015


return to table of contents
free downloadable college text book

previous page   next page
previous page
Outrageous Coder
  next page
basic structure of HTML