public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc/devel/modula-2] Fix urls in gm2.texi, remove older news, improvements to def2doc.py.
@ 2022-11-01 11:44 Gaius Mulley
  0 siblings, 0 replies; only message in thread
From: Gaius Mulley @ 2022-11-01 11:44 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:ca91bc242ab54aefce7fe68cae7a748c8a94353a

commit ca91bc242ab54aefce7fe68cae7a748c8a94353a
Author: Gaius Mulley <gaiusmod2@gmail.com>
Date:   Tue Nov 1 11:43:19 2022 +0000

    Fix urls in gm2.texi, remove older news, improvements to def2doc.py.
    
    Remove older papers and talks as the front end has changed
    significantly.  Remove older text description for coroutines since the
    underlying threading model has also changed.  Corrected other urls
    given floppsie.comp.glam.ac.uk has disappeared.
    
    gcc/ChangeLog:
    
            * doc/gm2.texi (Papers and talks): Removed.
            Urls to floppsie.comp.glam.ac.uk replaced.
    
    gcc/m2/ChangeLog:
    
            * gm2-libs-coroutines/README.texi: Remove all GNU Pthread text
            as the processes now use __gthread.
            * tools-src/def2doc.py (emitSubSection): Use '-' character.
            (parseDefinition) Improved.

Diff:
---
 gcc/doc/gm2.texi                       | 24 ++++---------------
 gcc/m2/gm2-libs-coroutines/README.texi | 42 +---------------------------------
 gcc/m2/tools-src/def2doc.py            | 10 ++++----
 3 files changed, 9 insertions(+), 67 deletions(-)

diff --git a/gcc/doc/gm2.texi b/gcc/doc/gm2.texi
index fdecabc01ab..5d7b800a046 100644
--- a/gcc/doc/gm2.texi
+++ b/gcc/doc/gm2.texi
@@ -192,7 +192,7 @@ here is a talk on GNU Modula-2 given at
 Manchester on 8th September 2018.
 The title is, ``GNU Modula-2 update, catching semantic errors post
 code optimisation and improved debugging''
-[@url{http://floppsie.comp.glam.ac.uk/Papers/paper23/gaius-mulley-gnu-m2.pdf,slides}
+[@url{https://splendidisolation.ddns.net/Papers/paper23/talk.pdf,slides}
 and @url{https://www.youtube.com/watch?v=6jf6weRuHjk,video}].
 
 @item gm2 1.8.2
@@ -215,7 +215,7 @@ here is a talk on GNU Modula-2 given at
 Hebden Bridge on 9th September 2016.
 The title is, ``GNU Modula-2 status, whole
 program optimisation and language interoperability''
-[@url{http://floppsie.comp.glam.ac.uk/Papers/paper22/gaius-gcc-cauldron-2016.pdf,slides}
+[@url{https://splendidisolation.ddns.net/Papers/paper22/talk.pdf,slides}
 and @url{https://www.youtube.com/watch?v=8GMyxwHdr1E,video}].
 @item gm2 1.1.6
 was released on February 22nd 2016.  gm2-1.1.6 grafts onto gcc-4.7.4.
@@ -416,28 +416,13 @@ or by
 The mailing list contents can be viewed
 @url{http://lists.gnu.org/archive/html/gm2}.
 
-@node Other languages, Papers and talks, Community, Using
+@node Other languages, , Community, Using
 @section Other languages for GCC
 
 These exist and can be found on the frontends web page on the
 @uref{http://gcc.gnu.org/frontends.html, gcc web site}.
 
-@node Papers and talks, , Other languages, Using
-@section Papers and talks
-
-A paper was presented at the @uref{http://www.gccsummit.org/2006,
-GCC 2006 conference} on
-@uref{http://floppsie.comp.glam.ac.uk/Papers/paper15/mulley-proc.pdf,
-the state of GNU Modula-2}.
-
-A @uref{http://www.gccsummit.org/2010/speakers.php?types=LIGHTNING,
-lightening talk} has been given at the GCC 2010 conference titled
-"Exploiting front end knowledge to effortlessly create Python modules"
-and the slides are
-@uref{http://floppsie.comp.glam.ac.uk/Papers/paper20/talk.pdf,
-available}.
-
-@node Using, , Overview, Top
+@node Using, , Community, Top
 @chapter Using GNU Modula-2
 
 @menu
@@ -462,7 +447,6 @@ available}.
 * Built-ins::             Accessing GNU Modula-2 Built-ins.
 * The PIM system module:: SYSTEM data types and procedures.
 * The ISO system module:: SYSTEM data types, procedures and run time.
-* Papers and talks::      Papers and talks.
 * Other languages::       Other languages for GCC.
 * What is GNU Modula-2::  Brief description of GNU Modula-2.
 * Why use GNU Modula-2::  Advantages of GNU Modula-2.
diff --git a/gcc/m2/gm2-libs-coroutines/README.texi b/gcc/m2/gm2-libs-coroutines/README.texi
index f66c0549a89..72a1db3b043 100644
--- a/gcc/m2/gm2-libs-coroutines/README.texi
+++ b/gcc/m2/gm2-libs-coroutines/README.texi
@@ -5,44 +5,4 @@
 @c For copying conditions, see the file gcc/doc/include/fdl.texi.
 
 This directory contains a PIM @code{SYSTEM} containing the
-@code{PROCESS} primitives built on top of GNU Pthreads.
-
-The justification for this approach is that it provides a
-@code{SYSTEM} compatible with Programming in Modula-2 [234] and the
-Logitech 3.0 compiler. It also allows higher level executives to be
-ported onto GM2 with little effort. The disadvantage with this
-approach is that @code{IOTRANSFER} is not
-preemptive. @code{IOTRANSFER} will only context switch when a call to
-@code{LISTEN} is made or a call to @code{SYSTEM.TurnInterrupts} is
-made.
-
-In practice this limitation can be tolerated as long as processes
-perform IO at some point (or wait for a timer interrupt) or call
-@code{SYSTEM.TurnInterrupts}. But nevertheless a @code{LOOP}
-@code{END} will starve all other processes. However the great
-advantage is that GNU Modula-2 can offer users the ability to use
-@code{IOTRANSFER}, @code{TRANSFER}, @code{NEWPROCESS} in user space,
-on a multi-user operating system and across a range of platforms.
-
-The GNU Modula-2 @code{SYSTEM} works by utilizing the user context
-switching mechanism provided by GNU Pthreads. @code{NEWPROCESS}
-creates a new context, @code{TRANSFER} switches
-contexts. @code{IOTRANSFER} is more complex. There is a support module
-@code{SysVec} which provides pseudo interrupt vectors. These can be
-created from input/output file descriptors or timer events
-@code{timeval}. This vector is then passed to @code{IOTRANSFER} which
-keeps track of which file descriptors and timevals are active. When a
-call to @code{TurnInterrupts} or @code{LISTEN} is made the sub system
-calls @code{pth_select} and tests for any ready file descriptor or
-timeout. A ready file descriptor or timeout will ultimately cause the
-backwards @code{TRANSFER} inside @code{IOTRANSFER} to take effect.
-
-See the @file{gm2/examples/executive} directory for an executive and
-timerhandler module which provide higher level process creation,
-synchronisation and interrupt handling routines. These libraries have
-been tested with the examples shown in @file{gm2/examples/executive}
-and @file{gm2/gm2-libs-coroutines}.
-
-Users of these libraries and the libraries in
-@file{gm2/examples/executive} must link their application against the
-GNU Pthread library (typically by using @code{-lpth}).
+@code{PROCESS} primitives built on top of @code{gthread}s.
diff --git a/gcc/m2/tools-src/def2doc.py b/gcc/m2/tools-src/def2doc.py
index 163987ee910..0891b081acf 100755
--- a/gcc/m2/tools-src/def2doc.py
+++ b/gcc/m2/tools-src/def2doc.py
@@ -1,6 +1,6 @@
 #!/usr/bin/env python3
 
-# def2texi.py creates texi library documentation for all exported procedures.
+# def2doc.py creates texi library documentation for all exported procedures.
 # Contributed by Gaius Mulley <gaius.mulley@southwales.ac.uk>.
 
 # Copyright (C) 2000-2022 Free Software Foundation, Inc.
@@ -64,7 +64,7 @@ def emitSubSection(name):
         output.write("@subsection " + name + "\n")
     elif args.sphinx:
         output.write(name + "\n")
-        output.write("=" * len(name) + "\n")
+        output.write("-" * len(name) + "\n")
 
 
 #  displayLibraryClass - displays a node for a library directory and invokes
@@ -248,8 +248,7 @@ def parseDefinition(dir, source, build, file, needPage):
         output.write(str.rstrip(line) + "\n")
         line = f.readline()
         if len(str.rstrip(line)) == 0:
-            output.write(str.replace(str.replace(str.rstrip(line),
-                                                 "{", "@{"), "}", "@}") + "\n")
+            output.write("\n")
             line = f.readline()
             if (str.find(line, "(*") != -1):
                 removeFields(f, line)
@@ -257,8 +256,7 @@ def parseDefinition(dir, source, build, file, needPage):
                 output.write(str.rstrip(line) + "\n")
         else:
             output.write(str.rstrip(line) + "\n")
-
-            line = f.readline()
+        line = f.readline()
         while line:
             line = str.rstrip(line)
             checkIndex(line)

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-11-01 11:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-01 11:44 [gcc/devel/modula-2] Fix urls in gm2.texi, remove older news, improvements to def2doc.py Gaius Mulley

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).