cgnormandin | 8 May 20:58 2010
Picon

[stack] Joy noob checking in!

 

Hello group...

Decided I'd give Joy a shot. I've fooled around with Forth a bit, but never made much headway in that camp. I think I might like Joy or its descendants much better. We'll see.

Thank you W. Tanksley, Jr for opening the door. ;)
--
duke

__._,_.___
Recent Activity:
.

__,_._,___
pml060912 | 10 May 09:35 2010
Picon

[stack] Re: Joy noob checking in!

 

--- In concatenative <at> yahoogroups.com, "cgnormandin" <dukeofperl <at> ...> wrote:
>
> Hello group...
>
> Decided I'd give Joy a shot. I've fooled around with Forth a bit, but never made much headway in that camp. I think I might like Joy or its descendants much better. We'll see.
>
> Thank you W. Tanksley, Jr for opening the door. ;)
> --
> duke
>

Well then, you may (or may not) be interested in Furphy, the Forth related work I've been working on from time to very occasional time, described here: http://users.beagle.com.au/peterl/furphy.html (feedback welcome). P.M.Lawrence.

__._,_.___
Recent Activity:
.

__,_._,___
Duke Normandin | 10 May 15:13 2010
Picon

Re: [stack] Re: Joy noob checking in!

 

On Mon, 10 May 2010, pml060912 wrote:

> --- In concatenative <at> yahoogroups.com, "cgnormandin" <dukeofperl <at> ...> wrote:
> >
> > Hello group...
> >
> > Decided I'd give Joy a shot. I've fooled around with Forth a bit, but never made much headway in that camp. I think I might like Joy or its descendants much better. We'll see.
> >
> > Thank you W. Tanksley, Jr for opening the door. ;)
> > --
> > duke
> >
>

> Well then, you may (or may not) be interested in Furphy, the Forth
> related work I've been working on from time to very occasional time,
> described here: http://users.beagle.com.au/peterl/furphy.html
> (feedback welcome). P.M.Lawrence.

I had a quick look - appears to be an interesting project! I have
dabbled with Euphoria as well, and if it hadn't been for various
"flakiness" with the language (on MacOS X Leopard), as well as within
the community, I might still be using it. ;)

The Joy language might be cool if there are still folks around that
can help with the learning curve.

I tried to give Forth a go, but the c.l.f. newsgroup is nothing more
than an ever-ending argument, and pissing contest. Hans Beezemer's 4TH
language should have been my first exposure to "Forth".

--
Duke

__._,_.___
Recent Activity:
.

__,_._,___
William Tanksley, Jr | 10 May 17:33 2010
Picon

Re: [stack] Re: Joy noob checking in!

 

Duke Normandin <dukeofperl <at> ml1.net> wrote:
> The Joy language might be cool if there are still folks around that
> can help with the learning curve.

I think there are... I'm not really one, but I'll do what I can :-).
You might be interested in one of the remote derivatives of Joy and
Forth... Rather than go through a list, though, it might be nice to
hear what you're looking for. Are you a minimalist? Do you like to
work close to the machine? Or do you like the compiler to do a lot of
heavy lifting for you? Do you want type-checking? Do you want to write
applications, embedded systems, or an operating system? There are too
many possible questions... Go ahead and tell us the sort of things
you've enjoyed working on or would like to...

> I tried to give Forth a go, but the c.l.f. newsgroup is nothing more
> than an ever-ending argument, and pissing contest. Hans Beezemer's 4TH
> language should have been my first exposure to "Forth".

Sigh... no kidding. I gave up on them a while ago. The MachineForth
list is often more interesting, although naturally you have to be at
least a little interested in minimalistic programming to stay
interested :-). I do think that 4TH is an interesting dialect and
implementation, yes.

> Duke

-Wm

__._,_.___
Recent Activity:
.

__,_._,___
Duke Normandin | 10 May 18:14 2010
Picon

Re: [stack] Re: Joy noob checking in!

 

On Mon, 10 May 2010, William Tanksley, Jr wrote:

> Duke Normandin <dukeofperl <at> ml1.net> wrote:
> > The Joy language might be cool if there are still folks around that
> > can help with the learning curve.
>
> I think there are... I'm not really one, but I'll do what I can :-).
> You might be interested in one of the remote derivatives of Joy and
> Forth... Rather than go through a list, though, it might be nice to
> hear what you're looking for. Are you a minimalist? Do you like to
> work close to the machine? Or do you like the compiler to do a lot of
> heavy lifting for you? Do you want type-checking? Do you want to write
> applications, embedded systems, or an operating system? There are too
> many possible questions... Go ahead and tell us the sort of things
> you've enjoyed working on or would like to...

You've hit on one of my major "programming" quandaries. I'm an avid
hobbyist programmer searching for "my ideal" language. To add to my
cloud of confusion, I don't really know what I want to do "my
language" at the moment. I started programming in as serious manner in
the late '90s, doing HTML-CGI stuff with Perl and then PHP. Along the
way, I taught myself to use a RDBMS (MySQL and Sqlite) and Javascript.

I know that I dislike C and its derivatives, so I soon tired of Perl
and PHP. I tried Pike and don't like it.

I suppose the truest thing I can say, is that I looking for a language
which resonates with me and "feels" right, and which I take to
easily. Once I find that language, productively expressing myself with
should not be a problem, given that the language is general-purpose
enough. I realize that this goes against the prevalent thinking of
using the right tool for the job. However, programming does not come
easily enough to me, for me to be the master of many languages. I want
to learn one language _very_ well. I once thought that Forth might be
cool, because each Forth is really a problem-domain-specific
Forth. However, it might be too close to the bare metal for me.

I've recently tried Lisp via Common Lisp and newLISP. I prefer the
latter, but still not "my cup of tea".

So now I'm looking at Joy and Miranda - both functional
languages. Miranda is not stack-based.

>
> > I tried to give Forth a go, but the c.l.f. newsgroup is nothing more
> > than an ever-ending argument, and pissing contest. Hans Beezemer's 4TH
> > language should have been my first exposure to "Forth".
>
> Sigh... no kidding. I gave up on them a while ago. The MachineForth
> list is often more interesting, although naturally you have to be at
> least a little interested in minimalistic programming to stay
> interested :-). I do think that 4TH is an interesting dialect and
> implementation, yes.

Never tried the MachineForth list. I'll have to Google it. I am a
quasi-minimalist - I think. I hated Pascal, Modula, Oberon, Ada when I
looked at them because one had to write a book to get anything
done. OTOH, cryptic, obfuscated code is just so much
chicken-scratching / hieroglyphics. Should be sent to NSA / MI6 / FBI
for decoding to a natural language. ;)

Thanks for your thoughts.
--
duke

__._,_.___
Recent Activity:
.

__,_._,___
Rodney D Price | 10 May 20:10 2010

Re: [stack] Re: Joy noob checking in!

 

Just my opinion...

You sound as if you are looking for an ecosystem, rather than just a
language. If you've been working in the Perl and/or PHP languages, you've
been working in ecosystems that are alive and well. The languages
themselves may be awful, but the ecosystems are phenomenal. Each has
many, many libraries and tools to draw from. If you intend to learn one
language really well, it had better have an ecosystem that gives you the
support you need.

Here are a few suggestions:

(1) Haskell. The majority of the research in functional programming
languages is done in Haskell, a descendant of Miranda. Miranda attempted
to make a go is it as a commercial product, but the lack of an open system
persuaded the functional programming community build their own: Haskell.
You'll find that support on lists such as haskell-beginner and
haskell-cafe is very good. There's also a very active IRC channel,
#haskell. The number of packages / libraries available in Haskell has
skyrocketed in the past few years. See http://www.haskell.org Haskell
isn't as hard as the Miranda website would have you believe.

(2) OCaml / F#. The Haskell language is an experiment in pure functional
programming with a strong static type system. That means no
side-effecting functions like C's printf. See the Wikipedia article on
referential transparency for more. OCaml and its descendant, F#, share
the strong static type system of Haskell, but aren't quite as hard over as
Haskell is about side effects. For instance, mutable variables are
allowed. F# is supported by Microsoft in the new beta version of Visual
Studio, which you can download for free at the Microsoft site. F#'s
ecosystem is .Net, so if you want to write code that runs primarily on
Windows, F# is the way to go.

(3) Clojure, a new lisp that runs on top of the Java JVM. Clojure is an
experiment in writing a Lisp without regard to backwards compatibility. As
you no doubt know, the Java ecosystem is both broad and deep, although it
leans too far in the "enterprise software" direction for my taste. The
Clojure language itself borrows a lot of ideas from Haskell, but like all
other Lisps, uses a dynamic type system. If you've done Perl and PHP,
you've lived with a dynamic type system. Static vs dynamic typing is one
of those religious issues that you should avoid bringing up on mailing
lists. The Clojure site is at http://clojure.org.

(4) Factor. If you really want to do concatenative programming, and do it
in the real world, choose Factor. It's the only one in the concatenative
space that really has an ecosystem. Go to http://factorcode.org for more.
I should tell you that concatenative programming is one of those areas of
computer science that "don't get no respect." Programming language
researchers, especially academics, regard concatenative programming
languages as a mostly uninteresting implementation of point-free form,
e.g. as implemented in Haskell.

(5) Forth, the ultimate type-less language. Very close to the metal, as
you know if you've tried it. If you're at all interested in embedded
programming, particularly on small 8-bit or 16-bit chips, I think that
Forth is still the best thing out there. If you want to program anywhere
else, in my humble opinion, don't choose Forth. Or Joy, for that matter.
One of the charms of Forth is that you can easily write your own Forth,
should you be so inclined.

So there is my two cents. Do with it what you will.

-Rod

P.S. The ordering above is intentional. Haskell is my favorite.




From:
Duke Normandin <dukeofperl <at> ml1.net>
To:
concatenative <at> yahoogroups.com
Date:
05/10/2010 10:20 AM
Subject:
Re: [stack] Re: Joy noob checking in!
Sent by:
concatenative <at> yahoogroups.com




On Mon, 10 May 2010, William Tanksley, Jr wrote:

> Duke Normandin <dukeofperl <at> ml1.net> wrote:
> > The Joy language might be cool if there are still folks around that
> > can help with the learning curve.
>
> I think there are... I'm not really one, but I'll do what I can :-).
> You might be interested in one of the remote derivatives of Joy and
> Forth... Rather than go through a list, though, it might be nice to
> hear what you're looking for. Are you a minimalist? Do you like to
> work close to the machine? Or do you like the compiler to do a lot of
> heavy lifting for you? Do you want type-checking? Do you want to write
> applications, embedded systems, or an operating system? There are too
> many possible questions... Go ahead and tell us the sort of things
> you've enjoyed working on or would like to...

You've hit on one of my major "programming" quandaries. I'm an avid
hobbyist programmer searching for "my ideal" language. To add to my
cloud of confusion, I don't really know what I want to do "my
language" at the moment. I started programming in as serious manner in
the late '90s, doing HTML-CGI stuff with Perl and then PHP. Along the
way, I taught myself to use a RDBMS (MySQL and Sqlite) and Javascript.

I know that I dislike C and its derivatives, so I soon tired of Perl
and PHP. I tried Pike and don't like it.

I suppose the truest thing I can say, is that I looking for a language
which resonates with me and "feels" right, and which I take to
easily. Once I find that language, productively expressing myself with
should not be a problem, given that the language is general-purpose
enough. I realize that this goes against the prevalent thinking of
using the right tool for the job. However, programming does not come
easily enough to me, for me to be the master of many languages. I want
to learn one language _very_ well. I once thought that Forth might be
cool, because each Forth is really a problem-domain-specific
Forth. However, it might be too close to the bare metal for me.

I've recently tried Lisp via Common Lisp and newLISP. I prefer the
latter, but still not "my cup of tea".

So now I'm looking at Joy and Miranda - both functional
languages. Miranda is not stack-based.

>
> > I tried to give Forth a go, but the c.l.f. newsgroup is nothing more
> > than an ever-ending argument, and pissing contest. Hans Beezemer's 4TH
> > language should have been my first exposure to "Forth".
>
> Sigh... no kidding. I gave up on them a while ago. The MachineForth
> list is often more interesting, although naturally you have to be at
> least a little interested in minimalistic programming to stay
> interested :-). I do think that 4TH is an interesting dialect and
> implementation, yes.

Never tried the MachineForth list. I'll have to Google it. I am a
quasi-minimalist - I think. I hated Pascal, Modula, Oberon, Ada when I
looked at them because one had to write a book to get anything
done. OTOH, cryptic, obfuscated code is just so much
chicken-scratching / hieroglyphics. Should be sent to NSA / MI6 / FBI
for decoding to a natural language. ;)

Thanks for your thoughts.
--
duke



[Non-text portions of this message have been removed]

__._,_.___
Recent Activity:
.

__,_._,___
Duke Normandin | 10 May 21:22 2010
Picon

Re: [stack] Re: Joy noob checking in!

 

On Mon, 10 May 2010, Rodney D Price wrote:

> Just my opinion...
>
> You sound as if you are looking for an ecosystem, rather than just a
> language. If you've been working in the Perl and/or PHP languages, you've
> been working in ecosystems that are alive and well. The languages
> themselves may be awful, but the ecosystems are phenomenal. Each has
> many, many libraries and tools to draw from. If you intend to learn one
> language really well, it had better have an ecosystem that gives you the
> support you need.

You're right of course! Perl, with its CPAN and NG are awesome
resources for noobs and gurus alike. ditto for PHP and others. For me
those were 2 cases where the community was outstanding, but the
languages - although I learned them - weren't intuitive for me. Kinda
like, I may love Chinese culture, food, the people, etc - but I just
can't grok the language. Would be hard to be super productive in the
heartland of Taiwan where no English might be spoken. ;) So I'm
looking for both a language that's intuitive _to me_, c/w a vibrant
community.

>
> Here are a few suggestions:
>
> (1) Haskell. The majority of the research in functional programming
> languages is done in Haskell, a descendant of Miranda. Miranda attempted
> to make a go is it as a commercial product, but the lack of an open system
> persuaded the functional programming community build their own: Haskell.
> You'll find that support on lists such as haskell-beginner and
> haskell-cafe is very good. There's also a very active IRC channel,
> #haskell. The number of packages / libraries available in Haskell has
> skyrocketed in the past few years. See http://www.haskell.org Haskell
> isn't as hard as the Miranda website would have you believe.

I've reading all I can about Miranda these last few days (as well as
looking at Joy). I'm sure liking Miranda! Dead (dog-go) community
though. Research Software Ltd and http://miranda.org.uk appear to be
comatose to boot.

I do have Haskell of my MacOS X box. I'll re-visit it for sure.

> (2) OCaml / F#. The Haskell language is an experiment in pure functional
> programming with a strong static type system. That means no
> side-effecting functions like C's printf. See the Wikipedia article on
> referential transparency for more. OCaml and its descendant, F#, share
> the strong static type system of Haskell, but aren't quite as hard over as
> Haskell is about side effects. For instance, mutable variables are
> allowed. F# is supported by Microsoft in the new beta version of Visual
> Studio, which you can download for free at the Microsoft site. F#'s
> ecosystem is .Net, so if you want to write code that runs primarily on
> Windows, F# is the way to go.

Interesting as well! My interest would be only in context of *nix or
MacOS X. ;)

[snip]

> (4) Factor. If you really want to do concatenative programming, and do it
> in the real world, choose Factor. It's the only one in the concatenative
> space that really has an ecosystem. Go to http://factorcode.org for more.
> I should tell you that concatenative programming is one of those areas of
> computer science that "don't get no respect." Programming language
> researchers, especially academics, regard concatenative programming
> languages as a mostly uninteresting implementation of point-free form,
> e.g. as implemented in Haskell.

Thanks for the "heads-up" regarding concatenative programming. BTAIM,
I'll have to look a Factor in lieu of Joy.

> (5) Forth, the ultimate type-less language. Very close to the metal, as
> you know if you've tried it. If you're at all interested in embedded
> programming, particularly on small 8-bit or 16-bit chips, I think that
> Forth is still the best thing out there. If you want to program anywhere
> else, in my humble opinion, don't choose Forth. Or Joy, for that matter.
> One of the charms of Forth is that you can easily write your own Forth,
> should you be so inclined.

It has suddenly swept over me, after reading your message, that Forth
et al were indeed born and bred to excel at "controlling bare
metal". Trying to make them anything else is simply one kludge on top
of the other.

> So there is my two cents. Do with it what you will.

Much appreciated. Just the type of dialog I needed.

--
Duke
A: Backwards from the way folks normally read text
A: Because it forces conversations to flow in a nonsensical order.
Q: Why is top-posting a major PAIN?
[http://en.wikipedia.org/wiki/Netiquette]

__._,_.___
Recent Activity:
.

__,_._,___
William Tanksley, Jr | 10 May 22:04 2010
Picon

Re: [stack] Re: Joy noob checking in!

 

Rodney D Price <rodprice <at> raytheon.com> wrote:
> Just my opinion...

I'll vouch for your presentation -- good summaries, and I was going to
post something vaguely similar.

> You sound as if you are looking for an ecosystem, rather than just a
> language.

Sounded that way to me as well.

> Here are a few suggestions:
> P.S.  The ordering above is intentional.  Haskell is my favorite.

I have to say, however, that Rod obviously made a minor typo and
accidentally mis-ordered the concatenative languages, which he
obviously meant to place at the top of the list. :-) I'm kidding, I'm
kidding.

Another language you might possibly appreciate is REBOL, which was
written by a longtime Forth programmer and has a good ecosystem
(although I have NO idea how live its community is). It's kind of
halfway between a concatenative and a "standard" language, and is kind
of ... relaxing ... to read. But then I do Enterprisey Java/XML stuff
for my day job, so almost ANYTHING would seem relaxing.

By the way, if you HAD been interested in bare metal, I'd have
suggested learning colorForth and reimplementing it from scratch. Heh.

> -Rod

-Wm

__._,_.___
Recent Activity:
.

__,_._,___
Duke Normandin | 10 May 22:21 2010
Picon

Re: [stack] Re: Joy noob checking in!

 

On Mon, 10 May 2010, William Tanksley, Jr wrote:

[snip]

> I have to say, however, that Rod obviously made a minor typo and
> accidentally mis-ordered the concatenative languages, which he
> obviously meant to place at the top of the list. :-) I'm kidding, I'm
> kidding.

I must admit that Joy _did_ appeal to me the first time I saw it. How
well I could do with it may never be known. What do you think of
Factor?

> Another language you might possibly appreciate is REBOL, which was
> written by a longtime Forth programmer and has a good ecosystem
> (although I have NO idea how live its community is). It's kind of
> halfway between a concatenative and a "standard" language, and is kind
> of ... relaxing ... to read. But then I do Enterprisey Java/XML stuff
> for my day job, so almost ANYTHING would seem relaxing.

I have it on my Mac - it's OK, but if I remember correctly, it's like
Smalltalk/Squeak - your stuck with the VM/image thing. I like a file
based language.

> By the way, if you HAD been interested in bare metal, I'd have
> suggested learning colorForth and reimplementing it from scratch. Heh.

Why re-implement from scratch? and why colorForth?
--
Duke
A: Backwards from the way folks normally read text
A: Because it forces conversations to flow in a nonsensical order.
Q: Why is top-posting a major PAIN?
[http://en.wikipedia.org/wiki/Netiquette]

__._,_.___
Recent Activity:
.

__,_._,___
John Cowan | 10 May 22:22 2010

Re: [stack] Re: Joy noob checking in!

 

Duke Normandin scripsit:

> I've reading all I can about Miranda these last few days (as well as
> looking at Joy). I'm sure liking Miranda! Dead (dog-go) community
> though. Research Software Ltd and http://miranda.org.uk appear to be
> comatose to boot.

Miranda (a trademark of Research Software Ltd.) suffers from the usual
problem of languages that the inventor tries to keep proprietary: death.

Now that we're outside the concatenative space, let me add my
recommendation for Pure, an impure eager functional programming language,
at <pure-lang.googlecode.com>. It's based on general equational term
rewriting, of which lambda calculus (which is fully supported) is just
a subset. It's also dynamically typed, has a fairly active ecosystem
considering how new it is, and emphasizes practical applications.

> Interesting as well! My interest would be only in context of *nix or
> MacOS X. ;)

F# runs fine on Mono, and Mono runs fine on Mac OS X using MacPorts.

--
[W]hen I wrote it I was more than a little John Cowan
febrile with foodpoisoning from an antique carrot cowan <at> ccil.org
that I foolishly ate out of an illjudged faith http://ccil.org/~cowan
in the benignancy of vegetables. --And Rosta

__._,_.___
Recent Activity:
.

__,_._,___

Gmane