lisp

Is there a lisp (programming language) compiler for qnx?

Rishi Oswal <rishi@g-viz.com> wrote:

Is there a lisp (programming language) compiler for qnx?

There used to be a list interpreter for QNX 2.
This came from what must have been readily
available source code. I don’t know much more
than that, but a web search will probably turn
up something.

\

Mitchell Schoenbrun --------- maschoen@pobox.com

I think Cogent (Andrew Thomas?) has a lisp interpreter

Previously, Mitchell Schoenbrun wrote in comp.os.qnx:
{ Rishi Oswal <rishi@g-viz.com> wrote:
{ > Is there a lisp (programming language) compiler for qnx?
{
{ There used to be a list interpreter for QNX 2.
{ This came from what must have been readily
{ available source code. I don’t know much more
{ than that, but a web search will probably turn
{ up something.
{
{
{ –
{ Mitchell Schoenbrun --------- maschoen@pobox.com
{
{
{


Pat Ford email: pford@qnx.com
QNX Software Systems, Ltd. WWW: http://www.qnx.com
(613) 591-0931 (voice) mail: 175 Terence Matthews
(613) 591-3579 (fax) Kanata, Ontario, Canada K2M 1W8

“Rishi Oswal” <rishi@g-viz.com> writes:

Is there a lisp (programming language) compiler for qnx?

Slang is based on a LISP engine, and can execute both LISP and Slang
code - see www.cogent.ca.

Emacs 20.x has a LISP interpreter built in.

Most of the Common LISP implementations available for UN*X don’t work
with QNX due to their use of dlopen() and dlsym() amongst others. You
could try to get GCL (GNU Common Lisp) running. I succeeded once long
ago, but it took work.

Andrew


Andrew Thomas, President, Cogent Real-Time Systems Inc.
2430 Meadowpine Boulevard, Suite 105, Mississauga, Ontario, Canada L5N 6S2
Email: andrew@cogent.ca WWW: http://www.cogent.ca

will these engines work with qnx rtp?


Andrew Thomas <andrew@cogent.ca> wrote in message
news:x7aeecrjdt.fsf@cogent.ca

“Rishi Oswal” <> rishi@g-viz.com> > writes:

Is there a lisp (programming language) compiler for qnx?

Slang is based on a LISP engine, and can execute both LISP and Slang
code - see > www.cogent.ca> .

Emacs 20.x has a LISP interpreter built in.

Most of the Common LISP implementations available for UN*X don’t work
with QNX due to their use of dlopen() and dlsym() amongst others. You
could try to get GCL (GNU Common Lisp) running. I succeeded once long
ago, but it took work.

Andrew


Andrew Thomas, President, Cogent Real-Time Systems Inc.
2430 Meadowpine Boulevard, Suite 105, Mississauga, Ontario, Canada L5N 6S2
Email: > andrew@cogent.ca > WWW: > http://www.cogent.ca

In article <x7aeecrjdt.fsf@cogent.ca>, Andrew says…

“Rishi Oswal” <> rishi@g-viz.com> > writes:

Is there a lisp (programming language) compiler for qnx?

Slang is based on a LISP engine, and can execute both LISP and Slang
code - see > www.cogent.ca> .

Emacs 20.x has a LISP interpreter built in.

Most of the Common LISP implementations available for UN*X don’t work
with QNX due to their use of dlopen() and dlsym() amongst others. You
could try to get GCL (GNU Common Lisp) running. I succeeded once long
ago, but it took work.

Hm … is there also a ‘lisp (programming language) compiler’ available ?

Regards

Armin

In article <8ng20v$h3q@drn.newsguy.com>, Armin says…

[ clip …]

Hm … is there also a ‘lisp (programming language) compiler’ available ?

However … CLiCC and ECoLisp should do the job.


Copyright (C) 1993 Christian-Albrechts-Universitaet zu Kiel, Germany

Projekt : APPLY - A Practicable And Portable Lisp Implementation

Funktion : README for CLiCC

$Revision: 1.8 $
$Id: README,v 1.8 1994/06/23 14:59:01 hk Exp $

CLiCC is a Common Lisp to C Compiler. It generates C-executables
from Common Lisp application programs. CLiCC is not a Common Lisp
system. Hence it does not include any program development or
debugging support. CLiCC is intended to be used as an addon to
existing Common Lisp systems for generating portable applications.

CLiCC supports a subset of Common Lisp + CLOS, which we call CL_0
(CommonLisp_0). CL_0 is a strict and very large subset of full
Common Lisp + CLOS, without (EVAL …) and friends. At present,
CL_0 is based on CLtL1, but we are working towards CLtL2 and
ANSI-CL.

The target language is a subset of C. CLiCC is adaptable to gene-
rate ANSI-C or K&R-C by using a compiler option. The generated C
code is compilable using a conventional C compiler on the target
machine, and must be linked with the CLiCC runtime library in
order to generate executables.


CLiCC is available via anonymous ftp from

ftp.informatik.uni-kiel.de (134.245.15.114)
file: kiel/apply/clicc-0.6.4.tar.gz





\

This is ECoLisp (ECL), an Embeddable Common Lisp implementation.

ECL is an implementation of Common Lisp designed for being embeddable
into C based applications.

ECL uses standard C calling conventions for Lisp compiled functions,
which allows C programs to easily call Lisp functions and
viceversa. No foreign function interface is required: data can be
exchanged between C and Lisp with no need for conversion.

ECL is based on a Common Runtime Support (CRS) which provides basic
facilities for memory managment, dynamic loading and dumping of binary
images, support for multiple threads of execution. The CRS is built
into a library that can be linked with the code of the application.
ECL is modular: main modules are the program development tools (top
level, debugger, trace, stepper), the compiler, and CLOS. A native
implementation of CLOS is available in ECL: one can configure ECL with
or without CLOS. A runtime version of ECL can be built with just the
modules which are required by the application.

The ECL compiler compiles from Lisp to C, and then invokes the GCC
compiler to produce binaries.

ECL has been ported so far on:

  • Sun workstations with SunOS 4.x or Solaris 2.x
  • Silicon Graphics with IRIX 4.x
  • NeXT with NeXTStep 2.x
  • IBM PC with DOS/emx
  • IBM PC with DOS/go32
  • IBM PC with Linux
  • IBM PC with FreeBSD 1.1.5

The newest versions are available via anonymous ftp from:

  • ftp.icsi.berkeley.edu [128.32.201.6], directory /pub/ai/ecl
  • ftp.di.unipi.it [131.114.4.6], directory /pub/lang/lisp


    Regards

Armin

In article <8nf520$lc$1@inn.qnx.com>, Rishi Oswal <rishi@g-viz.com> wrote:

will these engines work with qnx rtp?

The only one I ever tried was KCL (Kyoto Common Lisp) – and that wasn’t
under any variant of QNX. At the time – think way back – it was the
benchmark amongst free Lisp interpreters because it was the only one
that was a complete CommonLisp implementation with MOP.

I imagine there might be a good chance of
getting it to run under Neutrino, but if memory serves, there good be one
problem: Lisp runtimes like to compile an image of the lambda functions
and load that image at startup before running interpreted code.
This is normally done once during the compilation of the system.

The most common approach to loading compiled images is to play the
Emacs game of dumping the process image and then loading that
at startup. If they do this it could be problematic. If they have
a better approach, it may be more portable, but it also might just
rely on memory mapped files.

Andrew Thomas <> andrew@cogent.ca> > wrote in message
news:> x7aeecrjdt.fsf@cogent.ca> …
“Rishi Oswal” <> rishi@g-viz.com> > writes:

Is there a lisp (programming language) compiler for qnx?

Slang is based on a LISP engine, and can execute both LISP and Slang
code - see > www.cogent.ca> .

Emacs 20.x has a LISP interpreter built in.

Most of the Common LISP implementations available for UN*X don’t work
with QNX due to their use of dlopen() and dlsym() amongst others. You
could try to get GCL (GNU Common Lisp) running. I succeeded once long
ago, but it took work.

Andrew


Andrew Thomas, President, Cogent Real-Time Systems Inc.
2430 Meadowpine Boulevard, Suite 105, Mississauga, Ontario, Canada L5N 6S2
Email: > andrew@cogent.ca > WWW: > http://www.cogent.ca

Steve Furr email: furr@qnx.com
QNX Software Systems, Ltd.

In article <8n5aqe$q36$1@inn.qnx.com>, “Rishi Oswal” <rishi@g-viz.com>
wrote:

Is there a lisp (programming language) compiler for qnx?

You might contact either Xanalys (http://www.xanalys.com/)
or Digitool (http://www.digitool.com).

I think NASA has been using Xanalys’ LispWorks on a
space ship (Deep Space 1) which had QNX running.
IIRC NASA also has a team which ported Digitool’s
Macintosh Common Lisp (no joke) to QNX.


Rainer Joswig, Hamburg, Germany
Email: mailto:joswig@corporate-world.lisp.de

Armin Steinhoff <Armin@Steinhoff_de> writes:

In article <> x7aeecrjdt.fsf@cogent.ca> >, Andrew says…
“Rishi Oswal” <> rishi@g-viz.com> > writes:

Is there a lisp (programming language) compiler for qnx?

Slang is based on a LISP engine, and can execute both LISP and Slang
code - see > www.cogent.ca> .

Emacs 20.x has a LISP interpreter built in.

Most of the Common LISP implementations available for UN*X don’t work
with QNX due to their use of dlopen() and dlsym() amongst others. You
could try to get GCL (GNU Common Lisp) running. I succeeded once long
ago, but it took work.

Hm … is there also a ‘lisp (programming language) compiler’ available ?

Pretty much every LISP compiler I have seen compiles LISP into C code,
and then invokes the native C compiler to generate object code. The
object code is then loaded back into the LISP interpreter. The
interpreter is still needed to run, but some of the code is compiled
and is therefore usually faster. Again, a good Common LISP candidate
to try would be GCL.

Andrew


Andrew Thomas, President, Cogent Real-Time Systems Inc.
2430 Meadowpine Boulevard, Suite 105, Mississauga, Ontario, Canada L5N 6S2
Email: andrew@cogent.ca WWW: http://www.cogent.ca

furr@qnx.com (Steve Furr) writes:

In article <8nf520$lc$> 1@inn.qnx.com> >, Rishi Oswal <> rishi@g-viz.com> > wrote:
will these engines work with qnx rtp?
[…]
I imagine there might be a good chance of
getting it to run under Neutrino, but if memory serves, there good be one
problem: Lisp runtimes like to compile an image of the lambda functions
and load that image at startup before running interpreted code.
This is normally done once during the compilation of the system.

The most common approach to loading compiled images is to play the
Emacs game of dumping the process image and then loading that
at startup. If they do this it could be problematic. If they have
a better approach, it may be more portable, but it also might just
rely on memory mapped files.

The emacs 20.x ports to QNX4 and Neutrino both dump, and do so in a
way that is portable to other programs. If you can find a LISP
implementation that creates its executable this way, you can probably
get past this using the emacs source as a reference.

Andrew


Andrew Thomas, President, Cogent Real-Time Systems Inc.
2430 Meadowpine Boulevard, Suite 105, Mississauga, Ontario, Canada L5N 6S2
Email: andrew@cogent.ca WWW: http://www.cogent.ca

Steve Furr wrote:

In article <8nf520$lc$> 1@inn.qnx.com> >, Rishi Oswal <> rishi@g-viz.com> > wrote:
will these engines work with qnx rtp?

The only one I ever tried was KCL (Kyoto Common Lisp) – and that wasn’t
under any variant of QNX. At the time – think way back – it was the
benchmark amongst free Lisp interpreters because it was the only one
that was a complete CommonLisp implementation with MOP.

The company I worked for back in Russia ported some lisp to QNX4. If
memory serves me, that was KCL. They even mapped QNXWindows library into
it.

  • igor


to:
from: Uwe Wannags, SWD (SW Datentechnik GmbH), Germany
re:

you should contact Gunter Geigemueller at info@bitctrl.de


NEW:online product catalogue for QNX 3rd Party products
http://www.swd.de/products/catalogue/index_en.html


SWD (SW Datentechnik GmbH) Phone: +49 (0)4106 6109-10
QNX+3rd Party Distribution Fax: +49 (0)4106 6109-40
Raiffeisenstrasse 2-4 mailto:uwannags@swd.de
D-25451 Quickborn, Germany WWW, URL http://www.swd.de
QNX Distribution since 1986 area: Poland, Russia and GUS

“Rishi Oswal” <rishi@g-viz.com> schrieb im Newsbeitrag
news:8n5aqe$q36$1@inn.qnx.com

Is there a lisp (programming language) compiler for qnx?

Yes, I believe our port of KCL was done for them under contract.

  • Igor

Uwe Wannags wrote:


to:
from: Uwe Wannags, SWD (SW Datentechnik GmbH), Germany
re:

you should contact Gunter Geigemueller at > info@bitctrl.de


NEW:online product catalogue for QNX 3rd Party products
http://www.swd.de/products/catalogue/index_en.html


SWD (SW Datentechnik GmbH) Phone: +49 (0)4106 6109-10
QNX+3rd Party Distribution Fax: +49 (0)4106 6109-40
Raiffeisenstrasse 2-4 mailto:> uwannags@swd.de
D-25451 Quickborn, Germany WWW, URL > http://www.swd.de
QNX Distribution since 1986 area: Poland, Russia and GUS

“Rishi Oswal” <> rishi@g-viz.com> > schrieb im Newsbeitrag
news:8n5aqe$q36$> 1@inn.qnx.com> …
Is there a lisp (programming language) compiler for qnx?