Hi --
Sorry for such a delayed response to this. First of all, I want to make it
absolutley clear that I was not criticizing Factor in the message below. I was
simply noting that the flip side of any language being as expressive and
extensible as is Factor is the increased opportunity it brings to
miscommunicate -- or not communicate at all, is really what I mean -- except
perhaps to the machine you are trying to instruct. It's the old adage "Any
fool can write programs that a computer can understand; it takes a talented
developer to write programs that a human being can understand." With power
comes license is the only point I was trying to make -- not a criticism, just a
statement of reality. And as you note in your response, at this stage of
Factor's development and with the limited resources available to create
infrastructure that would help promote coding standards and lower the barrier
to entry, there's not a whole lot that can be done about this issue. So once
more, not a criticism -- more a lament.
As for integration, I can see from your description of Factor's host
integration that we may indeed have different notions about this. Compared to
Lisp or Scheme I'm sure that Factor comes out ahead, no doubt about it. When I
speak about integration, however, I am talking about integration with
mainstream computing runtimes -- like .NET's Common Language Runtime or J2EE --
an integration that would make it possible to use Factor fluidly and easily
alongside such languages as Java and C#, which it is never going to replace,
but could augment very nicely. In some sense this is probably unfair of me, as
it is clear that Factor is coming out of a functional language tradition that
isn't particularly integrated into mainstream enterprise computing environments
either. It just seems to me that as a language Factor has so much promise and
has the capability of being so expressive and so direct and natural in its
translation of concepts that I find myself wishing I had it to use with my team
and their work in enterprise development. Clearly I'm talking about stuff that
could certainly be developed, but just hasn't been yet -- perhaps because I'm
the only one who sees a need for it at this point.
In my message below I really was countering the sentiment by the original
poster, who was longing for Factor to be the machine -- OS and everything else.
I was countering with an idea in the opposite direction of having Factor be
as easily consumable inside of a C# program as, say, inline assembly is inside
of a C++ program or Java scriptlets are inside of a server-side JSP page. The
idea being that I want to use the prepackaged resources of an OS or a runtime
library. I don't want to build my web infrastructure in Factor when some high
percentage of the programmers out there are working in C# or Java. It's just
not practical. But maybe this isn't a use case that the language creators
intended to address.
Hope this clarifies.
Mike
Date: Thu, 17 Nov 2011 09:03:53 -0800
From: arc...@gmail.com
To: factor-talk@lists.sourceforge.net
Subject: Re: [Factor-talk] Shared libraries considered harmful
On Thu, Nov 17, 2011 at 6:36 AM, Michael Clagett <mclag...@hotmail.com> wrote:
That brings a cost, however, as I've seen up to this point. It distributes
responsibility for documenting behavior across a community that like most
communiteis is uneven in its fulfillment of responsibility. The greater the
dependency on "just read the code to figure out what's going on", the greater
the barrier to entry to newcomers. I have talked to more than one such person
who has come to take a look and turned away for this very reason. The power
and flexibility is tremendous, no question. But power and flexibility aren't
always the only thing you need.
This is definitely a problem, and a similar problem afflicts most languages
that rely heavily on metaprogramming, such as Lisps and even C++. The common
substrate is too thin, and different users' code looks too different to easily
read or interoperate with. Factor at least benefits from having a relatively
small community and a well-centralized code base, so when we do promote idioms
and libraries to the core language it's easier for us to propagate those
benefits across all the bundled code. That said, being a small community, we
also lack the free hands to keep the documentation polished and accessible to
newcomers a lot of the time.
But wouldn't it be nice to have a platform that offers the power and
flexibility of Factor that also plays nicely with OSes and other runtime
environments?
I think Factor goes much further than most languages of its kind in integrating
with the host platform. Unlike Smalltalks, the canonical source code isn't
hidden in the image, and you can use your own text editor. More OS features
have bindings and bundled high-level APIs than your typical Lisp or Scheme. The
UI doesn't pretend to be a desktop in and of itself (though granted, it still
uses goofy non-native widgets). Deployed programs aren't tens of megabytes in
size. What do you feel is lacking in this regard? Maybe I misunderstand your
notion of integrating.
-Joe
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security threats,
fraudulent activity, and more. Splunk takes this data and makes sense of it. IT
sense. And common sense. http://p.sf.net/sfu/splunk-novd2d
_______________________________________________ Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure
contains a definitive record of customers, application performance,
security threats, fraudulent activity, and more. Splunk takes this
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Factor-talk mailing list
Factor-talk@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/factor-talk