New language V (on JVM)

Rahul — 2007-03-02 19:36:25

Hi,
First (alpha) release of V is available here
http://v-language.googlecode.com/files/v_0.001.jar
It is nothing more than a dialect of Joy at this point
(with some differences).

Only a few of the primitives are available:
[?(peek),??(show stack),.(define word)
!=, *,+,-,/,<,<=,=,>,>=,and,concat,cons,dip,dup,false
fold,i,map,not,or,pop,put,rolldown,rollup,swap,true
uncons,while]

More information is available here
http://v-language.googlecode.com/svn/trunk/v/status.txt

I hope to add an FFI for callout to java and a stack shuffling
operator soon.

Please do take a look, (I am just learning the theory and
implementing as I go along).
rahul

Joe Bowbeer — 2007-03-02 21:50:04

I love to see languages running on the JVM.

A couple of pointers just in case you're not aware:

1. Consider binding your implementation to the scripting framework:

http://java.sun.com/developer/technicalArticles/J2SE/Desktop/scripting/

https://scripting.dev.java.net/

2. Consider adding your implementation to the list of Languages for the JVM:

http://www.robert-tolksdorf.de/vmlanguages.html

--Joe

On 3/2/07, Rahul <blufox@...> wrote:
> Hi,
> First (alpha) release of V is available here
> http://v-language.googlecode.com/files/v_0.001.jar
> It is nothing more than a dialect of Joy at this point
> (with some differences).
>
> Only a few of the primitives are available:
> [?(peek),??(show stack),.(define word)
> !=, *,+,-,/,<,<=,=,>,>=,and,concat,cons,dip,dup,false
> fold,i,map,not,or,pop,put,rolldown,rollup,swap,true
> uncons,while]
>
> More information is available here
> http://v-language.googlecode.com/svn/trunk/v/status.txt
>
> I hope to add an FFI for callout to java and a stack shuffling
> operator soon.
>
> Please do take a look, (I am just learning the theory and
> implementing as I go along).
> rahul
>

William Tanksley, Jr — 2007-03-02 22:11:24

Rahul <blufox@...> wrote:
> First (alpha) release of V is available here
> http://v-language.googlecode.com/files/v_0.001.jar

Cool, congrats on nice progress.

> It is nothing more than a dialect of Joy at this point
> (with some differences).

Curiosity: what's your goals?

Your definition syntax looks nice, by the way. Simple and clean...
Although I suppose one could complain that it's hard to visually
discern definitions from random blocks of code, I think it'll be
pretty rare to just have a random block of code.

Can definitions be constructed at runtime? Is "." a normal word or is it syntax?

> I hope to add an FFI for callout to java

Good idea, of course.

I've occasionally wondered what a concatenative language modeled to
take advantage of the JVM would look like. I recall that the JVM isn't
totally stack-centered; it has a lot of machinery for stack frames as
well.

> Please do take a look, (I am just learning the theory and
> implementing as I go along).

Looks nice. This is probably a good way to learn.

> rahul

-Billy

Rahul — 2007-03-03 08:46:48

Jr" <wtanksleyjr@...> wrote:

> Curiosity: what's your goals?

dont have any goals (other than minimal syntax - (just '[' and ']'))
for now, I think I will let the language evolve and see where it goes.

> Your definition syntax looks nice, by the way. Simple and clean...

thanks,

> Although I suppose one could complain that it's hard to visually
> discern definitions from random blocks of code, I think it'll be
> pretty rare to just have a random block of code.

I agree it is hard to see definitions if it is inside an unformated
block of code but usually users format and delimit definitions
with empty lines comment headers and such,
I hope it would not prove to be a bad decision.

> Can definitions be constructed at runtime? Is "." a normal word or
is it syntax?

. is just a normal word.
|[hi] ['hello' puts] concat .
|hi
=hello

> I've occasionally wondered what a concatenative language modeled to
> take advantage of the JVM would look like. I recall that the JVM
isn't
> totally stack-centered; it has a lot of machinery for stack frames
as
> well.

Rahul — 2007-03-03 09:33:58

--- "Joe Bowbeer" <joe.bowbeer@...>
wrote:
> 1. Consider binding your implementation to the scripting framework:
> http://java.sun.com/developer/technicalArticles/J2SE/Desktop/
scripting/
> https://scripting.dev.java.net/

I was hopping to do it along with the FFI to java.

> 2. Consider adding your implementation to the list of Languages for
the JVM:
>
> http://www.robert-tolksdorf.de/vmlanguages.html

Thanks I have done that now.
rahul