What is natural language programming? Already Chomsky and his generation understood that using raw human language for this purpose is nonsense. First, it works on the absolutely different live computing system. Second, it is very imperfect. Human computations barely use a dozen consecutive steps of reasoning, not to mention thousands of instructions in programs. If we use human language, errors will be quickly accumulating and everything will be unworkable. Nevertheless using a simple, intuitive language was always a dream of programmers. How can we move towards this goal? One approach is to have a detailed description of natural language so that we could consider its features one by one and decide which are useful for programming and which are not. Although human language "as is" is not suitable for programming, if we select a convenient subset of its elements and provide explicit specification for them, we can create a workable programming language. In some aspects, it even may be better than languages of the existing computers.
NB is a knowledge base shell which uses structures of the natural syntax for data representation. It supports simple sentences such as statements, questions, orders. Also it supports complex English sentences such as rules and subordinate clauses of other types. NB has the mechanism of logical reasoning upon these data. One advantage of this language is as follows. In computers, most languages are specialized. One language was created for one specific purpose. Human language is universal. Ever wondered is it possible to mix Basic with Prolog? Try it with the language of NB. Not only it can use declarative and procedural programming together, you can also employ it as a query language for data retrieval. The system has a simple database as well as a more complicated knowledge base. Several examples are included.
The human-like virtual machine provides a convenient framework for development. Using it, the programmer is able not to think about system-level details and concentrate efforts on knowledge management and behavioral aspects of the application.
Natural language scripting is a convenient approach to drawing. Version 4.6 adds appropriate functions so you can easily arrange drawing with natural language interface for your users and yourself. Create diagrams, charts, and general-purpose pictures using standard geometric shapes, colors, and superimposed text.
Robotics Sandbox is a development environment where you can design complete artificial intelligence applications. It was created with STEM education in mind. Robotics Sandbox leverages the NB virtual machine for 3 purposes. 1. To create a workable real-time robotics control. 2. To emulate mechanics of manipulators. 3. To provide a physical model of the environment. Instead of working with complicated robots, write and debug your program in the virtual environment first. Then link it to a controller of real hardware via TCP/IP.
WinNB 5.23. Program a robot that can play ball.
Dialogue with machine
WinNB Copyright (c) 1998-2021 I. Volkov