Slashdot Mirror


Lightweight Languages Workshop Webcast from MIT

Jonathan Edwards writes "The Lightweight Languages Workshop (LL4) will be webcast live from MIT tomorrow. Previous years have seen lively discussions between the proponents of languages like Perl, Python, and Scheme. Check out the program at the website."

50 comments

  1. Lightweight? by spectral · · Score: 2, Insightful

    What makes a language 'lightweight' ? When I think of Perl, I don't immediately think a lightweight/simple language to learn. And then I look at the Program (Schedule) on the website and see that it says English is the most lightweight language of all, which doesn't make any sense to me unless you consider how much code it takes to get something accomplished as a feature of the language, so that since English and Perl don't require as much code to get difficult tasks completed, they're 'lightweight' languages?

    That definition seems backwards. Can someone please enlighten me?

    1. Re:Lightweight? by evin · · Score: 3, Informative

      At the LL1 page they define a lightweight language as one which is easy to learn.

      Following the analogy of heavyweight vs lightweight threads, I initially thought it would be about languages which are either very small once compiled, or that have simple interpreters.

      But who am I to question some guys at MIT?

    2. Re:Lightweight? by RAMMS+EIN · · Score: 3, Interesting

      There have been many discussions about what exactly defines a lightweight language. The only conclusion I can draw from them is that people can't agree on a clear definition.

      My understanding of the concept is a language that has a small core, flexible enough to grow to many needs. This allows for small, simple implementations of said core, although such implementations are not a necessary criterion.

      Scheme is a good example of a language that fits the definition. Scheme implementations are simple to write, yet Scheme is a very flexible (and therefore powerful) language.

      Controversially, I would see Perl as a rather heavyweight language. The various different ways things can be written down and the inclusion of regular expressions in the core would seem to make Perl a rather heavy language.

      I acknowledge that my views are highly subjective and may be based on an imperfect understanding of the matter. They may change over time as my understanding improves.

      --
      Please correct me if I got my facts wrong.
    3. Re:Lightweight? by Umbral+Blot · · Score: 1

      begin shameless plug:
      ahem ... small + flexable + simple syntax = Centum

    4. Re:Lightweight? by the+quick+brown+fox · · Score: 1
      There has been a fair amount of discussion about what makes a LL, and I don't think it came to any conclusion. But here's some interesting points of view.

      LL1 Call for Participation
      Anton van Straaten

      I think there is a lot more agreement about what isn't lightweight.

      If a language is statically typed and doesn't have type inferencing, it's probably not lightweight. If a language does not have a freely available implementation, it's probably not lightweight. Any language that requires you to type this much to implement "Hello World" is definitely not lightweight:

      using System;

      namespace MyProject
      {
      public class MyClass
      {
      public static void Main(string[] args)
      {
      Console.WriteLine("Hello World!");
      }
      }
      }

      I think one good way to look at it is whether you feel like the programming language gets in the way of what you're trying to express. If you're constantly adding characters to placate a compiler, if you're forced to define an object when what you really want is to write a simple script, if you're forced to do all sorts of arcane tricks to interop with other languages (especially C), all of these things work against you as a programmer and add "weight" to the program and to the process.

      By these criteria, I think most programmers would consider Perl a lightweight language...

    5. Re:Lightweight? by Anonymous Coward · · Score: 0
      small + flexable + simple syntax

      I hope you spell check your keywords better.

  2. before you waste bandwidth by t482 · · Score: 4, Informative

    The program is available here and the abstracts are available here

    1. Re:before you waste bandwidth by Bloater · · Score: 1

      The sound is apalling for me on dialup. I think the server is throttling back its bitrate accordingly so I can't even get a decent stream via mplayer -dumpstream

      Does anybody have the streams mirrored in a reasonable quality?

  3. Since when was Perl considered 'lightweight'? by Anonymous Coward · · Score: 2, Insightful

    Perl5 is big enough and Perl6 promises to have an even larger memory footprint.

  4. Perl lightweight? by mhesseltine · · Score: 1

    If Perl is a lightweight language, what the hell is a heavyweight language? Assembly? Isn't this the same type of distinction as high-level/low-level?

    --
    Overrated / Underrated : Moderation :: Anonymous Coward : Posting
  5. Arc? by Wolfkin · · Score: 1

    No Arc?! Paul Graham; paging Paul Graham!

    Where's my dinner^WArc?! ;)

    --
    Property law should use #'EQ, not #'EQUAL.
    1. Re:Arc? by Zaak · · Score: 1

      No Arc?! Paul Graham; paging Paul Graham!

      As much as I enjoy reading his essays, I would like to see him write less English and more code.

      Or at least a status update now and then.

      But I suppose you have different priorities when you're designing something to last rather than something to be useful right now.

      TTFN

    2. Re:Arc? by cpeterso · · Score: 1


      I'm super bummed that Arc seems to MIA. Paul Graham seems to be taking a perfectionist/cathedral development approach.. :(

    3. Re:Arc? by Anonymous Coward · · Score: 0

      The worlds needs a modern, up-to-date, simplified Lisp dialect, which is freely available and runs on Unix. Ideally it should support first-class continuations like Scheme, and have much of Scheme's elegance. It should have a simple yet powerful standard library without 50 ways to do everything, yet zero ways to do simple things like spawn a thread.

      Arc ain't it, unfortunately.

      I'm still hoping though.

  6. Article is total nonsense by brunes69 · · Score: 1

    Even forget about the "Perl is lightweight" stuff (although I totally agree with you!) They also describe **English** as a lightweight language.

    The English language has one of the largest vocabilaries in the world. It grows by something like 10,000 entries a year. In order to use it in any real-world setting you have to learn thousands of colloquialisms and slang terms. People who learn it as a second language are still learning new words and phrases 10 years later. It is nowhere near "lightweight".

    I think the people discussed in this article live in some kind of upside-down universe where black is white and white is black. That is the only explanation for the idiocy presented here.

    1. Re:Article is total nonsense by Anonymous Coward · · Score: 1, Funny
      I think the people discussed in this article live in some kind of upside-down universe where black is white and white is black.

      Strange enough, the Michael Jackson in that universe is exactly as ours.

    2. Re:Article is total nonsense by Randolpho · · Score: 1

      Read the first abstract here.

      They mean English as a programming language, which would, indeed, be the easiest to learn of them all, provided the person attempting to learn it were already a fluent speaker/reader/writer of the natural language English.

      I agree about Perl, however. Perl can be more cryptic than Enigma! Hardly "easy to learn".

      --
      "Times have not become more violent. They have just become more televised."
      -Marilyn Manson
  7. the virtual machine ? by johnjones · · Score: 1

    has anyone got any studies into a virtual machine that would best suit these kind of interpreters/compilers ?

    I know parrot but any studies on that even ?

    regards

    John Jones

    1. Re:the virtual machine ? by Anonymous Coward · · Score: 0

      There is no limit to what Parrot can do. To finish this project only three short years after after its inception would only limit its usefulness. So many opcodes, so little time.

    2. Re:the virtual machine ? by Anonymous Coward · · Score: 0

      There is no limit to what Parrot can do.

      Can it do real-time processing? Thought so.

  8. Sponsored by Microsoft Research by quamaretto · · Score: 2, Funny

    ...But I'm sure they'll give equal coverage even to products that are going to be in competition with Microsoft.
    -- END SARCASM --

    Seriously, who would take seriously a seminar on light programming langauges from the company that has helped to make C++ the de facto application programming language for 10 years? The only light language that I've seen Microsoft push is VBScript. And I think we all know where they can shove VBScript.

    --
    *is run over by rotten tomatoes*
    1. Re:Sponsored by Microsoft Research by jbrandon · · Score: 2, Informative

      The only light language that I've seen Microsoft push is VBScript.

      This is Microsoft Research, which is different from Microsoft, proper. For instance, MR sponsors Simon Peyton Jones, who spends an enormous amount of effort on Haskell.

      If you look at proceedings from years past, you will see that this isn't the MS fan club meeting.

    2. Re:Sponsored by Microsoft Research by the+quick+brown+fox · · Score: 1

      I attended last year's LL3 and the words "Visual" and "Basic" were never uttered together. On the other hand there was a whole lot of talk about "Scheme", "Haskell", "continuation passing style", and "macros" (the hygienic kind).

  9. Ruby by Pacifix · · Score: 2, Insightful

    Ruby is really picking up speed here in the US and I'm surprised to see that's not included. It even has a movement and language leader, Matz. I'm not sure how fluent he is in English. For me, Ruby certainly was easy to learn and would seem to be a perfect candidate for inclusion in a light weight language discussion. Odd...

    1. Re:Ruby by GnuVince · · Score: 1

      Matz was present as a keynote speaker last year, or two years ago.

    2. Re:Ruby by belmolis · · Score: 1

      Ruby is interesting, but at least for me its lack of Unicode support is enough to keep it out of contention with Python.

    3. Re:Ruby by GCP · · Score: 1

      I totally agree. Matz has made no secret of the fact that his language design philosophy is to optimize for HIS personal needs, with other users taking advantage of it to the extent that their needs overlap his. He has made it clear that he is MUCH more interested in legacy Japanese encodings like EUC-JP than with the global encodings everyone is moving toward (Unicode).

      His work apparently focuses on dealing with legacy Japanese systems and data, while mine involves designing NEW systems that will work globally(including full Japanese support). Despite my admiration for him and so much of his design, his parochial and backward-facing approach to text encodings makes Ruby a non-starter for me.

      --
      "Those who have never entered upon scientific pursuits know not a tithe of the poetry by which they are surrounded."
  10. Lua by Anonymous Coward · · Score: 0

    Lua is widely used in the gaming industry for scripting code and also as a control and config language in other industries.

    It seems to be pretty powerful (proper closures which Python doesn't have) and some other stuff.

    Check it out. http:///www.lua.org/

    1. Re:Lua by MobyTurbo · · Score: 1

      Lua was in last year's lightweight languages workshop.

  11. Lightweight definition of "lightweight" by Latent+Heat · · Score: 1
    I agree with your definition, but I would emphasize "easy to implement." The notion of "easy to learn" is just plain silly.

    The whole idea behind a lightweight language is something that is easy to port to an embedded system, something that is easy to incorporate as a macro or extension language in other software.

    1. Re:Lightweight definition of "lightweight" by yohan1701 · · Score: 1

      I agree. "easy to learn" by that definition C++ is lightweight it was easy to learn( for me anyways). VB would also be considered lightweight. Try getting VB installed on pretty much anything. I always had problems deploying a VB app I never seem to have all 1000 dlls the VB required to run that a damn app

    2. Re:Lightweight definition of "lightweight" by RAMMS+EIN · · Score: 1

      Keep in mind, though, that the DLLs are typically not considered part of the language. What matters is the core of the language; syntax and semantics, special cases, etc.

      The way I see it, C++ is a heavy language because there are many different constructs, each with a different syntax. I guess the same applies to VB, although my exposure to it has been very limited.

      --
      Please correct me if I got my facts wrong.
  12. Fortran by G3ckoG33k · · Score: 1

    From my limited experience, Fortan is about the best choice you can do for anything between "lightweight" tasks and more advanced tasks, as long as you skip a GUI requirement (even if you could, consider a Python GUI and remain calm).

    For more complex matters, Ocaml might be a better choice, as compared to C/C++. Check out a Linux Ocaml shootout here and a Windows Ocaml shootout here. Neither of them were meant to be Ocaml benefactori per se, but it is hard to avoid being impressed (so, I'm a sucker for fast speed, low memory imprint, and few lines of code; but, what do I know...).

    Still, none of these sites address Fortran, so the jury still is out there...

    1. Re:Fortran by Anonymous Coward · · Score: 0
      From my limited experience, Fortan is about the best choice you can do for anything between "lightweight" tasks and more advanced tasks
      Wow, limited is the word for it.

      Other than "maintaining existing Fortran code", I cannot think of a single task at this point that is best done in Fortran.

    2. Re:Fortran by Anonymous Coward · · Score: 0
      Wow, limited is the word for it.

      Other than "maintaining existing Fortran code", I cannot think of a single task at this point that is best done in Fortran.
      You can't, huh? Talk about "limited".
  13. T3X by zipoh · · Score: 1

    described as a "Minimum procedural language" doesn't get much attention http://www.holm-und-jeschag.de/nils/comp.html

    1. Re:T3X by Umbral+Blot · · Score: 1

      Hey many programming languages don't get much attention, especially new ones that don't have a large community yet. See my sig. for the newest upstart language.

  14. Lua? Anyone? Anyone? by cookd · · Score: 2, Informative

    Strangely, one of the best (IMHO) "lightweight" languages isn't even mentioned (as far as I can tell, anyway). Lua is really lightweight (easy to learn, and very easy on resource usage) yet very powerful. I wonder why it doesn't get more attention...

    --
    Time flies like an arrow. Fruit flies like a banana.
  15. Re:Lua? Anyone? Anyone? by RAMMS+EIN · · Score: 1

    Lua is indeed a fine language, and has been at earlier conferences IIRC. The reason it doesn't get more attention is that (1) many geeks still cling to C, C++, Perl, and Java, and (2) there are too many other ligthweight languages out there.

    --
    Please correct me if I got my facts wrong.
  16. A Lightweight REXX. by Anonymous Coward · · Score: 0

    Of course Object REXX isn't mentioned.

  17. Zangband dumped Python for Lua by Anonymous Coward · · Score: 0

    I seem to recall that ZAngband (roguelike game) started converting parts of the game to use a Python scripting engine, then dumped Python in favour of Lua. That probably says a lot about the quality of Lua.

  18. Please learn how to make links. by Anonymous Coward · · Score: 0
    Please learn how to make links.
    <a href="http://www.holm-und-jeschag.de/nils/comp.htm l">T3X</a>
    (without any spaces put there by Slashdot) yields: T3X

    If that's too much typing for you,
    <URL:http://www.holm-und-jeschag.de/nils/comp.html >
    (without any spaces put there by Slashdot) yields: http://www.holm-und-jeschag.de/nils/comp.html
  19. Re:Lua? Anyone? Anyone? by Anonymous Coward · · Score: 1, Interesting

    There were to two about Lua last year-- see http://ll3.ai.mit.edu/.

  20. zerg by Lord+Omlette · · Score: 1

    Why in God's name would anyone use RealMedia to broadcast over the intarweb? They're MIT for fuck's sake, can't they use anything better.

    T_T

    Does anyone know if there are any conversions to quicktime or ogg or mp3 or something?

    --
    [o]_O
  21. Arc: by Szplug · · Score: 1

    Paul Graham has some beta testers so the language is /somewhere/. The thing I fear is, that he'll get so far and realize Arc is translatable to Lisp or Scheme and quit. Or else, that some of the things he wants are really hard and get sidetracked.

    --
    Someday we'll all be negroes
    1. Re:Arc: by Anonymous Coward · · Score: 0

      I don't see what you mean by "translatable to Lisp or Scheme". Every language is. Seriously. Since you can build powerful macros in those language you can reproduce the same syntactic abstractions in the target language as you have in the original language and keep the same readability.

      This is very important, and answers to the requirement "translatable to Lisp", because of course we understand that we are not talking about Turing equivalence here.

      [imagine the current poster re-reading the parent's comment...]

      I think I see what you mean. A Lisp is a Lisp (is a Lisp... ;-) ) so if Arc is a Lisp then it might be very close to any Lisp.

  22. Re: upstart languages by zipoh · · Score: 1

    well, upstart, your language looks pretty fresh, and the 'hello world' right there to see. I'll give it a look.

  23. Re: upstart languages by zipoh · · Score: 1

    woops, only win2k/xp for centum .. I no can do as only have 98. Not using gcc then?

  24. Re:Arc fears by Szplug · · Score: 1
    A Lisp is a Lisp (is a Lisp... ;-) )
    Yes, that's what I meant. But I guess Scheme went ahead despite that happening to its authors. But anyway, re-reading this, written Oct 2003 (from 'Some Work on..'), mostly reassures me:

    The longer answer is that the project is now in the third of four stages. The plan was (a) to make a crappy initial version of Arc, (b) use that for a while in real applications, then (c) go back and write a complete, cleaned up language spec, and (d) use that as the basis of a fairly good implementation.

    I'm in phase (c) now. I don't know how much longer it will take to finish the spec.

    I posted just to extend the conversation about Arc, really; :). For a refresher fix, theres's always his Arc page.
    --
    Someday we'll all be negroes