Different situations will determine whether to use a real, temporary file-based, or temporary in-memory tables and views.
Temporary tables are ideal for holding short-term data used by the current R:BASE session. For example, suppose many SELECTs are needed upon the result of a complex query. An efficient strategy is to execute the complex query once, then store the result in a temporary table. An index can also be created on the temporary table to speed up queries. In addition to indexes, rules, constraints, and triggers can be created on temporary tables.
Real tables should be used whenever the data is to be preserved after disconnecting the database so that it is still there when connecting again. Temporary tables should be used if the tables are going to be large in the size of their data. R:BASE can store more data in a temporary file than in memory. Most temporary tables can probably be in-memory tables. By being in-memory tables, reads and writes to a temporary file can eliminated, which make in-memory tables faster to access than file-based temporary tables. In-memory tables are ideal for small tables that are repeatedly used for things like lookups. Such tables can be created and populated in an initialization process in your application.
For views, the decision really comes down to whether or not the view definition will be a permanent part of the database's table and view structure. If the view can be created, used, and discarded when the database is disconnected, then temporary or in-memory views should be used. It makes no difference whether the TEMPORARY or INMEMORY parameter is used when defining the view. Temporary or in-memory view creation can be something that is done in an initialization process in your application.