FGCS Project Evaluation Report

Sten-Ake Tärnlund

next previous contents
unique general machine that cannot be seen anywhere else in the world. This is an 
outstanding result of its designers. In fact, the PIM itself justifies the focus of the 
FGCS project on parallel inference machines for logic programming. 

One could, of course, argue whether or not the project itself should have used more 
hardware and software available on the market or develop its own as it mostly did. In 
general, I think both alternatives are justifiable. For Japan, being so strong on hard-
ware, this project with logic programming as its key idea, is just an excellent place for 
various advanced hardware studies and experiments on machine prototypes. On the 
other hand, it would be possible to obtain several of the interesting results with more 
market hardware and software. This would show that these results are repeatable - a 
good scientific criterion. This line of research may lead to more procedural software, 
and that could impose a constraint on massive parallel processing, leading to more 
complicated programming and thus more expensive software development. 

In general, machines of this structure [9], but with more market hardware and 
software, is likely to become general purpose parallel machines on the market in the 
near future. So as a bonus from this project, Japanese manufacturers could go from 
these PIM prototypes to competitive massive parallel computers with market software 
- a pleasant spin-off from the FGCS project. 

2.2 Parallel Inference Software (PIMOS)

Pimos is a parallel operating system for a PIM and is written in the concurrent 
language KL-1 that includes control facilities e.g., for resource management. The con-
current languages GHC [10] and KL1 [11], are among the most prominent results of the 
FGCS project. GHC is an elegant successor of Parlog [12] and Concurrent Prolog [13]. 
It is famous in the world. KL1 has clearly been very useful for developing most of 
the software for the PIM:s. Nobody has done an operating systems project like this 
elsewhere, and it adds significantly to the success of the FGCS project. The operating 
systems principles of the PIMOS experience and the methodology of KL-1 comprehend 
new interesting concurrent programming ideas. We are keen to learn more about them 
and they deserve wider publicity. 

At this point, a comment on the concurrent versus declarative logic programming 
paradigms [14] may be appropriate. The invention of concurrent languages by Clark & 
Gregory, Shapiro and Ueda & Chikayama has stimulated a great interest in solving con-
current problems that occur frequently in operating systems. Although, this approach 
departs from the declarative (semantic) idea of logic programming, these languages 
provide interesting techniques for concurrent problems e.g., processes, committed-
choice, stream and-parallelism, and communications with terms containing variables 
and bounded-buffers. Taking up Quine's point [15] a solution in a concurrent language 
can, however, be regimented to a solution in logic. Futhermore, concurrent computa-


					- 129 -