Re: [fonc] Last programming language

2011-07-19 Thread Casey Ransberger
Even if it were possible to have a last language, it would be double plus
ungood.

On Mon, Jul 18, 2011 at 8:58 AM, Paul Homer paul_ho...@yahoo.ca wrote:

 Realistically, I think Godel's Incompleteness Theorem implies that there
 can be no 'last' programming language (formal system).

 But I think it is possible for a fundamentally different paradigm make a
 huge leap in our ability to build complex systems. My thinking from a couple
 of years back:


 http://theprogrammersparadox.blogspot.com/2009/04/end-of-coding-as-we-know-it.html

 Paul.

 --- On *Mon, 7/18/11, BGB cr88...@gmail.com* wrote:


 From: BGB cr88...@gmail.com
 Subject: Re: [fonc] Last programming language

 To: Fundamentals of New Computing fonc@vpri.org
 Received: Monday, July 18, 2011, 6:28 AM


 On 7/18/2011 2:56 AM, Casey Ransberger wrote:

 Smells like Kool-Aide. I smell bullshit. Dude is selling a book tour or
 something. Let's just pick the POS we have now and run with it? Seriously?
 How many times has that gone well?

  Dude is on a book-tour or something. Let him have it.


 for most people and most projects, advice like just pick C or Java or C#
 or similar generally aligns fairly well with the path to highest likely
 productivity (get code written and out the door to customers, ...). if it is
 something common, then there is less likely to be slowdowns or similar due
 to some of the development team members getting confused, or having area of
 responsibility confusion or similar.

 the bigger question is what can be done which hasn't already been done? and
 more so, why does it necessarily matter? and, if there is something great
 waiting, how does one best go about finding and it and making productive use
 of it? ...


 one potentially overlooked issue in the video:
 40 years ago, threads and multiprocessor systems were not exactly common;
 now they are pretty much everywhere, but the most common languages tend to
 be fairly incompetent of effectively utilizing them.

 though not fundamentally new, this is at least a relevant change.


 for example, what is a not crappy way to go about writing code, say, for
 a GPU?...

 maybe there are better answers than, say, well, pretend you are running
 loops over big arrays (CUDA) and well, just run C on the thing (OpenCL).


 IMO, I sort of like mailboxes and asynchronous and trans-thread
 function/method calls, but these are relative novelties (vs the ever present
 lock a mutex or enter a critical section or similar model).

 ...

 or such...


  On Jul 17, 2011, at 11:31 AM, karl ramberg 
 karlramb...@gmail.comhttp://mc/compose?to=karlramb...@gmail.com
 wrote:

   Hi
 Here is a interesting video about programming languages

  http://skillsmatter.com/podcast/agile-testing/bobs-last-language

  Karl

  ___
 fonc mailing list
 fonc@vpri.org http://mc/compose?to=fonc@vpri.org
 http://vpri.org/mailman/listinfo/fonc



 ___
 fonc mailing list
 fonc@vpri.org http://mc/compose?to=fonc@vpri.org
 http://vpri.org/mailman/listinfo/fonc



 -Inline Attachment Follows-


 ___
 fonc mailing list
 fonc@vpri.org http://mc/compose?to=fonc@vpri.org
 http://vpri.org/mailman/listinfo/fonc


 ___
 fonc mailing list
 fonc@vpri.org
 http://vpri.org/mailman/listinfo/fonc




-- 
Casey Ransberger
___
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc


Re: [fonc] Last programming language

2011-07-19 Thread David Goehrig
On Tue, Jul 19, 2011 at 1:36 AM, Ken 'classmaker' Ritchie 
classma...@gmail.com wrote:

 Break the program free from its representation? How, other than by
 transforming one representation to another? Actually, certain
 transformations might yield great benefits, in perception or execution!


That's the entire point of our current complier / editor technology stack:

   - The human interprets a program in the context of their knowledge of the
   programming language, its libraries, and general culture.
   - The compiler interprets a program in the context of a specific machine
   architecture and instruction set.
   - The computer interprets a program as a sequence of electrical impulses
   traveling through  the system.

The limits of each layer in the stack force certain compromises on the realm
of possible transformations.  Since human computing power is still
relatively more plentiful, we shift the majority of the burden to the human
layer for understanding.  But as computing becomes more ubiquitous in the
material world we can start entertaining programs like:

   to toggle is to turn the led on for 1000 ms and then turn it off ;

Now this program is understandable by even my 4 year old.  She helps me
build circuits for fun and she's loves playing with leds and motors.  The
hardest thing for her to grasp is ms but she calls that really really fast
fast, but she knows what a second is.  Now if I add a little color to this
program, I actually have one programming environment that can interpret it
as is:

to toggle is to turn the led on for 1000 ms and then turn it off ;

If you notice, I've highlighted the salient terms.  And I'm cheating here
because this code is taken directly from Chuck Moore's Colorforth Primer
http://colorforth.com/primer.htm but with embedded comments making it into a
more literate style.  The colorforth system can interpret this code because
some of the semantic information is tagged on each word to describe its role
in the representation.  But there is no reason that a sufficiently complex
system could not do the following:

   - perform a statistical analysis to determine the probability that each
   term in the sentence is significant
   - compile the most probable variations into object code
   - ask a human which one does the right thing

If you apply a similar rigor to the definition of test code you could
engineer reliable software systems for which there is no program in the
traditional sense.  The specification of the system is informal, subject to
vagaries in interpretation, and in effect not a lot different from handing
off a spec to a bunch of programmers in another country who don't speak your
language :)

While it might be helpful to have a formal language and jargon to talk about
specific constructs.  And it might be better to write everything in a more
formal linguistic style to improve the odds of getting the correct
interpretation, it would not be a prerequisite for use.  While you are
transforming one representation to another, a sentence to object code, the
gap between the human mental model and the computer is bridged through
artificial understanding.
___
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc


Re: [fonc] Last programming language

2011-07-19 Thread BGB

On 7/19/2011 8:24 AM, Ondřej Bílka wrote:

On Tue, Jul 19, 2011 at 05:16:24AM -0700, Casey Ransberger wrote:

Even if it were possible to have a last language, it would be double plus
ungood.

On Mon, Jul 18, 2011 at 8:58 AM, Paul Homer[1]paul_ho...@yahoo.ca
wrote:

Realistically, I think Godel's Incompleteness Theorem implies that there can be 
no
'last' programming language (formal system).

But I think it is possible for a fundamentally different paradigm make a huge 
leap in
our ability to build complex systems. My thinking from a couple of years back:

[2]http://theprogrammersparadox.blogspot.com/2009/04/end-of-coding-as-we-know-it.html

Sorry but it is very similar to XML will make everything interoperable articlies


yeah, most things tend to change in scale, but not really in essence...

if the essence were changing, there would likely need to be a continual 
change in languages to retain viability. however, to a large degree this 
has not been the case, as many languages (such as C) retain their 
widespread viability after decades of use with only relatively modest 
changes to the core language, despite computing as a whole now being 
much different now than it was several decades ago.


granted, improvements are likely to still exist, but when and where, and 
their extent, well, this has yet to be seen...


but, for the time being, the world is as it is, and most effective is 
likely to act on what is already known to be the case.



or such...



___
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc