Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Programming IT Technology

Programming Languages Will Become OSes 461

Anonymous Coward writes "A couple of months ago, at the Lightweight Languages Workshop 2002, Matthew Flat made a premise in his talk: Operating systems and programming languages are the same thing (at least 'mathematically speaking'). I find this interesting and has a lot of truth in it. Both OS and PL are platforms on which other programs run. Both are virtualizing machines. Both make it easier for people to write applications (by providing API, abstractions, frameworks, etc.)"
This discussion has been archived. No new comments can be posted.

Programming Languages Will Become OSes

Comments Filter:
  • Lisp (Score:0, Informative)

    by Anonymous Coward on Friday January 17, 2003 @01:50PM (#5102815)
    Seems to me that this is old hat. Lisp has been an OS since the 60's. We just don't feel the need (often) to call it that.
  • Oberon anybody? (Score:5, Informative)

    by sofist ( 556213 ) on Friday January 17, 2003 @01:51PM (#5102821)
    Just remember the past. Oberon was an OS an a PL at the same time and I think most of the readers didn't ever heard about it...
  • Behind the times? (Score:4, Informative)

    by Mordant ( 138460 ) on Friday January 17, 2003 @01:54PM (#5102856)
    I guess Mr. Flat (what a name!) hasn't ever heard of the LISP Machine. [uni-hamburg.de].
  • Re:Oberon anybody? (Score:5, Informative)

    by CoolVibe ( 11466 ) on Friday January 17, 2003 @01:56PM (#5102873) Journal
    Oberon? Smalltalk! Now there's something you could turn into an OS.

    Although, Oberon is not the past. It's still being actively developed, in both it's OS and PL incarnation.

  • Re:Lisp (Score:1, Informative)

    by Anonymous Coward on Friday January 17, 2003 @01:59PM (#5102897)
    I use Lisp frequently. It is not an OS. It is an interpreter. There is a huge difference. If still not convinced, take a look at the source for GCL and the Linux kernel.
  • Re:what I want (Score:2, Informative)

    by Xiarcel ( 451958 ) on Friday January 17, 2003 @02:05PM (#5102957)
    Have you seen The Tunes Project? [tunes.org]. It sound like what you claim to want, even if it's still a work in progress...
  • Re:Lisp (Score:2, Informative)

    by Anonymous Coward on Friday January 17, 2003 @02:15PM (#5103048)
    Don't spread misinformation. Lisp is often interpreted, but in production use it is always compiled. GCL, for instance, is most assuredly a compiler.

    The point is not that the code to a Lisp compiler is anything like the code to an operating system; rather, it is that each advanced programming language provides its own set of high-level abstractions for what are traditionally OS-level services.
  • Re:JavaOS (Score:2, Informative)

    by trailerparkcassanova ( 469342 ) on Friday January 17, 2003 @02:16PM (#5103061)
    Ajile Systems JEMCore and there are others.
  • by rwsorden ( 244333 ) on Friday January 17, 2003 @04:28PM (#5104064)
    Back in the mid-90's, I worked for Computer Sciences Corp. (CSC) [csc.com] on a project that used the very-cool Rational R1000 [cmu.edu] platform for development and source-code control. In summary, the R1000 was a custom Ada-oriented development platform (even the hardware was custom-made, I believe). The operating system was fully implemented in Ada and featured a "command prompt" that required you to write snippets of Ada code (expressed as anonymous blocks) instead of shell commands. All errors were thrown as Ada exceptions. The "command prompt" editor even featured code completion and had a built-in debugger. It was even possible to auto-generate custom DOD-STD-2167A design documents (SDDs, IDDs, etc.) by embedding specialized comments in your Ada code (ala Javadoc) and using the built-in document generation modules. It was definitely cool for its time!
  • Re:Going Forth? (Score:4, Informative)

    by Alex Belits ( 437 ) on Friday January 17, 2003 @04:59PM (#5104254) Homepage

    What is the standard C library except an API specification to an OS?

    Standard C library is not a standard library of C language for Unix, it's a standard library of the Unix system that is used with C language (and every other language on Unix). Of course, for applications portability purpose it was ported to other systems, however it's still not really a part of the language design -- say, variable arguments list is a part of C design, but [v[s[n]]]printf strictly speaking isn't.

  • by Detritus ( 11846 ) on Friday January 17, 2003 @07:04PM (#5105097) Homepage
    What is the real instruction set? The processor's user-visible instruction set may be implemented in random logic, FPGAs, microcode, traps to machine code or some combination of the above. There can be more than one level of microcode. Some processors have a writable-control-store, allowing the manufacturer and/or user to change/enlarge the processor's microcode and instruction set. Western Digital used to make a multi-chip CPU that could be a DEC LSI-11 or an UCSD Pascal p-Machine by changing the control ROMs. On an IBM mainframe, an operating system call may be implemented in machine code, microcode or hardware, depending on which model you have.
  • Re:Use Emacs (Score:3, Informative)

    by Jason Earl ( 1894 ) on Friday January 17, 2003 @07:12PM (#5105146) Homepage Journal

    Assuming you are on a Linux box with Emacs (and info) properly installed you might be able to simply type 'info viper'. The info file included with viper is pretty darn good.

    Or you can just start up Emacs and type M-x viper-mode. viper-mode has a start-up message that is pretty handy, it should get you started without too much trouble. If you set the viper-expert-level variable low enough Emacs will act just like vi.

    If you are really interested in using Emacs, however, I would suggest learning to use Emacs' built in info browser. There is a ton of functionality built into Emacs that is not immediately apparent. I have been using Emacs for years now, and I still find amazing new functionality on a regular basis. Time spent reading the documentation will pay for itself quickly.

  • by voodoo1man ( 594237 ) on Friday January 17, 2003 @08:00PM (#5105390)
    Huh?

    By Lisp (no, it's not spelled all uppercase anymore) bytecode, do you mean Lisp Machine microcode? Because aside from that (and it wasn't even a standard), there is no such thing as "the Lisp bytecode." If that's what you mean, then the processor microcode won't do you any good as it's not any different from writing assembler.

    If, like you state in your second paragraph, you just want a VM sitting on top of the OS executing all the code, go buy some .Net or something. Then come back in a couple of years once everyone's realized the "thing" is incredibly slow*, and doesn't really do anything security-wise.

    Also, it's "funny" you mention that programming languages and OSes shouldn't be mixed, and then talk about Lisp. Have you actually used a Lisp environment in the past 20 years? The philosophy that the language is the OS (at least from the application's and the editor's point of view) is the pervasive paradigm for Lisp coding - and not only does it work, but it is also incredibly useful and efficient.

    * There is no such thing as the perfect (or even best) universal VM - the fact that different hardware architectures as well as different languages exist now and evolve at a rapid pace prevent it from existing.

The key elements in human thinking are not numbers but labels of fuzzy sets. -- L. Zadeh

Working...