Search found 21 matches
- Fri Jun 01, 2018 2:20 pm
- Forum: newLISP in the real world
- Topic: unless bug?
- Replies: 1
- Views: 3010
unless bug?
syntax: (unless exp-condition body) The statements in body are only evaluated if exp-condition evaluates to nil or the empty list (). The result of the last expression in body is returned or nil or the empty list () if body was not executed. newLISP v.10.7.3 32-bit on Windows IPv4/6 UTF-8 libffi, o...
- Thu Nov 09, 2017 11:21 am
- Forum: newLISP in the real world
- Topic: It makes me a bit confused
- Replies: 1
- Views: 2594
It makes me a bit confused
Code: Select all
> (struct 'A "char*")
A
> (pack A "HELLO")
"\176\154d\000"
> (unpack A (pack A "HELLO"))
("HELLO")
> (setq a (pack A "HELLO"))
"0\154d\000"
> (unpack A a)
("\006") ; <------------
> (setq b "HELLO")
"HELLO"
> (setq a (pack A b))
"p\154d\000"
> (unpack A a)
("HELLO")
- Wed Sep 13, 2017 5:55 am
- Forum: newLISP in the real world
- Topic: Why is the behavior of "trim" function so strange?
- Replies: 11
- Views: 8665
Re: Why is the behavior of "trim" function so strange?
trim still has bug.
Code: Select all
newLISP v.10.7.3 32-bit on Windows IPv4/6 UTF-8 libffi, options: newlisp -h
> (setq str "\xbb\xe1")
"会"
> (length (trim str))
2
> (length (trim str "\000"))
5
> (setq str "\xce\xaa\xca\xb2\xc3\xb4\xbb\xe1")
"为什么会"
> (length (trim str))
8
> (length (trim str "\000"))
11
- Wed Aug 23, 2017 4:18 am
- Forum: newLISP in the real world
- Topic: Does struct support only up to 32 parameters?
- Replies: 3
- Views: 3684
Re: Does struct support only up to 32 parameters?
Thank you for the explanation. But the struct function used to deal with ordinary C structure is also very useful. In newLISP, we have two way to deal with C structure. The first way, with the struct , pack and unpack. The other way, without the struct, uses only pack and unpack. But the 'struct' ha...
- Mon Aug 21, 2017 6:33 pm
- Forum: newLISP in the real world
- Topic: Does struct support only up to 32 parameters?
- Replies: 3
- Views: 3684
Does struct support only up to 32 parameters?
newLISP v.10.7.3 32-bit on Windows IPv4/6 libffi, options: newlisp -h ; 33 "char" (struct 'abc "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "char" "...
- Fri Aug 18, 2017 6:09 pm
- Forum: newLISP in the real world
- Topic: Why is the behavior of "trim" function so strange?
- Replies: 11
- Views: 8665
Re: Why is the behavior of "trim" function so strange?
newLISP v.10.7.3
newLISP v.10.7.1
newLISP v.10.7.0
All have this issues.
Usually starting from 8, 16, 24, 32...., depending on the version.
But newLISP v.10.6.2,I tested from 1 to 65536, everything was fine.
newLISP v.10.7.1
newLISP v.10.7.0
All have this issues.
Usually starting from 8, 16, 24, 32...., depending on the version.
But newLISP v.10.6.2,I tested from 1 to 65536, everything was fine.
- Fri Aug 18, 2017 6:03 pm
- Forum: newLISP in the real world
- Topic: Why is the behavior of "trim" function so strange?
- Replies: 11
- Views: 8665
Re: Why is the behavior of "trim" function so strange?
newLISP v.10.7.3 32-bit on Windows IPv4/6 libffi, options: newlisp -h > (setq str (dup "\000" 8)) "\000\000\000\000\000\000\000\000" > (trim str) ERR: not enough memory in function trim > (setq str (dup "\000" 1)) "\000" > (trim str) "" > (setq str (dup "\000" 2)) "\000\000" > (trim str) "" > (setq...
- Tue Aug 15, 2017 12:26 pm
- Forum: newLISP in the real world
- Topic: Why is the behavior of "trim" function so strange?
- Replies: 11
- Views: 8665
Why is the behavior of "trim" function so strange?
newLISP v.10.7.1 32-bit on Windows IPv4/6 UTF-8 libffi, options: newlisp -h > (setq str (dup "\000" 10)) "\000\000\000\000\000\000\000\000\000\000" > (trim str) "" > (setq str (dup "\000" 31)) "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\00 0\000\000\000\000\000\000...
- Mon Aug 14, 2017 4:41 pm
- Forum: newLISP in the real world
- Topic: Is this newLISP's bug?
- Replies: 4
- Views: 4527
Re: Is this newLISP's bug?
I found the reason for the problem! The descriptions for the hWnd parameter of GetMessage: A handle to the window whose messages are to be retrieved. The window must belong to the current thread. If hWnd is NULL, GetMessage retrieves messages for any window that belongs to the current thread, and an...
- Fri Aug 11, 2017 12:50 pm
- Forum: newLISP in the real world
- Topic: Is this newLISP's bug?
- Replies: 4
- Views: 4527
Is this newLISP's bug?
I created an edit window using following code: (define (import-list library flist) (dolist (fname flist) (import library (string fname)))) (define-macro (@setq %var %value) (set %var (eval %value)) (println %var " " (eval %var))) ; Constants (define IDC_TEXTBOX 1000) (define IDC_ARROW 0x7F00) (defin...
- Tue Aug 01, 2017 3:03 pm
- Forum: Whither newLISP?
- Topic: why setf don't work?
- Replies: 1
- Views: 4994
why setf don't work?
newLISP v.10.7.1 32-bit on Windows IPv4/6 UTF-8 libffi, options: newlisp -h > (struct 'RECT "long" "long" "long" "long") RECT > (unpack RECT (pack RECT 1 2 3 4)) (1 2 3 4) > ((unpack RECT (pack RECT 1 2 3 4)) 0) 1 > (setf ((unpack RECT (pack RECT 1 2 3 4)) 0) 5) ERR: symbol is protected : RECT > (s...
- Sat Oct 04, 2014 2:38 am
- Forum: newLISP in the real world
- Topic: bug? about float point number lexical analysis
- Replies: 9
- Views: 6882
Re: bug? about float point number lexical analysis
Are you suggesting that newLISP allow the user to enter a number of arbitrary length (as input) and then parse and store the internal representation of the number (as an exact representation of the input, i.e. arbitrarily large)? AFAIK, no programming language allows this. There are always limits. ...
- Fri Oct 03, 2014 3:53 am
- Forum: newLISP in the real world
- Topic: bug? about float point number lexical analysis
- Replies: 9
- Views: 6882
Re: bug? about float point number lexical analysis
This can not completely solve the problem.In version 10.6.2 up to 255 characters will be parsed in decimal numbers
Core of these issues is not the right way to parse.
When the number exceeds 255 characters, the same issue will appear again.
- Fri Oct 03, 2014 2:10 am
- Forum: newLISP in the real world
- Topic: bug? about float point number lexical analysis
- Replies: 9
- Views: 6882
Re: bug? about float point number lexical analysis
only 32 characters are parsed for decimal number including a potential sign and the decimal point. > (length "1234567890123456789012345678901234567890.0") 42 > 1234567890123456789012345678901234567890.0 1.23456789012346e+039 0 It actually stops parsing at the first non-numeric department. The rest ...
- Wed Oct 01, 2014 10:02 am
- Forum: newLISP in the real world
- Topic: bug? about float point number lexical analysis
- Replies: 9
- Views: 6882
bug? about float point number lexical analysis
I want convert big float point number to integer. > (int 999999999999999999999999999999999999999999.99) 9223372036854775807 I tried > (bigint 999999999999999999999999999999999999999999.99) 1000000000000000045259160000000000000000000L because of When converting from floating point, rounding errors oc...
- Thu Aug 14, 2014 5:21 am
- Forum: newLISP in the real world
- Topic: (setq 'a 3), what does it mean?
- Replies: 11
- Views: 7417
Re: (setq 'a 3), what does it mean?
yes, sometimes some features of newlisp make me confusion. for instance, in-place modification (define (myinc) (inc 0)) (myinc) => 1 myinc = > (lambda () inc 1) (myinc) => 2 myinc => (lambda () inc 2) of course, this feature be really good. Just I've never seen in other languages. i am learning newl...
- Tue Aug 12, 2014 6:00 pm
- Forum: newLISP in the real world
- Topic: (setq 'a 3), what does it mean?
- Replies: 11
- Views: 7417
(setq 'a 3), what does it mean?
(setq a 2) => 2
(setq 'a 3) => 3
(eval a) => 2
(eval 'a) => 2
(eval ''a) => a
(setq a 2) equivalent to (set 'a 2)
(setq 'a 3) equivalent to (set ''a 3)?
but result is:
(set ''a 3) =>
ERR: symbol expected in function set : ''a
(setq 'a 3) => 3
(eval a) => 2
(eval 'a) => 2
(eval ''a) => a
(setq a 2) equivalent to (set 'a 2)
(setq 'a 3) equivalent to (set ''a 3)?
but result is:
(set ''a 3) =>
ERR: symbol expected in function set : ''a
- Sun Jul 06, 2014 8:56 am
- Forum: newLISP in the real world
- Topic: how to remove all attribute-list in diference level of SXML?
- Replies: 8
- Views: 5613
Re: how to remove all attribute-list in diference level of S
(define (is-attr-list? THING) (and (list? THING) (= '@ (first THING)))) (define (deep-clean PREDICATE LIST) (if (not (list? LIST)) LIST (map (curry deep-clean PREDICATE) (clean PREDICATE LIST)))) > [cmd] (deep-clean is-attr-list? '("dl" (@ ("class" "codebox")) ("dt" "Code: " ("a" (@ ("href" "#") ("...
- Sat Jul 05, 2014 12:51 pm
- Forum: newLISP in the real world
- Topic: how to remove all attribute-list in diference level of SXML?
- Replies: 8
- Views: 5613
Re: how to remove all attribute-list in diference level of S
Very well!Code: Select all
(find-all '(bananas *) data)
This is exactly what I want! I didn't expect so simple.
Thanks for ryuo and ralph.ronnquist .
But how about to remove all attribute-list in different level of SXML?
This is more difficult, right?
What better way to do.
- Sat Jul 05, 2014 4:22 am
- Forum: newLISP in the real world
- Topic: how to remove all attribute-list in diference level of SXML?
- Replies: 8
- Views: 5613
Re: how to remove all attribute-list in diference level of S
I waited three days, no one answered me. This forum is too deserted. okay, another question: (set 'data '((apples 123) (bananas 123 45) (bananas 123 678) (pears 7))) (assoc 'bananas data) gets (bananas 123 45) how to 'assoc' the second 'bananas' list? the question is, like this ( (li "listitem 1") (...
- Thu Jul 03, 2014 5:39 am
- Forum: newLISP in the real world
- Topic: how to remove all attribute-list in diference level of SXML?
- Replies: 8
- Views: 5613
how to remove all attribute-list in diference level of SXML?
when a xml document has been converted to SXML, and how to remove all attribute-list of it? these attribute-lists inside diference level of SXML.