newLISP release version 8.7.0

Started by Lutz, October 15, 2005, 07:39:39 AM

Previous topic - Next topic

Lutz

* many additions, improvements and some bug fixes



for release notes 8.7.0 see: http://newlisp.org/downloads/newLISP_87_Release_Notes.html">http://newlisp.org/downloads/newLISP_87 ... Notes.html">http://newlisp.org/downloads/newLISP_87_Release_Notes.html



for files see: http://newlisp.org/index.cgi?page=Downloads">http://newlisp.org/index.cgi?page=Downloads



new packages/links for RPM and Slackware will follow later, when they come available.



Thanks to everybody on this board contributing with ideas for new functions and features and identifying bugs and other shortcomings.



Lutz

Fanda

#1
You were quick. There is a new command 'append-file'!



Fanda

newdep

#2
Nice release Lutz, Thanks for the addons!
-- (define? (Cornflakes))

tom

#3
Need an Arch Linux package?

http://perpetualnewbie.info/archlinux/packages/newlisp/newlisp-8.7.0-1.pkg.tar.gz">http://perpetualnewbie.info/archlinux/p ... pkg.tar.gz">http://perpetualnewbie.info/archlinux/packages/newlisp/newlisp-8.7.0-1.pkg.tar.gz

or it's PKGBUILD?

http://perpetualnewbie.info/archlinux/packages/newlisp/PKGBUILD">http://perpetualnewbie.info/archlinux/p ... p/PKGBUILD">http://perpetualnewbie.info/archlinux/packages/newlisp/PKGBUILD

pjot

#4
The newLisp 8.7.0 package for Slackware 10.2 has been accepted with a rate of 3 ("Excellent') at Linuxpackages.net.



Details can be found here:



http://www.linuxpackages.net/pkg_details.php?id=7883">http://www.linuxpackages.net/pkg_details.php?id=7883





Please note that this package also will run on Slackware 10.1 and 10.0.



Regards

Peter

pjot

#5
NewLisp 8.7.0 survives all tests again on Tru64Unix, so I created a new installpackage (SETLD) which can be downloaded from here:



http://www.turtle.dds.nl/newlisp/NEWLISP870.tar.gz">http://www.turtle.dds.nl/newlisp/NEWLISP870.tar.gz





Unzip, untar and install with 'setld -l NEWLISP870'.



This package will run on Tru64Unix 4.x and 5.x.



Regards

Peter

pjot

#6
This new release does not seem to work anymore on WindowsME (I know, WinME is not supported). Funny thing however is, that at least until newLisp 8.6.2 there were no problems.



If I run a newlisp 8.7 program now on WinME, I receive the error "newLisp has caused an error in KERNEL32.DLL". Also after rebooting etc. If I put back the 8.6.2 binary the problem vanishes.



A diff between newLisp 8.6.2 'win32-utils.c' and the same file in release 8.7 gave no results. So I must seek it somewhere else.



Is there a place where I still can download development releases 8.6.3, 8.6.4, 8.6.5, 8.6.6, 8.6.7 ? It's just for my curiousness, to see what causes this issue, since my own tools may suffer from the same thing in the future, for I compile with MinGW also.



(In a worst case scenario this problem may also reveal a genuine Win32 issue, but on Win2000/XP newLisp 8.7 runs fine though. Maybe these platforms have better memory protection? Or WinME really is no good at all?)



Peter

Lutz

#7
I can email you some of the older development releases. I am not sure if I have your correct email address, drop me a private message with you email and I send you some of the older files.



Lutz

pjot

#8
Well, the older releases you sent me also crash! After searching my other computers as well, it appears I compiled 8.6.2 myself previously, with an adjusted Makefile.



The thing I changed in the MinGW makefile, was removing the '-O3' optimization flag to the GCC compiler. Then it runs fine.



Now in every release, also 8.7.0, if I remove this flag and recompile, the 'newlisp.exe' runs like a dream, on WindowsME.



One other thing you might like to know: the size of the 8.7.0 binary when recompiled without the '-O3' optimization flag is only 203264 bytes. While your original 'newlisp.exe' binary consists of 217.600 bytes, almost 14k bigger.



The '-g' flag for debugging purposes does not create extra overhead.



Maybe interesting to know. For me it is :-)



Thanks!

Peter

pjot

#9
By the way: if size is important, you can also compile with the '-Os' optimization flag.



The resulting 8.7.0 newlisp.exe binary has a size of only 140288 bytes!!! And runs fine in WinME also.

HPW

#10
Removing '-O3' optimization flag does not give me any filesize reduction (They get bigger).

(MINGW 3.1 on WIN XP PRO german)



But changing to '-Os' gives me:



EXE 151552 Bytes

DLL 167936 Bytes (with runtimepacker 86016 Bytes)



This is pretty smaller. So is it save to do so?

Then I would like to use it in the future!



Small is beautifull!

;-)
Hans-Peter

pjot

#11
Hm that is strange! Without the -O3 I save about 14k, but I use a newly installed MinGW 4.1 on WinME. Maybe the newer MinGW version is the reason? (WinME definitely not!)



Anyway, a smaller newLisp binary may reduce execution speed of newLisp programs, this is something we should check first, I guess....



Peter

Lutz

#12
I have used MinGW 4.1.1 for the 8.7.0 Win32 release. Perhaps I make a -O2 compiled .exe available for WinME users.



I guess that -O3 is inlining more stuff to gain speed. The function inlining makes the code bigger.



Lutz

HPW

#13
I upgrade to 4.1.0 (I see no 4.1.1 on MinGW site):



Changing to '-O2' gives me:



EXE 180224 Bytes

DLL 196608 Bytes (with runtimepacker 90112 Bytes)



(A little bigger than '-Os')



So is this the best option for performance and WIN compatibility?
Hans-Peter

pjot

#14
The '-O2' optimization also crashes on WindowsME... With '-O1' or '-Os' however newlisp.exe runs fine.



Lutz: for me it is not necessary to host an additional binary for Windows9x/ME platforms, but maybe you could add an additional line (commented out) to the makefile_mingw file as you do with makefile_linux?



HPW: strange thing is, when I compile with '-O2' the binary becomes smaller (178688 bytes ) and with '-O1' even smaller (171008 bytes). Without any optimization I get 203264 bytes.



With '-Os' my resulting binary is 140288 bytes, I have put this binary on my website here: http://www.turtle.dds.nl/newlisp/newlisp.exe">http://www.turtle.dds.nl/newlisp/newlisp.exe



Maybe we should benchmark some newLisp programs to find out the best optimization?



Peter