martin | 3 May 16:58 2009
Picon

Re: Another Crazy Colorforth Project


--- On Mon, 4/6/09, David J. Goehrig <dave <at> nexttolast.com> wrote:

> As an added bonus, I'm working on a translator that allows
> you to type Javascript and have it auto converted to
> Newscript.  So you can build objects in a shared
> programming environment, and then compile them to native or
> emulate in the browser depending on if you want speed or
> not.

Is this being coded to the ECMAScript standard ?

David Goehrig | 1 May 18:30 2009

a few thoughts on the future

After re-reading all of Jeff Fox's excellent site this week, it struck
me that his email exchange with Sean Pringle about the Flux and Aha
editors strikes at the heart of the issue in using "modern" forths for
productive work.  Let me qualify "modern" as all those forths that
have adopted Chuck's VM new style, with memory access registers, short
stacks, and macro support.  The key issue for using these new forths
is the editor.  Probably the greatest contribution colorforth has made
to the world of forth is it challenges our preconceptions of what an
editor can and should be.

Recently my server crashed, dead harddrive, and I  took a page from
Brad Nelson's Rainbow Forth and ported my NewScript environment to
Google Apps.  To my knowledge, this is the 3rd "modern" forth that
runs in a web-browser, after Charles Childers's Retro Forth, and
Brad's Rainbow.  What we are seeing is that the easiest way to
distribute Forth can be a webbrowser.  Chuck in 1993, in his 1x Forth
talk, mentioned that he thought that the application du jour was a
webbrowser, and it seems that the application du jour is now Forth in
a web browser.

What these forths all have in common is that they are attempting to be
accessible.  Charles' Retro Forth was brilliant in that the same VM
could run on a wide variety of programs, and that the code that worked
in the minimalistic webbrowser version, could also run as native code.
 Brad's Rainbow Forth in its Google Apps incarnation allows for
multiple programmers to collaborate in a shared space, using an
interface very similar to Chuck's beautiful colorforth interface.

What struck me about all of these interfaces though, is that they're
still basically stuck in 1968, when a Teletype Corporation ASR 33
(Continue reading)

vaded | 4 Apr 20:53 2009
Picon

List of CF compatible hardware

Hey list,

It's been kind of quiet here lately.

Anyway, I remember I had previously come across a list of hardware
tested to work with CF (I think it was version 1 but that's okay).  Does
anyone remember and have the url for what I'm talking about? Thanks. 
And if you have any recent hardware experiences with CF 2 please do
share.

John Comeau | 7 Mar 03:00 2009
Picon

cf files identical

Has anyone noticed that OkadWork.cf and QuertyOkadWork.cf are
identical? I mean down to every exact byte; the sha1sums match.

I was going to see what the difference was between them, and was
surprised to find that.

I'm not running Windows, but I'd guess that, if their behavior is
different, it's only because CF2.exe triggers on the filename to
decide which keyboard layout to make default.
--

-- 
John Comeau <jc <at> unternet.net> http://jc.unternet.net/
"A place for everything, and everything
all over the place"

John Comeau | 5 Mar 00:03 2009
Picon

OkadWork.cf disassembled

For those of you itching to get a native-booting version of
OkadWork.cf, and haven't been able to make a disassembly that reliably
reassembles back to the boot code of OkadWork, check out
http://unternet.net/cf2/. I'm not sure I got the non-code sections all
separated out, but I've verified that the disassembly made with
Albert's cidis compiles to an identical binary (.bin vs .cfboot) using
cias. So as long as you change code in such a way as not to mess up
any offsets, by making your changes fit the same space as the original
code (check with cmp -l, as in the Makefile), you can test different
video modes and such. Thanks to Albert van der Horst for the new
release of ciasdis!

For those to whom all of this is gobbledygook: OkadWork.cf is the
latest version of ColorForth, released by Intellasys in 2008,
superceding the 2001 binary from colorforth.com and the 2005 binary
contributed by Jeff Fox. The programs "cias" and "cidis" are the
"computer intelligence" tools from Albert van der Horst, symlinks to
ciasdis. They assemble and disassemble 80x86 code in a symmetric
manner, such that what you disassemble can be reliably reassembled to
every exact bit and byte. The syntax takes some getting used to, but
is well documented in the Lina (ciforth for linux) postscript and PDF
docfiles.

If you're still lost: make some effort to see what's going on, then
reply to me or to the list with specific questions. Thanks!
--

-- 
John Comeau <jc <at> unternet.net> http://jc.unternet.net/
"A place for everything, and everything
all over the place"

(Continue reading)

Ouatu Bogdan | 19 Feb 09:01 2009
Picon

database and forth

Hi!
about database and forth, i remember that in 'Forth Dimensions'  is 
something:
http://www.forth.org/fd/contents.html
- search for 'database'

have a nice day!

David J. Goehrig | 17 Feb 02:06 2009

yet another colorforth

So my new colorforth dialect is compiling itself, and I've got a couple screen shots up on a website.

http://newscript.org

It differs from Chuck's Colorforth in a number of ways, but owes a huge debt to it in terms of programming
philosophy and spirit.  Probably the most significant departure is in how color is applied to words. 
Rather than having a bunch of different space bars, I use space, tab, and enter in different combinations
to change the case of the word.  This means that whitespace is syntactically significant similar to Python.

There is also some additional grammar that isn't described on the website yet that some people may find fun. 
Newscript has no IF THEN or FOR NEXT constructs.  Rather is uses punctuation to designate different mood or
tenses: 

	word?	interogative mood, conditional jump
	word.	imperative  mood, unconditional jump
	word,	adjuvantive mood, call & drop
	word;	future tense, push word onto return stack
	word	present tense, call word
	
So branching requires factoring out each branch.  IF ELSE THEN translates roughly to:
	
	thenword; ifword? elseword.

Push the thenword onto the return stack, then if the condition is met jump to ifword (which returns to
thenword), or jump to elseword (which then returns to thenword).  So far I've never actually used ; for this
purpose, but its there :)

Similarly, variables can have  <at>  and ! appended directly to them in order to compile an immediate fetch or
store opcode: (stand alone  <at>  and ! still exist and work as expected)

(Continue reading)

vaded | 10 Feb 02:38 2009
Picon

Re: objects and forth


On Mon, 9 Feb 2009 22:09:33 -0300 , "Jecel Assumpcao Jr"
<jecel <at> merlintec.com> said:
> David J. Goehrig wrote on Thu, 5 Feb 2009 06:56:51 -0500
> > On Wed, Feb 04, 2009 at 10:33:42PM -0300, Jecel Assumpcao Jr wrote:
> > > 
> > > You might find this course interesting:
> > > 
> > > http://www1.idc.ac.il/tecs/
> > 
> > Thanks Jecel, it does look interesting. I got to say, I disagree 100% with
> > their approach on the software side.  Any student is better off learning
> > on real hardware, or at least an emulator of real hardware like Bochs.
> 
> I think both alternatives have their advantages. There are things that
> shouldn't matter but in practice they sometimes do. For example: there
> is little difference between a software emulation of some old computer,
> like a TRS-80, on a modern PC and a reimplementation of the same machine
> using some FPGA development kit. The screen looks the same, the keyboard
> feels the same and the speed is the same. Yet the sensation of using the
> two is different. But it might be just nostalgia on my part - I should
> test it with someone who has never seen the original machine and see
> what they think.
>  
> > > About the subject, I worked on hardware for OO Color Forth in 2001/2002
> > 
> > Do you have anything on it on your sites?  I'm guessing you were looking to
> > use it to power your Self port?
> 
> Here are some pictures of the machine I was talking about:
(Continue reading)

list-admin | 9 Feb 02:50 2009

A rules reminder

Hello all.

I want to remind the list members of a few things.

This list is about Colorforth and ColorForth alone.

Please trim your emails.

Do not top post.

Do not attack or flame people.

Other languages may be commented in passing, as in this language does it this 
way.  Is that useful, or can it something similar be accomplished in 
ColorForth.

Anything else is off-topic.  Examples such as saying:-

1)   ColorForth/Forth is useless/rubbish etc.  

2)   Language x is better than ColorForth/Forth.

People on this list wish to learn about ColorForth coding.  ColorForth 
projects.  Anything else is pretty much irrelevent to them.

There is, actually, a colorforth-chat-help <at> chaossolutions.org list that is 
little used.  That is available for a more open discussion of other Forths 
and comparisons to other languages.

List-Admin
(Continue reading)

David J. Goehrig | 5 Feb 12:56 2009

Re: objects and forth

On Wed, Feb 04, 2009 at 10:33:42PM -0300, Jecel Assumpcao Jr wrote:
> 
> You might find this course interesting:
> 
> http://www1.idc.ac.il/tecs/

Thanks Jecel, it does look interesting. I got to say, I disagree 100% with their approach on the software
side.  Any student is better off learning on real hardware, or at least an emulator of real hardware like Bochs.

> About the subject, I worked on hardware for OO Color Forth in 2001/2002

Do you have anything on it on your sites?  I'm guessing you were looking to use it to power your Self port?

> and so have an opinion about this. But it will have to wait until
> tomorrow (Friday is more likely...).

Tease... :)  I'm looking forward to seeing some more details on the new silicon.

Dave

vaded | 5 Feb 02:02 2009
Picon

Re: objects and forth

I remember Jeff Fox saying something to the point of that the engineers
he worked with who knew ASM had a very easy time picking up the 1X
Forths (machine forth, etc.).  But those who were firmly entrenched in
the C and related paradigms had a much harder time seeing the virtues of
1X forth and adopting its methodologies.  So I'm wondering if the
approach of learning C or Lisp or Small Talk first may prime the mind in
a ineffecient way when it comes to forth?

On Wed, 4 Feb 2009 22:33:42 -0300 , "Jecel Assumpcao Jr"
<jecel <at> merlintec.com> said:
> David J. Goehrig wrote:
> 
> > The way I typically teach programming to newbies, and reteach people
> > who've acquired a theoretical education, is I start off with the bit, and
> > move up from there.  By the end a few days, they've learned enough
> > to do basic assembler.  I then work with them to build a C or Lisp or
> > Smalltalk.  At that point, if they're willing I introduce them to Forth.
> 
> You might find this course interesting:
> 
> http://www1.idc.ac.il/tecs/
> 
> It is better known as "From Nand to Tetris in 12 steps". The authors
> make some silly mistakes, like in their explanation of Harvard versus
> Von Neuman architectures. And their machine language is more horrible
> than I would like. But in general it seems to be a good course.
> 
> About the subject, I worked on hardware for OO Color Forth in 2001/2002
> and so have an opinion about this. But it will have to wait until
> tomorrow (Friday is more likely...).
(Continue reading)


Gmane