WO1993018453A1 - Utilisation d'un langage ayant une representation similaire pour les programmes et les donnees en informatique distribuee - Google Patents
Utilisation d'un langage ayant une representation similaire pour les programmes et les donnees en informatique distribuee Download PDFInfo
- Publication number
- WO1993018453A1 WO1993018453A1 PCT/FR1993/000251 FR9300251W WO9318453A1 WO 1993018453 A1 WO1993018453 A1 WO 1993018453A1 FR 9300251 W FR9300251 W FR 9300251W WO 9318453 A1 WO9318453 A1 WO 9318453A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- language
- function
- functions
- list
- sml
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/312—List processing, e.g. LISP programming language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
Definitions
- the present invention relates to the use of a language having a similar representation for programs and data.
- this type of language is mainly used in the field of artificial intelligence.
- this type of language provides the functional object that can be manipulated without restriction, efficient recursive programming as well as automatic management of the program-data memory.
- a program can be modified to take account of new events.
- its use is badly felt and in particular, there is a host of prejudices regarding its handling in other fields and in particular the new field that is distributed computing. .
- RPC Remote Procedure Call
- This RPC mechanism makes it possible, from a conventional language like the C language, to make a call to a procedure executed on a remote machine and using a different addressable space from the same machine.
- RPC calls allow the distribution of access to services applications and provide programmers with tools to build server-client applications in a simplified manner.
- this type of RPC mechanism has its limits and even has serious drawbacks.
- the server programs define functions that can be called with a list or description of parameters, these parameters are transmitted remotely from the client to the server, this which is extremely static, presents little flexibility and does not allow for example to transmit an executable structure such as a fragment of code.
- an executable structure such as a fragment of code.
- communication between applications running on different machines is synchronous, which poses blocking problems until the responses are returned.
- the RPC mechanism proposes, to unify local computing and distributed computing, to generalize the notion of function call to the network, that is to say that the parameters of the called function are transmitted and, as this mechanism works synchronously, it follows a blocking until the function returns a value and only after is executed execution.
- s' have encountered problems of coherence with other protocols, including with X / WINDOWS (trademark of MIT).
- X / WINDOWS trademark of MIT
- the choice of synchronous type mechanisms for applications in the telecommunications field is in contradiction with certain concepts of asynchronism, messages, types of protocols with concept of acknowledgment and concept of anticipation, acquired concepts which belong to the culture of the telecommunications sector.
- the present invention aims to remedy these various drawbacks and proposes the use of a language having a similar representation for programs and data which is simple and facilitates applications in distributed computing.
- the language of the aforementioned type is used for the distribution of information and processing in a network management system according to executable messages conveying code to be executed, that is to say simultaneously the functions to be " applied and the data on which the functions must be applied, asynchronous messages sent across the network in a free format from an interpreter of said language of one machine to another interpreter of said language of another machine, allowing in addition a dynamic modification of the code based on data manipulated during execution and a dynamic migratio of different code fragments on the different machines of the management system.
- the idea of the invention consists in using, and this against all odds, in the field of distributed computing a symbolic programming language designed to be applied essentially to the field of artificial intelligence.
- a message is sent in the symbolic language of an interpreter running on a machine to another interpreter of another machine, but this message is an executable or a fragment of executable, it does not contain only data, it also contains the function or functions to be applied to this data, which is different from the RPC mechanism where the function is local on the server and where only the data is sent remotely within the framework of a protocol defined between client and server
- the function and data then form an executable messag sent through the network which brings a great flexibility quite unusual in terms of distribution insofar as the request has a free format that is to say not defined by a protocol or by server side functions frozen. In this way, a local machine that has a program can send program fragments for execution on different machines.
- Another advantage is the choice of a language with a similar representation for programs and data which by definition can be modified to take account of new facts thus facilitating learning and providing an intelligent system capable of dynamically modifying / code during execution.
- the sending of an executable message which can be a fragment of code having a meaning by itself can correspond to a simple function call or on the contrary in a complex way to a program modification, which improves still flexibility in a distributed computing application.
- the exchange of asynchronous messages eliminates any risk of blocking an application of the system running on different machines.
- the application continues to run and as soon as the request or response to a request arrives, an action is triggered.
- the asynchrony of the exchange also eliminates any problem of consistency with other protocols.
- the present invention "makes it possible to benefit from a property which is also very advantageous which is to facilitate dynamic load balancing between the different processors or machines (networked machines, multiprocessors with or without shared memory, clusters,
- a code fragment corresponding to a set of complex operations can migrate on any machine in the system, another code fragment can migrate on a second machine and so on, while the assembly is managed so that the load is distributed, that is to say that said code fragments can be called so that the consumption of the central processing unit (CPU) is distributed among the different machines.
- CPU central processing unit
- the language used is a language of the Lisp type.
- the interpreter of the language of each machine mainly consists of a kernel to process the program to be executed by relying • on internal services as well: evaluator, memory management, as on the code executing the primitive functions of the language, a documented programmatic interface between the kernel and the code executing the primitive functions to authorize access to a plurality of services and facilitate the extension of the language and the interpreter to new primitive functions.
- This interpreter allows you to easily, quickly and efficiently develop a desired application. Thanks to the language used, the different functions can be coded (in an environment constituted by the interpreter and different libraries to which the interpreter has access) and tested quickly without going through the traditional phases of compilation-link-execution necessary for the other languages of programming. So the code is never compiled and when the interpreter is called, all cod existing is loaded and immediately interpreted.
- the programmatic interface offers access to a plurality of services, it must be clear and documented to advantageously facilitate the extension of the language and of the interpreter itself to new primitive functions offering, for example, access to new servers.
- the single figure provides an example of a structure representing an interpreter and a set of libraries to which it has access.
- the interpreter is referenced INT and the set of libraries is referenced LIB.
- the INT language interpreter is mainly composed of a K kernel, an API programmatic interface and a set of SOF functions implementing the primitive functions of the INT interpreter.
- this set of functions two categories can be roughly distinguished. A first in which are stored the basic functions LF, that is to say the functions specific to the language having a similar representation for the programs and the data, for example and advantageously, the basic functions of Lisp. A second to which belong extended functions which provide the interface with various services represented under the reference LIB.
- a set of SAF functions provides access to a library specific to a structured SLL language which in turn serves as an interface with relational databases (not shown).
- Another set of XAF functions provides access to an XML library whose purpose is to provide components for developing and managing graphical user interfaces.
- a third set of GAF unctions provides access to a GOL library authorizing applications using graphic objects elaborate.
- a fourth set of MIF functions provides access to a MIL library, which in turn acts as an interface with network management services and information systems.
- a primitive function of the language used according to the invention leads to the execution of a procedure which is known as a function encoding the primitive.
- a function coding a primitive is itself compiled like the rest of the interpreter being originally written for example in C language.
- the input arguments are received in SML language because they come from a working call device in SML language. Likewise, the value returned to the calling device is always in SML language.
- the SML language allows the implementation of a very large number of applications in the field of distributed computing also called cooperative computing.
- This language presents the characteristics of Lisp-type languages and proposes to provide efficient and consistent means of access, manipulation and presentation of information for the management of networks and information systems. For this, he must respect the following main rules:
- the managed objects are defined according to the rules of the ISO standard.
- the user interface for example for dialogue or viewing of information
- the SML language used according to the invention is influenced by the "Common Lisp” language but does not necessarily seek to be totally compatible with it, since the SML language seeks to achieve objectives which are fundamentally different from those of "Common Lisp” or any other Lisp dialect. Indeed, as a whole, the Lisp dialects are largely used in the field of artificial intelligence, while the SML language is suitable for applications in distributed computing and for the integration of management services. For this reason, there are significantly fewer basic functions required in SML language than functions proposed in "Common Lisp" for example.
- management information base base which contains all the information useful for a given application
- this representation etan obtained in a completely natural way for the SML language.
- the external libraries of the LIB set are made up of compiled procedures originally written in type C language, but unlike codan functions, primitives, they ignore arguments or objects of SML type.
- the latter perform an SML type argument conversion to C type language or perform the reverse conversion and thus can be considered as procedures linking the external libraries of the LIB set and the SML functions.
- the API interface authorizes the application of any SAF, XAF, GAF, MIF function via a BF function in SML language which results in the execution of a function coding an SML primitive. After some operations of "basic verification and formatting, the function coding the primitive SML calls the appropriate function allowing access to one of the external libraries of the set " LIB.
- the role of the K kernel consists in creating the link between a call to an SML function and a function coding an SML primitive.
- the functions encoding the SML primitives as well as the SAF, XAF, GAF, MIF functions are procedures in C type language, with code compilation.
- the call to the original SML function is interpreted.
- the interpretation phase corresponds to less than one percent of the execution time, most of the processing time is spent on the execution of compiled codes.
- an SML application can access various services by means of the interface and require that any event that occurs be notified to it.
- the action of a user on a keyboard, a screen, a mouse, ...) could be considered as an event specific which "awakens" an SML application allowing to initiate a dialogue with the user.
- This "wake up” operation involves the execution of specific SML procedures, in order to process the event.
- Such procedures called r ⁇ procedures. ⁇ el or "callbac" are of extreme importance for the development of any SML application.
- An SML application is set up to process events after production of calls to the appropriate event source and after supplying the name of the callback procedure which must be triggered when an event occurs.
- An SML application can actually be thought of as a collection of callback procedures.
- the application starts and after initialization, it notifies the event sources of its requirements by providing the names of the procedures. appropriate reminders. Then the application waits for the occurrence of said events.
- the events that occur are managed by the K core of the SML interpreter.
- the kernel is not only responsible for the relationships between SML calls and the functions coding SML primitives but also for processing events.
- the kernel waits, if necessary, for the application to be inactive and then activates the appropriate return procedure.
- any SML application which must be developed, must mainly perform the following two essential tasks:
- the SML language provides the interface with the various functions which allow the execution of these two essential tasks.
- the user interface is usually coded to use systems for developing and managing graphical user interfaces such as, for example, the known system OSF / Motif-X / Windo s (trademarks registered respectively by the Open Software Foundation and by MIT).
- OSF / Motif-X / Windo s trademarks registered respectively by the Open Software Foundation and by MIT.
- the SML language provides the interface for the compiled XAF functions accessing the external XML library, for example X / Motif.
- the set of information that must be made available for the different applications is called the MIB managed information base.
- This database does not consist of a simple data repository, as is a centralized dorine database, but is conceptual in nature because it represents the information that can be provided when it is needed. Retrieving information in the MIB database does not then imply a request for access to a database. This involves requesting information from a component that can provide the required information. Each of its components manages a part of the MIB database.
- An application requesting component
- an information manager information provider component
- a manager will respond to requests for information by feeding the application by means of parts of objects which he knows, the manager of these objects being called in the following manager of objects.
- the environment in which the invention is applied uses from the semantic point of view an "object-oriented" paradigm, which means that a programmer will not use a “procedure-oriented” approach.
- An object differs from a procedure in that it is an entity from which a certain number of actions may be required.
- the data specific to an object are never manipulated, directly, by anything other than the object itself, there is no concept of global data as, in general, this is the case for the model "procedure oriented".
- an integrating agent is an object manager which provides information to an application that has made a request, this integrating agent must, to provide said information, communicate via an interface with an agent (generally a component of another system) which manages the attribute values of a managed object of a management information base.
- An important feature of an application is that it interacts directly with the user, which an object manager does not do.
- An application receives requests through the user interface and returns information to the user, on the other hand an application does not manage objects, just as it does not act for other applications or other object managers.
- an application reacts to events, which means that it actually waits for an event to occur, for example the interaction of a user.
- the application does not generate events itself, these events being generated only by object managers.
- an application When an application is used in an SML environment, it must prepare to respond to user interactions. Information requests from a user cause interactions between the application and one or more object managers. This then implies, on the one hand, the active presence of the manager (s) and on the other hand that these manager (s) are ready to receive the messages sent by the applications. For this, the managers are always ready to operate and must remain actively present as long as the applications are active.
- This infrastructure includes communications management services which in turn include network management services and information systems.
- CMIS network management services and information systems
- An application has access to these services (CMIS for example) via the API interface by means of the BF and MIF functions and then from the external library MIL which in turn serves as an interface to services such as CMIS.
- GET retrieves information from an object (the values of these attributes), this is the most used operation.
- CANCEL GET allows an application to notify network management services and information systems that the number of responses already received after a GET operation is sufficient, therefore any other response from an object manager must be discarded .
- SET gives the attributes of the objects the specified values.
- CREATE creates an object instance.
- DELETE delete an object instance.
- An application can only set attribute values if the object definition allows this operation. This is also true for CREATE and DELETE operations.
- An asterisk * indicates that the preceding symbol is optional and can be repeated as many times as desired.
- a + sign indicates that the preceding symbol can be repeated as many times as desired but that it must be present at least once.
- Braces ⁇ indicate that the group of symbols between the brackets is considered to be a single term.
- a separation bar indicates that there are several alternatives.
- Numbers are represented by 32 bits with sign and can be noted in decimal form (default), in hexadecimal form (#x or Ox) or according to their ASCII code (# ⁇ J).
- Symbols are identifiers that allow you to name functions or variables.
- a symbol that begins with a colon (:) is a keyword.
- the key words are used in the definition of the functions.
- Symbols in the SML language are mono-evaluated, therefore a symbol can refer to a function or a variable but not to both.
- a list is both a data structure and a program structure. By default, a list is evaluated and the first element must be a function. However, an evaluation can be avoided by using the (') function.
- Lists are expandable sets of consecutive items stored in memory and therefore do not have the classic Lisp structure of chained cells. Lists or list strings (sets of lists) are, however, treated as Common Lisp sequences.
- a "Property” list is a special list made up of pairs, each pair containing an attribute and its associated value, the attribute having to be a symbol.
- the label must be defined as a target for the transfer of control. "Catch” and “throw” are paired. Several combinations of “catch” can be used with different labels. A “throw” necessarily corresponds to a “catch”, if a "throw” is encountered with an unknown label an error is reported.
- this function operates a general iteration, it provides a generalized iteration mechanism with an arbitrary numerical index. At the beginning the variables are linked to their initial value, then the function performs a loop which works as follows:
- this function allows you to create a loop from zero to (n-1) by operating as follows. First, it evaluates the number of laps to be performed, which number must be an integer. Then and successively it assigns the integers from zero to (evaluated number - 1). For each iteration, the instructions for each form are executed. If the evaluated number is equal to O or to a negative value the instructions are not executed. The result of this function is the evaluation of "result", if the latter is omitted the result is "nil".
- conditional test whose function is similar to “cond” but with a level of parentheses removed. It executes the "then” part of the first checked condition or the "else” part (if it exists) if no prerequisite has been checked.
- this function is used to assign a value to a variable. It is the equivalent of the assignment function of Lisp dialects. In its “setq” form the first argument is not evaluated while it is evaluated in its “set” form. These two functions evaluate the second argument and set the value of the first argument to the resulting value. Setting the active values does not change their value but calls a predefined function on the value.
- one of the other lists has a size smaller than the first it will be considered as a list of the same size as the first obtained by adding its last element at the end as many times as necessary. If the first list is smaller than another list, only the first n elements of the other lists are referenced.
- this function which is a negative conditional test, executes each instruction and returns the value of the last if the condition is evaluated at the value "nil", otherwise "nil" is returned. It is the inverse of the function
- this function allows you to load and execute an SML file specified by "filename”, using a search path specified by a variable.
- a first attempt is made to find a file named "filename sml" in each directory of the specified path. Then, if the file is not found, a search is made for a file designated "filename”. If the file name contains a "/" character, this name is considered to be an absolute path name and the search path is not used. If any error occurs while reading the file, an error message is transmitted and the next reading of the file is stopped. If the file is found, the function returns the name of the file as a string.
- append the starting position is the end of the file (by default).
- overwrite the starting position is the beginning of the file, the contents of the current file, if there are any, are not overwritten.
- file the stream created is a UNIX file (by default): string: the stream created is an internal chain.
- string the stream created is an internal chain.
- the '20 input / output functions like "read” or “print” (described below) can be applied as well as the string manipulation commands.
- the keyword ": buffered" specifies whether the buffer register should or should not be emptied at each output operation, the key value is one of the following:
- * print-readably * allows the control of the representation of the impression.
- the * print-readably * function is a variable. If its value is “nil” (default) any output can be read, that is to say that special characters are interpreted to improve readability. If its value is "true”, any output is printed as if it contained special characters, except for escape sequences which are always interpreted regardless of the value of * print- eadably *.
- "provide” and “require” these functions manage the loading of a file. They help determine if an SML file has been loaded so that it does not have to be loaded a second time.
- the common argument "file” must be a symbol that defines the file using its print name. The “file” symbol is then set to the value "nil” by one or the other function.
- the "require” function searches if the file -is present and therefore loaded in SML. If the file is not present then either it is loaded or nothing is done. The confirmation that a file has already been loaded is given by the "provide” function.
- the "provide” function confirms that the file has been loaded. This function is usually called in the loaded file.
- write-line this function writes a character string to the output stream if specified or otherwise to "standard output” and returns it.
- this function returns an undefined symbol in such a way that if the "boundp” function (described below) is applied to it, the value "nil” is returned.
- inferiority test which compares two numbers or two strings and returns the value "t” if the first argument is less than or equal to the second, otherwise the value "nil" is returned.
- the strings are also compared alphabetically.
- this function tests if an atom has already been defined. It returns the symbol evaluated if it has been defined, otherwise the value "nil” is returned. This function is checked if the variable called “symbol” has a value.
- this function requires the comparison between two numbers or two strings and returns one of the following values: . a strictly positive number if the first argument is greater than the second.
- this function copies an SML object, it returns a copy of the object which must be a list.
- this function returns the number of elements in a list or the number of characters in a string.
- list-get or “list-put” or “list-put! : these functions allow you to get or set a value in a list, “list-get” returns a value in a list “,” list-put! "changes the list and returns it while” list-put “returns, a new updated list.
- the value can be specified by a number (position) or an attribute (symbol). If an attribute is used the list is considered to be a property list and the referenced element of the list is the one that is just after the symbol in the list. If this is the position that is used, it refers to the position of the element in the list starting from zero. If the - "position” is greater than that of the last member from the list:
- this function applies a function "to the elements of the specified list or lists, returning a list or a string according to the value of the" result type "which determines what is constructed.
- the applied function must take as many arguments which the number N of list arguments supplied.
- the N lists must have the same length L.
- the "map” function returns a list or a chain of length L having as elements the result of calling the function with the The elements of the list, if a list is specified, or if for several lists the first elements of each list are specified, then the second elements of each list are returned and this up to L elements.
- this function classifies the list in ascending order by means of the "comparison” function.
- this function returns a sublist from the element at the start position ("start") to the element at the end position ("end").
- This function can also be used with a string.
- list functions can also be used for strings, such as: “append”, “length”, “map”, “max”, “nconc”, “position”, “subseq”.
- string-downcase or “string-upcase”: these functions return a copy of a string after conversion.
- list functions can be used to process arrays, such as: “list-get”, “list-put”, “list-put!, “List-remove!, “Maphash” .
- An object of an array is created using the "coerce” function applied to a property list.
- this function creates a copy of a specified list using it as a template for creating the copy.
- this function defines an SML macro. This is normal use * to define a new macro defining the name of the macro using the parameters declared in the "lambda”"list and in the" form ".
- this function defines a "lambda” expression which is the basic form for determining an anonymous function using "lambda” expressions.
- a "lambda” expression is made up of a lambda symbol, a lambda list and the body of the lambda expression.
- a lambda list specifies the parameters. When a function is called, its arguments are matched with the parameters of the corresponding lambda list. If required parameters are specified, the corresponding arguments must be present when the lambda expression is applied.
- a list “lambda” can use key words, beginning with the & symbol and defined as follows':
- lambda macro expression which is the basic form for defining an anonymous macro. If required parameters are specified the corresponding arguments must be present when the lambda expression is applied.
- a "lambdamacro" list can use keywords starting with the symbol & and defined in an equivalent way to those of the "lambda” list: & optional, & rest, & key and & aux.
- System the CPU time used by the system on behalf of SML.
- the context is linked and each form evaluated.
- This function returns an object of type "timer" which can be reset to zero by the "remove-timer” function described below.
- SML also uses debugging tools, in particular the following functions:
- the XAF function set provides access to the XML library which has components for developing and manage graphical user interfaces, for example X / Motif.
- the architecture of an X Window system is based on the client-server model.
- the server manages all input and output devices (for example, the mouse), it creates and manipulates the windows on the screen, produces text and graphics.
- the application which uses the facilities offered by the server is called a client.
- the client communicates with the server after connection to the network using specific protocols.
- the server communicates with clients by sending "events" to client applications, for example, trivially, when the server generates an event in response to a user action on the mouse. In the present context, this means that this type of event is supported by the SML interpreter and that a callback function specific to it is executed.
- An SML application using network management services and information systems, such as CMIS, along with external libraries for developing and managing graphical user interfaces, such as X / Motif, must perform the following operations:
- the GAF function set in turn allows access to the GOL library authorizing applications using graphic objects.
- Such applications make it possible to present and edit two-dimensional graphic objects from graphic libraries which can be integrated into existing user interfaces such as X / Motif, MS-WINDOWS, Postscript, etc, ....
- the role of the SAF functions is to authorize access to a specific SLL library of a structured language, such as SQL, which in turn serves as an interface with relational databases such as, for example, INGRES
- the SAF functions offer two levels of functionality. The first allows you to build standard requests in the structured language in the SML environment, the functions used at this level not interacting with the database server. At the second level, the functions used interact with the database server to authorize, among other things, connection or disconnection audit server, updating when changes are desired.
- the language used according to the invention in which the typing relates to the content of the variables rather than to the variables makes it possible to produce interfaces for accessing servers which are very significantly simplified and facilitate generic programming, data structure being manipulated directly without condition.
- the SML variables have no type because they are supposed to all exist in an indeterminate state (value "nil") and it is at the time of an assignment that the type is at the same time fixed thus authorizing a programming generic. This is a powerful advantage compared to C-type languages for which types are compiled, which implies their knowledge before programming.
- executable code can be easily and naturally modified by itself to adapt to the types of data received.
- an application can send a request to the network to request the value of an administrative object without knowing its structure and then dynamically build display and update functions adapted to the structure of the received object.
- the fact that there is no difference between the program and the data has the consequence that the program can modify itself and results in an application dynamically modifying itself. depending on the data it handles.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
- Multi Processors (AREA)
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5515415A JPH07500688A (ja) | 1992-03-12 | 1993-03-12 | 分散情報処理におけるプログラム用とデータ用とで類似の表現を有する言語の使用方法 |
DE69303013T DE69303013T2 (de) | 1992-03-12 | 1993-03-12 | Anwendung einer sprache mit einer aehnlichen darstellung fuer programme und daten in der verteilten datenverarbeitung |
CA002131632A CA2131632C (fr) | 1992-03-12 | 1993-03-12 | Utilisation d'un langage ayant une representation similaire pour les programmes et les donnees en informatique distribuee |
EP93918750A EP0631675B1 (fr) | 1992-03-12 | 1993-03-12 | Utilisation d'un langage ayant une representation similaire pour les programmes et les donnees en informatique distribuee |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9202977A FR2688608B1 (fr) | 1992-03-12 | 1992-03-12 | Utilisation d'un langage ayant une representation similaire pour les programmes et les donnees en informatique distribuee. |
FR92/02977 | 1992-03-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1993018453A1 true WO1993018453A1 (fr) | 1993-09-16 |
Family
ID=9427622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR1993/000251 WO1993018453A1 (fr) | 1992-03-12 | 1993-03-12 | Utilisation d'un langage ayant une representation similaire pour les programmes et les donnees en informatique distribuee |
Country Status (7)
Country | Link |
---|---|
EP (1) | EP0631675B1 (fr) |
JP (1) | JPH07500688A (fr) |
CA (1) | CA2131632C (fr) |
DE (1) | DE69303013T2 (fr) |
ES (1) | ES2094561T3 (fr) |
FR (1) | FR2688608B1 (fr) |
WO (1) | WO1993018453A1 (fr) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102007055117A1 (de) | 2007-03-26 | 2008-10-02 | Boris Kaplan | Ein System von Künstlicher Intelligenz von einem Cyborg oder einem Android für das zeigerorientierte Objekterfassungsverfahren von Informationen basierend auf einer natürlichen Sprache und das Arbeitsverfahren von dem System |
DE102014016968A1 (de) | 2014-11-18 | 2015-01-22 | Boris Kaplan | Ein Computersystem von einer Künstlichen Intelligenz von einem Cyborg oder einem Android, wobei eine aufgenommene Signal-Reaktion des Computersystems von der Künstlichen Intelligenz von dem Cyborg oder dem Android, eine entsprechende Assoziation des Computersystems von der Künstlichen Intelligenz von dem Cyborg oder dem Android, und ein entsprechender Gedanke des Computersystems von der Künstlichen Intelligenz von dem Cyborg oder dem Android in dem Computersystem physisch gebaut werden, und ein Arbeitsverfahren von dem Computersystem von der Künstlichen Intelligenz von dem Cyborg oder dem Android |
DE102021005701A1 (de) | 2021-11-17 | 2023-05-17 | Boris Kaplan | Ein Computersystem von einer Künstlichen Intelligenz von einem Cyborg oder einem Android, wobei eine aufgenommene Signal-Reaktion des Computersystems von der Künstlichen Intelligenz von dem Cyborg oder dem Android, eine entsprechende Assoziation des Computersystems von der Künstlichen Intelligenz von dem Cyborg oder dem Android, und ein entsprechender Gedanke des Computersystems von der Künstlichen Intelligenz von dem Cyborg oder dem Android in dem Computersystem physisch gebaut werden, und ein Arbeitsverfahren von dem Computersystem von der Künstlichen Intelligenz von dem Cyborg oder dem Android |
DE102023000489A1 (de) | 2023-02-14 | 2023-04-13 | Boris Kaplan | Ein Computersystem von einer Künstlichen Intelligenz von einem Cyborg oder einem Android, wobei eine aufgenommene Signal-Reaktion des Computersystems von der Künstlichen Intelligenz von dem Cyborg oder dem Android, eine entsprechende Assoziation des Computersystems von der Künstlichen Intelligenz von dem Cyborg oder dem Android, und ein entsprechender Gedanke des Computersystems von der Künstlichen Intelligenz von dem Cyborg oder dem Android in dem Computersystem physisch gebaut werden, und ein Arbeitsverfahren von dem Computersystem von der Künstlichen Intelligenz von dem Cyborg oder dem Android. |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2043141A1 (fr) * | 1990-07-18 | 1992-01-19 | Richard F. Bournique | Dispositif hypermedia utilisant les systemes x window et xt intrinsics |
-
1992
- 1992-03-12 FR FR9202977A patent/FR2688608B1/fr not_active Expired - Fee Related
-
1993
- 1993-03-12 DE DE69303013T patent/DE69303013T2/de not_active Expired - Fee Related
- 1993-03-12 WO PCT/FR1993/000251 patent/WO1993018453A1/fr active IP Right Grant
- 1993-03-12 EP EP93918750A patent/EP0631675B1/fr not_active Expired - Lifetime
- 1993-03-12 ES ES93918750T patent/ES2094561T3/es not_active Expired - Lifetime
- 1993-03-12 JP JP5515415A patent/JPH07500688A/ja active Pending
- 1993-03-12 CA CA002131632A patent/CA2131632C/fr not_active Expired - Fee Related
Non-Patent Citations (5)
Title |
---|
COMMUNICATIONS OF THE ACM vol. 34, no. 9, Septembre 1991, NEW YORK, NY, US pages 59 - 61 H. MULLER 'LispView: Leverage through Integration' * |
I.E.E.E TRANSACTIONS ON COMPUTERS vol. 37, no. 8, Août 1988, NEW YORK, NY, US pages 930 - 944 R. BISIANI ET AL 'Multilanguage Parallel Programming of Heterogeneous Machines' * |
INFORMATIK SPEKTRUM vol. 14, no. 1, Février 1991, BERLIN, DE pages 34 - 36 M. MUTH 'Das X-Window System' * |
NTT REVIEW vol. 4, no. 1, Janvier 1992, TOKYO, JP pages 85 - 90 Y. AMAGAI 'A distributed LISP programming workbench' * |
PROCEEDINGS OF THE NINETEENTH ANNUAL SOUTHEASTERN SYMPOSIUM ON SYSTEM THEORY 1987, WASHINGTON, DC, US pages 126 - 130 S. PADALKAR ET AL 'Communicating sequential LISP systems for VMS/DECNET' * |
Also Published As
Publication number | Publication date |
---|---|
DE69303013D1 (de) | 1996-07-11 |
EP0631675A1 (fr) | 1995-01-04 |
EP0631675B1 (fr) | 1996-06-05 |
CA2131632C (fr) | 2000-02-22 |
JPH07500688A (ja) | 1995-01-19 |
DE69303013T2 (de) | 1996-11-14 |
ES2094561T3 (es) | 1997-01-16 |
FR2688608A1 (fr) | 1993-09-17 |
FR2688608B1 (fr) | 1997-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2091546C (fr) | Utilisation d'un langage dont le typage porte sur le contenu des variables et permettant de manipuler des constructions complexes | |
O'Kane | A gentle introduction to ROS | |
US5860010A (en) | Use of language with similar representation for programs and data in distributed data processing | |
Brown et al. | The Architecture of Open Source Applications: Elegance, Evolution, and a Few Fearless Hacks | |
Parker et al. | Distributed tracing in practice: Instrumenting, analyzing, and debugging microservices | |
EP0793171B1 (fr) | Système de configuration de logiciels préconfigurés sur des systèmes ouverts en réseau dans un environnement distribué et procédé mis en oeuvre par un tel système | |
Bergel et al. | Deep Into Pharo | |
US20050066050A1 (en) | Data conveyance management | |
BE1008621A3 (fr) | Procedure et procede de communication entre machines et procede generalise de preparation de programmes afferents. | |
WO2010009996A1 (fr) | Procede de compilation de programme informatique | |
US20230229405A1 (en) | Code-independent graph technology | |
EP1450253A2 (fr) | Procédé de développement de projets informatiques | |
Ihrig et al. | Full Stack JavaScript Development With MEAN: MongoDB, Express, AngularJS, and Node. JS | |
EP0631675B1 (fr) | Utilisation d'un langage ayant une representation similaire pour les programmes et les donnees en informatique distribuee | |
FR2780589A1 (fr) | Agent de communication entre un administrateur de systeme informatique et un systeme de ressources distribuees et outils de creation d'un tel agent | |
Ahmed et al. | Asp. Net Web Developer’s Guide | |
Fuchs | Domain Specific Languages for ad hoc Distributed Applications. | |
FR2893439A1 (fr) | Procede pour generer des images associees a un contexte 3d en temps reel, et dispositif teleinformatique permettant de realiser des operations sur une base de donnees multimedia | |
Hoffman | Building Microservices with ASP. NET Core: Develop, Test, and Deploy Cross-platform Services in the Cloud | |
Sneeringer | Professional Python | |
Kozlenkov et al. | Prova rule language version 3.0 user’s guide | |
Ramey | The bourne-again shell | |
Weil | Learn Microservices-ASP. NET Core and Docker | |
LoVerso et al. | Caubweb: Detaching the web with Tcl | |
Khayam | A Meta-Approach to Describe Effectful and Distributed Semantics |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): CA JP US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2131632 Country of ref document: CA |
|
ENP | Entry into the national phase |
Ref document number: 1994 295783 Country of ref document: US Date of ref document: 19940912 Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1993918750 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 1993918750 Country of ref document: EP |
|
WWG | Wipo information: grant in national office |
Ref document number: 1993918750 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 1997 905389 Country of ref document: US Date of ref document: 19970804 Kind code of ref document: A |