newLISP Fan Club

Forum => newLISP newS => Topic started by: Lutz on January 19, 2015, 04:52:59 PM

Title: newLISP stable release 10.6.2
Post by: Lutz on January 19, 2015, 04:52:59 PM
This stable release adds minor new functionality and fixes bugs.



Thanks to everybody who participated in developing this release with suggestions, bug reports and fixes.





Downloads page: http://www.newlisp.org/index.cgi?Downloads



Downloads directory:  http://www.newlisp.org/downloads
Title: Re: newLISP stable release 10.6.2
Post by: rickyboy on January 19, 2015, 05:45:49 PM
Thanks, Lutz!



BTW, when you make a release like this, do you ping the port maintainers of newlisp on the BSDs, or do they have to keep up with the releases by keeping their own eye out for them?  Just curious.  I've always meant to ask you this.
Title: Re: newLISP stable release 10.6.2
Post by: Lutz on January 20, 2015, 09:13:55 AM
In the past it worked pretty well without pinging package maintainers. I guess most of them watch either http://www.newlisp.org/rss.cgi or https://twitter.com/newlisp



But if anyone wants to be pinged for new versions, contact me in a private message with your email.



In case of BSDs, I always test on OpenBSD (64-bit and v.5.4 this time) and FreeBSD (64-bit and v.9.3 this time). They are not always updated to the latest but I guess it helps. For this release, I changed from 'CC = gcc' to 'CC = cc' to make it work for the Clang compiler. My FreeBSD installation on https://www.nearlyfreespeech.net now works with 64-bit and libffi stuff installed. On OpenBSD, I have to work without libffi, but of course the simple ffi works.



I don't have access to any Red-Hat/Fedora system, but people seem to be happy compiling on it without problems.
Title: Re: newLISP stable release 10.6.2
Post by: jef on January 20, 2015, 01:27:06 PM
Thanks a lot for this new release Lutz!
Title: Re: newLISP stable release 10.6.2
Post by: protozen on January 21, 2015, 03:01:52 PM
Thanks a lot for the update Lutz, can I send you a development donation as a thank you?
Title: Re: newLISP stable release 10.6.2
Post by: Lutz on January 21, 2015, 05:04:47 PM
Your "Thanks" is all what is needed :)
Title: Re: newLISP stable release 10.6.2
Post by: johu on January 22, 2015, 01:30:29 AM
Hello, Lutz.



I am translating the manual to Japanese and have some suggestions.



line 23636 in newlisp_manual v10.6.2
QuoteSetting the option bit to <tt>0x8000</tt> in >int-option will force

 ↓

Setting the option bit to <tt>0x8000</tt> in regex-option will force


And, no problem but

line 23405
Quote<h4>syntax: (regex-comp str-pattern [>int-option])</h4>



<h4>syntax: (regex-comp str-pattern [regex-option])</h4>

Also, following is no problem

There are both regex-option and regex-options.

For example, regex-options are in directory (//http) and search (//http).



Regards,
Title: Re: newLISP stable release 10.6.2
Post by: Lutz on January 22, 2015, 07:27:42 AM
Thanks Johu, all updated to regex-option:



http://www.newlisp.org/downloads/newlisp_manual.html
Title: Re: newLISP stable release 10.6.2
Post by: hilti on January 22, 2015, 09:09:11 PM
Thank You Lutz from Germany :-)
Title: Re: newLISP stable release 10.6.2
Post by: johu on January 23, 2015, 12:56:43 AM
Thanks Lutz.



I finished translartions of manuals.



newlisp_manual-10602

CodePatterns-10602



There are in here (//https).
Title: Re: newLISP stable release 10.6.2
Post by: Lutz on January 23, 2015, 06:43:32 AM
Many thanks Johu, all Japanese translations are online here:



Users Manual and Reference: http://www.newlisp.org/newlisp_manual-jp.html



Code Patterns: http://www.newlisp.org/CodePatterns-jp.html



Guiserver: http://www.newlisp.org/guiserver-jp/
Title: Re: newLISP stable release 10.6.2
Post by: jopython on January 25, 2015, 09:44:32 AM
The links for "UBUNTU Linux Debian 64-bit installers v.10.6.2" are not working at the time of writing.

Thank you,
Title: Re: newLISP stable release 10.6.2
Post by: Lutz on January 25, 2015, 09:52:08 AM
Thanks, I missed the name change from i386 to amd64. Now corrected.
Title: Re: newLISP stable release 10.6.2
Post by: Lutz on January 27, 2015, 11:29:01 AM
Regarding the gethostbyname() buffer overflow announced here:



http://marc.info/?l=bugtraq&m=142237866420639&w=2



Since version 10.2.9, released in May 2010, newLISP does not use this API and is not affected by this.
Title: Re: newLISP stable release 10.6.2
Post by: bairui on January 27, 2015, 04:37:17 PM
Excellent, Lutz. Kudos for the quick announcement.
Title: Re: newLISP stable release 10.6.2
Post by: TedWalther on March 30, 2015, 09:55:16 AM
Lutz, fix for the website:



In the manual section for the "replace" function, you have this:



(set 'str "ZZZZZxZZZZyy")     → "ZZZZZxZZZZyy"
(replace "[x|y]" str "PP" 0)  → "ZZZZZPPZZZZPPPP"
str                           → "ZZZZZPPZZZZPPPP"


The regex [x|y] should be (x|y).  Although your example works, the use of the pipe '|' character is an idiom that goes with parens (), not needed inside a character class [].



I made the following function for printing strings so newLisp can read them back in:



(define (nl-esc a) (replace {(\|")} a (string {} $it) 0))


For reasons I didn't have time to investigate too deeply, when I put the '' and '"' characters inside a character class, only the first substitution was made.  Sometimes.
Title: Re: newLISP stable release 10.6.2
Post by: Lutz on March 30, 2015, 10:14:01 AM
Thanks Walther, now corrected: http://www.newlisp.org/downloads/newlisp_manual.html#replace
Title: Re: newLISP stable release 10.6.2
Post by: TedWalther on March 30, 2015, 03:33:34 PM
Another: in the Manual, for "union", the link to "intersect" is broken, it should be #intersect, not #interset
Title: Re: newLISP stable release 10.6.2
Post by: Lutz on March 30, 2015, 09:15:41 PM
Thanks Ted:  http://www.newlisp.org/downloads/newlisp_manual.html#union
Title: Re: newLISP stable release 10.6.2
Post by: TedWalther on April 30, 2015, 06:31:59 PM
Lutz, I found a segfault in 10.6.2.  It happens on Mac OS and on Debian Linux, 64bit Intel platform.  Any ideas?  I need tracebacks for debugging, so this is my attempt at it.  Once it is working, I'll disable the println statements in it, and a function can do its own (println $stack) to show its own traceback.  Much less verbose than the (trace) function provided already.



The segfault happens when I actually call the define-traced macro.  At the moment, it looks like the segfault happens inside the expand function.



(define-macro (define-traced)
  (if (list? (args 0))
    (eval (expand
      '(define call-pattern
          (if (and $stack (list? $stack))
            (push call-pattern $stack)
            (setq $stack (list call-pattern)))
          (println $stack " -> ")
          (set 'rval call-body)
          (pop $stack)
          (println $stack " <- ")
          rval)
      '((call-pattern (args 0)) (call-body (cons 'begin (rest (args)))))
      true))
    (eval (expand '(define var-name var-value) '((var-name (args 0)) (var-value (args 1))) true))
  )
)


(define-traced (foo a b) (println a " says hi to " b) (bar a b))
(define-traced (bar a b) (println b " blushes at " a) (baz a b))
(define-traced (baz a b) (println a " and " b " shake hands."))
(println "foo: " foo)
(foo "John" "Tracy")

Title: Re: newLISP stable release 10.6.2
Post by: Lutz on May 01, 2015, 11:25:38 AM
Fixed here: http://www.newlisp.org/downloads/development/inprogress/