Added upstream from http://ftp.icm.edu.pl/pub/loglan/
[loglan.git] / HTML / MicroMan / Introduc.htm
1 <!doctype html public "-//IETF//DTD HTML//EN">
2 <HTML>
3
4 <HEAD>
5
6 <TITLE>Introduction</TITLE>
7
8 <META NAME="GENERATOR" CONTENT="Internet Assistant for Word 1.0Z">
9 <META NAME="AUTHOR" CONTENT="NOM">
10 </HEAD>
11
12 <BODY>
13
14 <P>
15 <U><I>Loglan 82, A micro-manual of the programming language -
16 Basic constructs and facilities</I></U>
17 <H1><IMG ALIGN=MIDDLE SRC="gifs/logo2.gif"> 1) Introduction</H1>
18 <HR>
19
20 <P>
21 LOGLAN-82 is a universal programming language designed at the
22 Institute of Informatics, University of Warsaw. Its syntax is
23 patterned upon Pascal's. Its rich semantics includes the classical
24 constructs and facilities offered by the Algol-family programming
25 languages as well as more modern facilities, such as concurrency
26 and exception handling.
27 <P>
28 The basic constructs and facilities of the LOGLAN-82 programming
29 language include:
30 <UL>
31 <LI>A convenient set of <A HREF="compound.htm">structured statements</A>,
32 <LI><A HREF="modulari.htm">Modularity</A> (with the possibility\r
33 of module nesting and extending),\r
34 <LI><A HREF="Classes.htm">Classes</A> (as a generalization of\r
35 records) which enable to define complex structured types, data\r
36 structures, packages, etc.,\r
37 <LI><A HREF="adjustab.htm">Adjustable arrays</A> whose bounds\r
38 are determined at run-time in such a way that multidimensional\r
39 arrays may be of various shapes, e.g. triangular, k-diagonal,\r
40 streaked, etc.,\r
41 <LI><A HREF="coroutin.htm">Coroutines and semi-coroutines</A>,\r
42 <LI><A HREF="Prefixin.htm">Prefixing</A> - the facility borrowed\r
43 from Simula-67, substantially generalized in LOGLAN-82 - which\r
44 enables to build up hierarchies of types and data structures,\r
45 problem-oriented languages, etc.,\r
46 <LI><A HREF="Formalty.htm">Formal types</A> treated as a method\r
47 of module parametrization,\r
48 <LI>Module <A HREF=Protecti.htm">protection</A> and encapsulation\r
49 techniques,\r
50 <LI><A HREF="Programm.htm">Programmed deallocator</A> - a tool\r
51 for efficient and secure garbage collection, which allows the\r
52 user to implement the optimal strategy of storage management,\r
53 <LI><A HREF="Exceptio.htm">Exception handling</A> which provides\r
54 facilities for dealing with run-time errors and other exceptional\r
55 situations raised by the user,\r
56 <LI><A HREF="Concurre.htm">Concurrency</A> easily adaptable to\r
57 any operating system kernel and allowing parallel programming\r
58 in a natural and efficient way.\r
59 </UL>\r
60 \r
61 <P>\r
62 The language covers system programming, data processing, and numerical\r
63 computations. Its constructs represent the state-of-art and are\r
64 efficiently implementable. Large systems consisting of many cooperating\r
65 modules are easily decomposed and assembled, due to the class\r
66 concept and prefixing.\r
67 <P>\r
68 LOGLAN-82 constructs and facilities have appeared and evolved\r
69 simultaneously with the experiments on the first pilot compiler\r
70 (implemented on Mera-400 Polish minicomputer). The research on\r
71 LOGLAN-82 implementation engendered with new algorithms for static\r
72 semantics, context analysis, code generation, data structures\r
73 for storage management etc.\r
74 <P>\r
75 The LOGLAN-82 compiler provides a keen analysis of syntactic and\r
76 semantic errors at compilation as well as at run time. The object\r
77 code is very efficient with respect to time and space. The completeness\r
78 of error checking guarantees full security and ease of program\r
79 debugging. <HR>\r
80 \r
81 <P><hr>\r
82 <A HREF="Tableofc.htm"><IMG SRC="gifs/PrevPage.gif"></A> \r
83 <A HREF="HomePage.htm"><IMG SRC="gifs/HomePage.gif"></A> \r
84 <A HREF="compound.htm"><IMG SRC="gifs/NextPage.gif"></A>\r
85 <HR>\r
86 \r
87 <ADDRESS>\r
88 Last update 02/07/95 \r
89 </ADDRESS>\r
90 \r
91 <ADDRESS>\r
92 Comments, suggestions and critiques are welcome to : <A HREF="mailto:linfo062@crisv2.univ-pau.fr">linfo062@crisv2.univ-pau.fr</A>\r
93 \r
94 </ADDRESS>\r
95 \r
96 </BODY>\r
97 \r
98 </HTML>\r