Author: randy
Date: 2005-11-13 12:45:21 -0700 (Sun, 13 Nov 2005)
New Revision: 5272
Modified:
trunk/BOOK/general.ent
trunk/BOOK/general/prog/other-tools.xml
trunk/BOOK/introduction/welcome/changelog.xml
trunk/BOOK/introduction/welcome/credits.xml
Log:
Added several more entries to the 'Other Programming Tools' section
Modified: trunk/BOOK/general/prog/other-tools.xml
===================================================================
--- trunk/BOOK/general/prog/other-tools.xml 2005-11-12 17:21:25 UTC (rev
5271)
+++ trunk/BOOK/general/prog/other-tools.xml 2005-11-13 19:45:21 UTC (rev
5272)
@@ -864,6 +864,31 @@
</sect3>
<sect3 role="package">
+ <title>HLA (High Level Assembly)</title>
+
+ <para>The <application>HLA</application> language was developed as a tool
+ to help teach assembly language programming and machine organization to
+ University students at the University of California, Riverside. The basic
+ idea was to teach students assembly language programming by leveraging
+ their knowledge of high level languages like C/C++ and Pascal/Delphi. At
+ the same time, <application>HLA</application> was designed to allow
+ advanced assembly language programmers write more readable and more
+ powerful assembly language code.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://webster.cs.ucr.edu/AsmTools/HLA/"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="http://webster.cs.ucr.edu/AsmTools/HLA/dnld.html"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
<title>Icon</title>
<para><application>Icon</application> is a high-level, general-purpose
@@ -935,6 +960,29 @@
</sect3>
<sect3 role="package">
+ <title>Joy</title>
+
+ <para><application>Joy</application> is a purely functional programming
+ language. Whereas all other functional programming languages are based on
+ the application of functions to arguments, <application>Joy</application>
+ is based on the composition of functions. All such functions take a stack
+ as an argument and produce a stack as a value. Consequently much of
+ <application>Joy</application> looks like ordinary postfix notation.
+ However, in <application>Joy</application> a function can consume any
+ number of parameters from the stack and leave any number of results on
+ the stack. The concatenation of appropriate programs denotes the
+ composition of the functions which the programs denote.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://www.latrobe.edu.au/philosophy/phimvt/joy.html"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
<title>Judo</title>
<para><application>Judo</application> is a practical, functional
@@ -993,6 +1041,36 @@
</sect3>
<sect3 role="package">
+ <title>Lava</title>
+
+ <para><application>Lava</application> is a name unfortunately chosen for
+ several unrelated software development languages/projects. So it doesn't
+ appear as though BLFS has a preference for one over another, the project
+ web sites are listed below, without descriptions of the capabilities or
+ features for any of them.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://lavape.sourceforge.net/index.htm"/></para>
+ </listitem>
+ <listitem>
+ <para>Project Home Page: <ulink
+
url="http://javalab.cs.uni-bonn.de/research/darwin/#The%20Lava%20Language"/></para>
+ </listitem>
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://www.md.chalmers.se/~koen/Lava/"/></para>
+ </listitem>
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://members.tripod.com/mathias/IavaHomepage.html"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
<title>Lua</title>
<para><application>Lua</application> is a powerful light-weight
@@ -1039,6 +1117,32 @@
</sect3>
<sect3 role="package">
+ <title>Mercury</title>
+
+ <para><application>Mercury</application> is a new logic/functional
+ programming language, which combines the clarity and expressiveness of
+ declarative programming with advanced static analysis and error detection
+ features. Its highly optimized execution algorithm delivers efficiency
+ far in excess of existing logic programming systems, and close to
+ conventional programming systems. <application>Mercury</application>
+ addresses the problems of large-scale program development, allowing
+ modularity, separate compilation, and numerous optimization/time
+ trade-offs.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://www.cs.mu.oz.au/research/mercury/"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+
url="http://www.cs.mu.oz.au/research/mercury/download/release.html"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
<title>Mono</title>
<para><application>Mono</application> provides the necessary software to
@@ -1062,6 +1166,143 @@
</sect3>
<sect3 role="package">
+ <title>Mozart</title>
+
+ <para>The <application>Mozart</application> Programming System is an
+ advanced development platform for intelligent, distributed applications.
+ <application>Mozart</application> is based on the Oz language, which
+ supports declarative programming, object-oriented programming, constraint
+ programming, and concurrency as part of a coherent whole. For
+ distribution, <application>Mozart</application> provides a true network
+ transparent implementation with support for network awareness, openness,
+ and fault tolerance. Security is upcoming. It is an ideal platform for
+ both general-purpose distributed applications as well as for hard
+ problems requiring sophisticated optimization and inferencing
+ abilities.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://www.mozart-oz.org/"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="http://www.mozart-oz.org/download/view.cgi"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
+ <title>MPD</title>
+
+ <para><application>MPD</application> is a variant of the
+ <application>SR</application> programming language.
+ <application>SR</application> has a Pascal-like syntax and uses guarded
+ commands for control statements. <application>MPD</application> has a
+ C-like syntax and C-like control statements. However, the main components
+ of the two languages are the same: resources, globals, operations, procs,
+ procedures, processes, and virtual machines. Moreover,
+ <application>MPD</application> supports the same variety of concurrent
+ programming mechanisms as <application>SR</application>: co statements,
+ semaphores, call/send/forward invocations, and receive and input
+ statements.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://www.cs.arizona.edu/mpd/"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="http://www.cs.arizona.edu/mpd/download/"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
+ <title>Nemerle</title>
+
+ <para><application>Nemerle</application> is a high-level statically-typed
+ programming language for the .NET platform. It offers functional,
+ object-oriented and imperative features. It has a simple C#-like syntax
+ and a powerful meta-programming system. Features that come from the
+ functional land are variants, pattern matching, type inference and
+ parameter polymorphism (aka generics). The meta-programming system allows
+ great compiler extensibility, embedding domain specific languages,
+ partial evaluation and aspect-oriented programming.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://nemerle.org/Main_Page"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="http://nemerle.org/Download"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
+ <title>Octave</title>
+
+ <para>GNU <application>Octave</application> is a high-level language,
+ primarily intended for numerical computations. It provides a convenient
+ command line interface for solving linear and nonlinear problems
+ numerically, and for performing other numerical experiments using a
+ language that is mostly compatible with Matlab. It may also be used as
+ a batch-oriented language. <application>Octave</application> has
+ extensive tools for solving common numerical linear algebra problems,
+ finding the roots of nonlinear equations, integrating ordinary functions,
+ manipulating polynomials, and integrating ordinary differential and
+ differential-algebraic equations. It is easily extensible and
+ customizable via user-defined functions written in
+ <application>Octave</application>'s own language, or using dynamically
+ loaded modules written in C++, C, Fortran, or other languages.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://www.octave.org/"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="http://www.octave.org/download.html"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
+ <title>OO2C (Optimizing Oberon-2 Compiler)</title>
+
+ <para><application>OO2C</application> is an Oberon-2 development
+ platform. It consists of an optimizing compiler, a number of related
+ tools, a set of standard library modules and a reference manual.
+ Oberon-2 is a general-purpose programming language in the tradition of
+ Pascal and Modula-2. Its most important features are block structure,
+ modularity, separate compilation, static typing with strong type checking
+ (also across module boundaries) and type extension with type-bound
+ procedures. Type extension makes Oberon-2 an object-oriented
+ language.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://ooc.sourceforge.net/"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="http://prdownloads.sourceforge.net/ooc/"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
<title>Ordered Graph Data Language (OGDL)</title>
<para><application>OGDL</application> is a structured textual format that
@@ -1082,9 +1323,9 @@
</sect3>
<sect3 role="package">
- <title>pike</title>
+ <title>Pike</title>
- <para><application>pike</application> is a dynamic programming language
+ <para><application>Pike</application> is a dynamic programming language
with a syntax similar to Java and C. It is simple to learn, does not
require long compilation passes and has powerful built-in data types
allowing simple and really fast data manipulation. Pike is released under
@@ -1104,6 +1345,71 @@
</sect3>
<sect3 role="package">
+ <title>pyc</title>
+
+ <para><application>pyc</application> is a compiler that compiles
+ <application>Python</application> source code to bytecode (from
+ <filename class='extension'>.py</filename> to
+ <filename class='extension'>.pyc</filename>), written entirely in
+ <application>Python</application> (based on code from the <quote>compiler
+ package</quote>). It can compile itself and pass a 3-stage bootstrap.
+ <application>pyc</application> performs advanced optimizations which
+ results in better (smaller) bytecode.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://students.ceid.upatras.gr/~sxanth/pyc/"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
+ <title>Pyrex</title>
+
+ <para><application>Pyrex</application> is a language specially designed
+ for writing Python extension modules. It's designed to bridge the gap
+ between the nice, high-level, easy-to-use world of
+ <application>Python</application> and the messy, low-level world of C.
+ <application>Pyrex</application> lets you write code that mixes
+ <application>Python</application> and C data types any way you want, and
+ compiles it into a C extension for
+ <application>Python</application>.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://www.cosc.canterbury.ac.nz/~greg/python/Pyrex/"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
+ <title>Q</title>
+
+ <para><application>Q</application> is a functional programming language
+ based on term rewriting. Thus, a <application>Q</application> program or
+ <quote>script</quote> is simply a collection of equations which are used
+ to evaluate expressions in a symbolic fashion. The equations establish
+ algebraic identities and are interpreted as rewriting rules in order to
+ reduce expressions to <quote>normal forms</quote>.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://q-lang.sourceforge.net/"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="http://prdownloads.sourceforge.net/q-lang/"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
<title>R</title>
<para><application>R</application> is a language and environment for
@@ -1242,6 +1548,65 @@
</sect3>
<sect3 role="package">
+ <title>Squeak</title>
+
+ <para><application>Squeak</application> is an open, highly-portable
+ Smalltalk implementation whose virtual machine is written entirely in
+ Smalltalk, making it easy to debug, analyze, and change. To achieve
+ practical performance, a translator produces an equivalent C program
+ whose performance is comparable to commercial Smalltalks. Other
+ noteworthy aspects of <application>Squeak</application> include:
+ real-time sound and music synthesis written entirely in Smalltalk,
+ extensions of BitBlt to handle color of any depth and anti-aliased
+ image rotation and scaling, network access support that allows simple
+ construction of servers and other useful facilities, it runs
+ bit-identical on many platforms (Windows, Mac, Unix, and others), a
+ compact object format that typically requires only a single word of
+ overhead per object and a simple yet efficient incremental garbage
+ collector for 32-bit direct pointers efficient bulk-mutation of
+ objects.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://www.squeak.org/"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="http://www.squeak.org/Download/"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
+ <title>SR (Synchronizing Resources)</title>
+
+ <para><application>SR</application> is a language for writing concurrent
+ programs. The main language constructs are resources and operations.
+ Resources encapsulate processes and variables they share; operations
+ provide the primary mechanism for process interaction.
+ <application>SR</application> provides a novel integration of the
+ mechanisms for invoking and servicing operations. Consequently, all of
+ local and remote procedure call, rendezvous, message passing, dynamic
+ process creation, multicast, and semaphores are supported.
+ <application>SR</application> also supports shared global variables and
+ operations.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://www.cs.arizona.edu/sr/index.html"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="ftp://ftp.cs.arizona.edu/sr/"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
<title>Standard ML</title>
<para>Standard ML is a safe, modular, strict, functional, polymorphic
@@ -1333,6 +1698,85 @@
</sect3>
+ <sect3 role="package">
+ <title>TinyCOBOL</title>
+
+ <para><application>TinyCOBOL</application> is a COBOL compiler being
+ developed by members of the free software community. The mission is to
+ produce a COBOL compiler based on the COBOL 85 standards.
+ <application>TinyCOBOL</application> is avaliable for the Intel
+ architecture (IA32) and compatible processors on the following platforms:
+ BeOS, FreeBSD, Linux and MinGW on Windows.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://tinycobol.org/"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="http://prdownloads.sourceforge.net/tiny-cobol/"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
+ <title>Yorick</title>
+
+ <para><application>Yorick</application> is an interpreted programming
+ language, designed for postprocessing or steering large scientific
+ simulation codes. Smaller scientific simulations or calculations, such as
+ the flow past an airfoil or the motion of a drumhead, can be written as
+ standalone yorick programs. The language features a compact syntax for
+ many common array operations, so it processes large arrays of numbers
+ very efficiently. Unlike most interpreters, which are several hundred
+ times slower than compiled code for number crunching,
+ <application>Yorick</application> can approach to within a factor of four
+ or five of compiled speed for many common tasks. Superficially,
+ <application>Yorick</application> code resembles C code, but
+ <application>Yorick</application> variables are never explicitly declared
+ and have a dynamic scoping similar to many Lisp dialects. The
+ <quote>unofficial</quote> home page for <application>Yorick</application>
+ can be found at <ulink url="http://www.maumae.net/yorick"/>.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="ftp://ftp-icf.llnl.gov/pub/Yorick/doc/index.html"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="ftp://ftp-icf.llnl.gov/pub/Yorick/doc/download.html"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
+ <title>ZPL</title>
+
+ <para><application>ZPL</application> is an array programming language
+ designed from first principles for fast execution on both sequential
+ and parallel computers. It provides a convenient high-level programming
+ medium for supercomputers and large-scale clusters with efficiency
+ comparable to hand-coded message passing. It is the perfect alternative
+ to using a sequential language like C or Fortran and a message passing
+ library like MPI.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+
url="http://www.cs.washington.edu/research/zpl/home/index.html"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+
url="http://www.cs.washington.edu/research/zpl/download/download.html"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
</sect2>
<sect2>
@@ -1760,6 +2204,33 @@
</sect3>
<sect3 role="package">
+ <title>Exuberant Ctags</title>
+
+ <para><application>Exuberant Ctags</application> generates an index (or
+ tag) file of language objects found in source files that allows these
+ items to be quickly and easily located by a text editor or other utility.
+ A tag signifies a language object for which an index entry is available
+ (or, alternatively, the index entry created for that object). Tag
+ generation is supported for the following languages: Assembler, AWK, ASP,
+ BETA, Bourne/Korn/Zsh Shell, C, C++, COBOL, Eiffel, Fortran, Java, Lisp,
+ Lua, Make, Pascal, Perl, PHP, Python, REXX, Ruby, S-Lang, Scheme, Tcl,
+ Vim, and YACC. A list of editors and tools utilizing tag files may be
+ found at <ulink url="http://ctags.sourceforge.net/tools.html"/>.</para>
+
+ <itemizedlist spacing="compact">
+ <listitem>
+ <para>Project Home Page: <ulink
+ url="http://ctags.sourceforge.net/"/></para>
+ </listitem>
+ <listitem>
+ <para>Download Location: <ulink
+ url="http://prdownloads.sourceforge.net/ctags/"/></para>
+ </listitem>
+ </itemizedlist>
+
+ </sect3>
+
+ <sect3 role="package">
<title>GDB (GNU Debugger)</title>
<para><application>GDB</application> is the GNU Project debugger. It
Modified: trunk/BOOK/general.ent
===================================================================
--- trunk/BOOK/general.ent 2005-11-12 17:21:25 UTC (rev 5271)
+++ trunk/BOOK/general.ent 2005-11-13 19:45:21 UTC (rev 5272)
@@ -1,4 +1,4 @@
-<!ENTITY day "12">
+<!ENTITY day "13">
<!ENTITY month "11">
<!ENTITY year "2005">
<!ENTITY version "svn-&year;&month;&day;">
Modified: trunk/BOOK/introduction/welcome/changelog.xml
===================================================================
--- trunk/BOOK/introduction/welcome/changelog.xml 2005-11-12 17:21:25 UTC
(rev 5271)
+++ trunk/BOOK/introduction/welcome/changelog.xml 2005-11-13 19:45:21 UTC
(rev 5272)
@@ -42,10 +42,21 @@
-->
<listitem>
+ <para>November 13th, 2005</para>
+ <itemizedlist>
+ <listitem>
+ <para>[randy] - Added several more entries to the 'Other Programming
+ Tools' section. Many thanks to Miguel Bazdresch for his suggestions
+ and other contributions.</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
<para>November 12th, 2005</para>
<itemizedlist>
<listitem>
- <para>[dj] - Updated gcc4 patches for mozilla projects to include
+ <para>[dj] - Updated GCC4 patches for Mozilla projects to include
xptinfo.h anonymous enum patch.</para>
</listitem>
</itemizedlist>
Modified: trunk/BOOK/introduction/welcome/credits.xml
===================================================================
--- trunk/BOOK/introduction/welcome/credits.xml 2005-11-12 17:21:25 UTC (rev
5271)
+++ trunk/BOOK/introduction/welcome/credits.xml 2005-11-13 19:45:21 UTC (rev
5272)
@@ -340,6 +340,12 @@
</listitem>
<listitem>
+ <para><emphasis>Miguel Bazdresch</emphasis>
+ for many suggestions and contributions to the Other Programming Tools
+ section.</para>
+ </listitem>
+
+ <listitem>
<para><emphasis>Gerard Beekmans</emphasis>
for generally putting up with us and for running the whole LFS
project.</para>
--
http://linuxfromscratch.org/mailman/listinfo/blfs-book
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page