Thanks Eric.
This was also an opportunity to start dabbling a bit with the app ui
framework. Very interesting.
At least initially, it reminds me a bit of the way you could write
PHP... but this feels more elegant.
Even lisp looks less like line noise than php ;)
The javascript canvas pipeline I
Hi Lindsay,
I practiced a bit more with the built-in functions...
https://github.com/thinknlive/picolisp-gosper.git
Very cool! Looks like you've got '*/' all figured out now :)
Thanks for sharing
- Erik
allbase --> tankfeeder / exercism-io / a-f.l
/Lindsay
On Tue, Feb 28, 2017 at 3:41 AM, Danilo Kordic wrote:
>> If you are going to use a list, could also just put the 'scale' in a property
>> of the list?
>
> I wouldn't call it a propert to avoid confusion with PicoLisp `prop'erties.
>
>
Hi,
I practiced a bit more with the built-in functions...
https://github.com/thinknlive/picolisp-gosper.git
/Lindsay
--
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
> If you are going to use a list, could also just put the 'scale' in a property
> of the list?
I wouldn't call it a propert to avoid confusion with PicoLisp `prop'erties.
I couldn't find `allbase'.
I had [[https://en.wikipedia.org/wiki/Algebraic_data_type][Algebraic
DataTypes]]
in mind, ju
Hi Danilo,
Ah. I get it. Interesting idea. If you are going to use a list, could also
just put the 'scale' in a property of the list?
When I came across the 'allbase function in Mike Penchkin's code... I
thought of the following...
It would be a bit wasteful of storage, but could represent arbitr
Hi Alex, Erik,
I definitely took the 'long way around' on this one... and got some good
exercise along the way! =)
Thank you for the detailed explanation. I get it now... although I need a
bit more practice and care in using the functions comfortably.
My initial impetus was to be able to easily,
I forgot to say: ``As if `E' is an _infix_ binary operator. ''
--
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
By constructing base 10 floating point numbers with
``[list Significand 'E Exponent]''.
As if `E' is a binary operator. Of course that makes no sense in Lisp.
``(Decimal Significand Exponent)'' would make sense.
For example:
: (sqrt 2)
-> (141421356237309505 E -17)
--
UNSUBSCRIBE: mailto:pic
Hi Lindsay,
> Having just tried it... I am surprised that the 'sqrt* I implemented is
> quite a bit faster! than the built-in 'sqrt. I'll try the long division
> later.
Wow, that's indeed a bit surprising. However, it depends on the scale, and I
think a can explain (see below).
> : (scl 10)
Hi Lindsay,
On Mon, Feb 27, 2017 at 06:28:15AM -0600, Erik Gustafson wrote:
> With '*/', I like to think of it like this: for multiplication, the scale
> factor is last, e.g.
>
>(*/ X Y Scl)
>
> For division, the scale factor comes first, e.g.
>
>(*/ Scl X Y)
Exactly. The reason is sim
Thanks Eric,
I am going to have to play with those two particular built-in functions a
bit more. Their use, especially '*/ was not intuitive to me. At first, or
second, reading.
Having just tried it... I am surprised that the 'sqrt* I implemented is
quite a bit faster! than the built-in 'sqrt. I
Hi Lindsay,
With the functions I implemented I can write something like...
: (scl 64) (format (sqrt* 2.0) *Scl)
-> "1.4142135623730950488016887242096980785696718753769480731766797379"
'sqrt' also accepts a 'scl' argument
: (format (sqrt 2.0 1.0) *Scl)
->
"1.41421356237309504880168872420969807
Hi Danilo,
Sorry, I do not follow this. Can you explain a bit more?
Thanks!
/Lindsay
On Mon, Feb 27, 2017 at 3:32 AM, Danilo Kordic
wrote:
> It seems You reimplemented `*/'.
>
> How about something like:
> # [name 'sqrt "isqrt"] # Somthing like that.
> [scl [if native 17 8]]
> [de sqrt
Hi Alex,
I am missing something basic here that article is how I ended up
writing the functions.
With the functions I implemented I can write something like...
: (scl 64) (format (sqrt* 2.0) *Scl)
-> "1.4142135623730950488016887242096980785696718753769480731766797379"
: (scl 64) (format (/*
It seems You reimplemented `*/'.
How about something like:
# [name 'sqrt "isqrt"] # Somthing like that.
[scl [if native 17 8]]
[de sqrt [N]
[list [isqrt (** 100 *Scl) N] 'E [- *Scl]] ]
On 2/27/17, Joh-Tob Schäg wrote:
> Now there are before there were not.
> Am 27.02.2017 10:07 schr
Hi Lindsay,
> Are there scaled (fixed point) versions of division and sqrt in picolisp? I
> may have missed them...
The built-in '*/' function is both for multiplication *and* division. And 'sqrt'
accepts an optional scale factor.
For details, take a look at Rick's excellent article on the matte
Now there are before there were not.
Am 27.02.2017 10:07 schrieb "Lindsay John Lawrence" <
lawrence.lindsayj...@gmail.com>:
> Hi,
>
> Are there scaled (fixed point) versions of division and sqrt in picolisp?
> I may have missed them..
>
> In any event I wrote a couple of functions to provide that
18 matches
Mail list logo