newlisp.DLL possible?

Machine-specific discussion
Unix, Linux, OS X, OS/2, Windows, ..?
HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

I uploaded a new demo-exe of the release demo to my plugin-page:

http://hpwickern.bei.t-online.de/anmeld ... SPDemo.zip

Based on hpwNewLISP.nbp 1.04 with multiple restart-feature for hpwNewLispCall.
Global neobook var [hpwNewLispRestartCall] contains the current Lisp-call.
In the first nl-restart-call [hpwNewLispRestartCall] is set by the interface and then it can be set from Lisp to call other functions.
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

Code: Select all

;; define the error handling routine 
(define (error-handler) (print "ERR:" (error-number) " " (error-text))) 

;; set it as the error-event 
(error-event 'error-handler) 

(foo) => 

ERR:20 invalid function : (foo) 
When this would work in the DLL, I could check for starting 'ERR:' and set neobook's global [LastError].
Hans-Peter

Lutz
Posts: 5289
Joined: Thu Sep 26, 2002 4:45 pm
Location: Pasadena, California
Contact:

Post by Lutz »

It was not enabled in the DLL, but is working and tested now. Look for a new newlisp.dll.rc2 in the development directory.

Lutz

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

Thanks for the fast fix.
Works now as expected.
Have to work on the 1.05 now when time will allow.
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

I uploaded a new demo-exe of the release demo to my plugin-page:

http://hpwickern.bei.t-online.de/anmeld ... SPDemo.zip

Based on hpwNewLISP.nbp 1.05 with a customised error-handler in newlisp is now connected with the neobook error-handling via [LastError]

So an error in newlisp pops up the neobook error meassage window.
Hans-Peter

nigelbrown
Posts: 429
Joined: Tue Nov 11, 2003 2:11 am
Location: Brisbane, Australia

Post by nigelbrown »

My IBASIC program using the dll (rc2) isn't finding the ini.lsp
my directory looks lile:
C:\Program Files\Pyxia Development\IBasic>dir

Volume in drive C is P1300
Volume Serial Number is 351A-07ED
Directory of C:\Program Files\Pyxia Development\IBasic

. <DIR> 12-14-03 7:43a .
.. <DIR> 12-14-03 7:43a ..
UNINST ISU 26,805 12-14-03 7:43a Uninst.isu
SAMPLES <DIR> 12-14-03 7:43a samples
HELP <DIR> 12-14-03 7:43a help
COMPON~1 <DIR> 12-14-03 7:43a components
GORC EXE 49,664 08-25-02 6:25p GORC.EXE
IBCLI OBJ 131,072 11-28-03 2:22a IBCLI.obj
IB OBJ 456,192 11-28-03 2:21a IB.obj
IBNODX OBJ 384,000 11-28-03 2:21a IBNODX.obj
NLDLL IBA 310 12-14-03 8:15a nldll.iba
IBASIC EXE 1,130,496 11-27-03 9:41p ibasic.exe
NEWLISP DLL 196,608 12-14-03 8:17a newlisp.dll
RECOVER IBA 310 12-14-03 9:12a recover.iba
INI LSP 24 12-14-03 8:20a ini.lsp
10 file(s) 2,375,481 bytes
5 dir(s) 492.27 MB free

C:\Program Files\Pyxia Development\IBasic>type ini.lsp
(setq aa "set by ini")

The Ibasic prog is the read-eval-loop as above
I get after start-up:
>(print aa)
OUT:nilnil
>

The program is running as an interpreted session from within the IDE but from
what I can see all files are in the one directory.
greping source code (7.3.17) gives:
C:\newlisp\newlisp_7317>grep "ini.lsp" *.c

C:\newlisp\newlisp_7317>grep "init.lsp" *.c
newlisp.c:#define INIT_FILE "init.lsp"
newlisp.c:#define INIT_FILE "/usr/share/newlisp/init.lsp"

C:\newlisp\newlisp_7317>

but changing the file to init.lsp doesn't change anything.

What am I missing? Any tips?
Can I check what path the dll is calling home?

Nigel

nigelbrown
Posts: 429
Joined: Tue Nov 11, 2003 2:11 am
Location: Brisbane, Australia

Post by nigelbrown »

Just a thought would the spaces in the path cause problems?
ie ...Program Files... etc
Nigel

Sammo
Posts: 180
Joined: Sat Dec 06, 2003 6:11 pm
Location: Loveland, Colorado USA

Post by Sammo »

Hi Nigel,

Should that be init.lsp? newLISP.dll called from NeoBook via Hans-Peter's hpwNewLisp plug-in is loading my just-now-created init.lsp file.

-- Sam

Lutz
Posts: 5289
Joined: Thu Sep 26, 2002 4:45 pm
Location: Pasadena, California
Contact:

Post by Lutz »

yes! init.lsp not ini.lsp

The init.lsp should be in the current directory of the program importing newlisp.dll.

yes you can check the path newlisp.dll is calling home doing this from your importing program.

dllEvalStr "(directory)"

this will return a list of files in the directory where newlisp.dll is expecting the init.lsp

Lutz

nigelbrown
Posts: 429
Joined: Tue Nov 11, 2003 2:11 am
Location: Brisbane, Australia

Post by nigelbrown »

I found that the problem in finding the init.lsp file was that the shortcut to start Ibasic.exe (that had been created by the installer) had the "Start in" directory set incorrectly
- it was pointing to a non-existant subdirectory so the "Start in" directory
defaulted to C:\.
Once the "Start in" directory is correctly speciifed everything works fine.
I'll let Pyxia know about the install error.
Nigel

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

I have released hpwNewLISP 1.06:

Features:

Action: hpwNewLispCall - 1.Parameter for DLL-Path removed!
Action: hpwSetNewLispDir - Set DLL-Path one time in the pub!
Support for Custom-plugin commands. Definitions in file neoLISP.cmd!
nb_util.lsp renamed to init.lsp which is automaticly loaded by newLISP.
iSEDQuickPDF.lsp with all import functions for iSEDQuickPDF.dll
Final newLISP.dll 7.400


This has no effekt to the lisp-functionality. But neobook users can define their own neosript-command via a text-file which are then send to newlisp.dll. Offers better integration in the neobook action-editor.
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

I uploaded a new demo-exe of the release demo to my plugin-page:

http://hpwickern.bei.t-online.de/anmeld ... SPDemo.zip

Based on hpwNewLISP.nbp 1.06 with neoLISP.cmd neoscript-definition file.
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

I uploaded a new demo-exe of the release demo to my plugin-page:

http://hpwickern.bei.t-online.de/anmeld ... SPDemo.zip

Based on hpwNewLISP.nbp 1.08 with new developed hpwColorMemo-plugin for syntax-highlighting of lsp-files (and others/ see newlisp.cfg).
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

I uploaded a new demo-exe of the release demo to my plugin-page:

http://hpwickern.bei.t-online.de/anmeld ... SPDemo.zip

Based on hpwNewLISP.nbp 1.08 with hpwColorMemo 1.01 now supports paranthesis balancing of ( [ { ... } ] ) via Key-shortcut CTRL-B.
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

I uploaded the last demo-exe of the release demo to the neobook resource site:

http://www.software-zone.com/neosoft/in ... ct=SF&f=24

This will save space for the plugin-pages.
Hans-Peter

Lutz
Posts: 5289
Joined: Thu Sep 26, 2002 4:45 pm
Location: Pasadena, California
Contact:

Post by Lutz »

Uploaded 'sqlite.lsp' bindings for the SQLite database. Works on Friday's upload of newLISP version 7.4.7, which can import libraries compiled for 'cdecl' calling conventions. Also tested on LINUX and FreeBSD. With this file and the new 'cdecl' parameter in newLISP 'import' you don't need a separate wrapper DLL on Win32.

This library import is also a good demo what to do with things like 'char *** pazValue' or 'char **pzErrmsg'. Nested multiple pointers can all be handled with the right mixture of 'get-integer' and 'get-string'.

SQLite fits very good to newLISP, because it is small and 'in process' so it doesn't need a separate database server running. The generated databases are binary compatible on all platforms. Seems to be the ideal database if MySQL still seems to be too much for the task.

http://newlisp.org/download/development/
and
http://www.sqlite.org

Lutz

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

Lutz,

I aggree with all points. Good example of the new import-feature.

I think you should have made a new thread, because it is not newlisp.dll related alone. It is an important improvement for its own.
Hans-Peter

Lutz
Posts: 5289
Joined: Thu Sep 26, 2002 4:45 pm
Location: Pasadena, California
Contact:

Post by Lutz »

Yes, probably should have made a new thread. Dou you (or anybody else) have any longer experience with SQLite? I mean what do you think about reliablility, speed etc.?

I want to move a newLISP project with about 20,000 records in a flat text file to SQLite. the flat text file works well, but processing is kind of clumsy, because I cannot use SQL for doing the reports.

Also to an earlier question of yours: newLISP is mainly my hobby but I also use it for work related stuff. For my areas of work see my homepage at nuevatec.com.

Lutz

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

I have released hpwNewLISP 1.13:

Action: hpwNewLispFreeDll - Free newLISP.dll from memory

Allow to explicit free the Dll from applications address space.
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

I have released hpwNewLISP 2.0:

New bidirectional interface which now offer neobook scripting directly from newLISP.

newLISP-function: hpwDllName (Gets the real plugin-filename)
newLISP-function: hpwPlayAction (Play neobook scripts from newLISP)
newLISP-function: hpwGetVar (Get variable from neobook to newLISP)

The imported functions are registered at startup of the plugin.
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

Just released hpwNewLISP 2.11:

http://www.hpwsoft.de/anmeldung/html1/n ... ook14.html

Command wizards for all commands.
neoLISP.cmd renamed to hpwNewLISP.cfp/hpwNewLISP.cfr
hpwNewLISP.cfr now auto-embedded to allow custom plugin lisp-commands also in web-apps.
hpwNewLISP.ini allows to link an external Lisp-Editor (called from command wizard)
hpwNewLISP.ini allows to config custom command hints.
hpwNewLispCall's command wizard uses syntax-highlighting from newLISP.cfg
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

Just released hpwNewLISP 2.13:

http://www.hpwsoft.de/anmeldung/html1/n ... ook14.html

hpwNewLispCall's command wizard gets buttons for clipboard support (Cut,Copy,Paste)
hpwNewLispCall's command wizard gets button for 'Select All'
hpwNewLispCall's command wizard gets button for 'Paranthesis check' (HotKey CTRL-B)
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

Just released hpwNewLISP 2.14:

http://www.hpwsoft.de/anmeldung/html1/n ... ook14.html

hpwNewLispCall's command wizard 'Paranthesis check' supports now subsequend checking
hpwNewLispCall's command wizard CTRL-A now selects all
hpwNewLispCall's command wizard F1 without any selected show newLISP framed doc.
hpwNewLispCall's command wizard F1 with selected newLISP command show newLISP doc about command.
hpwNewLisp.ini has a new entry: NewLispDirectory (Installdir of full version of newLISP)
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

Just released hpwNewLISP 2.15:

http://www.hpwsoft.de/anmeldung/html1/n ... ook14.html

Bugfix for TaskBarClickAndRestoreOnTop for About-dialog and command wizards
hpwNewLispCall's command wizard CTRL-N now calls 'clear and start new'
hpwNewLispCall's command wizard CTRL-O now calls 'file open'
hpwNewLispCall's command wizard CTRL-S now calls 'file save'
hpwNewLispCall's command wizard ALT-O calls OK-Button
hpwNewLispCall's command wizard ALT-C calls Cancel-Button
hpwNewLispCall's command wizard now supports TAB-key in the source text



Image
Hans-Peter

HPW
Posts: 1390
Joined: Thu Sep 26, 2002 9:15 am
Location: Germany
Contact:

Post by HPW »

Just upload hpwNewLISP 2.25:

http://www.hpwsoft.de/anmeldung/html1/n ... ook14.html

Action: hpwNewLispDebug - Output debug info from newLISP into neobook debug window.

Image

hpwNewLispDebug is a dummy action which does really nothing.
The newLISPer/neobooker can use it to publish debug-info to the debug window.
Hans-Peter

Locked