Библиотека сайта rus-linux.net
Are there languages that support threads?
Currently, Ada, Modula-3, Python 1.4, SmallTalk/X, Objective-C/ Gnustep and Java have intrinsic language elements to support threads (for example, Ada has the 'Select' statement which is a "thread guard"). However, the Linux implementations of these languages do not yet support the new kernel threads.
Naturally, C and C++ can make calls to spawn threads and processes, but there are no language elements to support them beyond these system calls. See below for a listing of available languages:
|Author:||New York University|
|Description:||Ada/Ed is a translator-interpreter for Ada. It is intended as a teaching tool and does not have the capacity, performance or robustness of commercial Ada compilers. Ada/Ed was developed as a long-range project in language definition and software prototyping.|
|Author:||New York University|
|Repositories:||Documentation [Source http://www.ocsystems.com/xada/gnat1.html]|
|Description:||GNAT is the Ada 95 compiler produced by a collaboration between a team at New York University and the Free Software Foundation, 'owner' of the GNU software project.|
|Title:||Guavac & Kaffe (Java)|
|Repositories:||Guavac Documentation [http://http.cs.berkeley.edu/~engberg/guavac/]|
|Description:||Guavac is a new compiler for the Java language, written by Effective
Edge Technologies and distributed under the Gnu Public License. You should
feel free to use, copy and modify it, based on the terms in the COPYING
file included in this distribution.
Kaffe is a virtual machine design to execute Java bytecode. Unlike other virtual machines available, this machine performs "just-in-time" code conversion from the abstract code to the host machine's native code. This will ultimately allow execution of Java code at the same speed as standard compiled code but while maintaining the advantages and flexibility of code independence.
|Author:||Sean Dorward, Phil Winterbottom, and Rob Pike|
|Threads Lib:||ProvenThreads (?)|
|Description:||Inferno(tm) is a new network operating system and programming environment to deliver content in a rich environment of heterogenous networks, clients and servers.|
|License:||Free but with special requirements.|
|Author:||DEC Systems Research Center [firstname.lastname@example.org]|
|Threads Lib:||(Uses own?)|
|Description:||Compiler, tools, applications and libraries for Modula-3, a simple
and efficient modular, imperative language. Modula-3 has objects, threads,
exceptions and generics. The libraries include X toolkits, a user interface
builder, an embedded interpreted language and network objects.
m3gdb is a GPL debugger for Modula-3.
|License:||(see copyright, freely usable and redistributable)|
|Threads Lib:||pthreads (user-space [kernel-space in development])|
|Description:||objc-shared-patches contains a complete source of GNU Objective-C runtime and a diff file for libobjects-0.1.14, both patched to generate a shared Linux ELF library.|
|Threads Lib:||POSIX threads (Python Makefile supports user-/ kernel-space)|
|Description:||Python is an interpreted, interactive, object-oriented programming language. It is often compared to Tcl, Perl, Scheme or Java.|
|Threads Lib:||POSIX Threads|
|Description:||Sather is an object oriented language designed to be simple, efficient, safe, flexible and non-proprietary. One way of placing it in the "space of languages" is to say that it aims to be as efficient as C, C++, or Fortran, as elegant as and safer than Eiffel, and support higher-order functions and iteration abstraction as well as Common Lisp, CLU or Scheme.|
|Threads Lib:||(Internal implementation of threads.)|
|Description:||SmallTalk interpreter for X11. SmallTalk is an object-oriented, interpreted programming language. Often it is used in simulations or rapid prototyping.|
|License:||Noncommercial (see `LICENSE')|
|[Previous Page]||[First Page]||[Dictionary]||[Email Author]||[Next Page]|