Howdy Shahrokh, Miller and pd-list, the release notes of 0.48 mention this:
"The expr family (expr, expr~, fexpr~) got an update from Shahrokh Yadegari. I'm not sure when this first came about, but expr now can access "variable" objects as variables inside expressions. Expressions using "if" skip evaluating the argument that isn't used."
well, the expr family can access variable objects since version 0.4 (which I do not know when got into Pd). As from version 0.5 (which made into Pd by 0.47, I think), you could also give it a value by using the new "=" syntax. Like: [expr x = 3] changes the value of a [v x] object.
Now we have version 0.55 up, and I do not know what's new about variables, maybe nothing? So we could change the notes to what's asctually new. Here's a list Shahrokh sent me though, since I was testing and reporting a few bugs.
2017-07-14 21:08 GMT-03:00 Shahrokh Yadegari sdy@ucsd.edu:
- Expr Version 0.55 - The arrays now redraw after a store into one of their members - The "if()" function is reworked to only evaluate either the left
or the right arg depending on the truth value of the condition.
However, if the condition is a vector, both the left and the
right are evaluated regardless.
- The maximum number of inlet and outlets (MAX_VARS) is now set at
100
- The bug of using store "=" in functions with multiple arguments,
which caused an error during execution, is fixed.
So, Shahrokh, I get all of this but the "bug of using store "=" in functions with multiple arguments", I don't think I reported that one, would you care to elaborate on it?
Miller, we seem to still have an issue creating [expr] with atanh() ,asinh() and acosh() on windows - such as in [expr atanh($f1)]. Are you working on it for the final release of Pd 0.48?
Thanks
Hi Alexandre and All,
I am not sure if the "using store '=' in functions with multiple arguments" bug has been reported or not. However, in Expr 0.5 which was included in Pd 0.47 an expression which would use the store operator '=" in a function with more than one argument such as the following
expr atan2($f1, x = $f2)
expr if ($f1, x = 1, 0)
would pass the creation process but upon execution would throw a "expr: FUNC_EVAL(766): bad left type 0" error
This is now fixed.
On a related note, if order to make the selective execution of the if() arguments to work, I had to make a few structural changes in parsing and execution of expressions. If you are using the new test version that Miller has put out, please let me know if you see any bugs that I may have introduced.
cheers, Shahrokh
On Tue, Jul 18, 2017 at 11:59 AM, Alexandre Torres Porres porres@gmail.com wrote:
Howdy Shahrokh, Miller and pd-list, the release notes of 0.48 mention this:
"The expr family (expr, expr~, fexpr~) got an update from Shahrokh Yadegari. I'm not sure when this first came about, but expr now can access "variable" objects as variables inside expressions. Expressions using "if" skip evaluating the argument that isn't used."
well, the expr family can access variable objects since version 0.4 (which I do not know when got into Pd). As from version 0.5 (which made into Pd by 0.47, I think), you could also give it a value by using the new "=" syntax. Like: [expr x = 3] changes the value of a [v x] object.
Now we have version 0.55 up, and I do not know what's new about variables, maybe nothing? So we could change the notes to what's asctually new. Here's a list Shahrokh sent me though, since I was testing and reporting a few bugs.
2017-07-14 21:08 GMT-03:00 Shahrokh Yadegari sdy@ucsd.edu:
- Expr Version 0.55 - The arrays now redraw after a store into one of their members - The "if()" function is reworked to only evaluate either the
left or the right arg depending on the truth value of the condition.
However, if the condition is a vector, both the left and the
right are evaluated regardless.
- The maximum number of inlet and outlets (MAX_VARS) is now set
at 100
- The bug of using store "=" in functions with multiple
arguments, which caused an error during execution, is fixed.
So, Shahrokh, I get all of this but the "bug of using store "=" in functions with multiple arguments", I don't think I reported that one, would you care to elaborate on it?
Miller, we seem to still have an issue creating [expr] with atanh() ,asinh() and acosh() on windows - such as in [expr atanh($f1)]. Are you working on it for the final release of Pd 0.48?
Thanks
2017-07-20 0:38 GMT-03:00 Shahrokh Yadegari sdy@ucsd.edu:
Hi Alexandre and All,
I am not sure if the "using store '=' in functions with multiple arguments" bug has been reported or not. However, in Expr 0.5 which was included in Pd 0.47 an expression which would use the store operator '=" in a function with more than one argument such as the following
expr atan2($f1, x = $f2)
expr if ($f1, x = 1, 0)
would pass the creation process but upon execution would throw a "expr: FUNC_EVAL(766): bad left type 0" error
This is now fixed.
Ok, so maybe "expr now can access "variable" objects as variables inside expressions" is about this...
On a related note, if order to make the selective execution of the if()
arguments to work, I had to make a few structural changes in parsing and execution of expressions. If you are using the new test version that Miller has put out, please let me know if you see any bugs that I may have introduced.
Sure, I'll be testing these... and I'm also working on a help patch update where I add more information and include all the functions. I could send a Pull Request very soon. Hopefully this makes into the next release so people can know all about the new stuff expr has.
Now, about remaining bugs, I still have this bug report patch, though I removed things that were fixed. There are bugs I think should be fixed, and some requests. The bugs I really think should be fixed. But about the reqiests, please consider them and tell me if you're willing to include these request, so I can let it go if not :) - but I realize v0.55 is here for good to be a part of the next 0.48, so this would be v0.6 for a later release, right?
find my v0.55 revision atatched
thanks
2017-07-20 2:08 GMT-03:00 Alexandre Torres Porres porres@gmail.com:
but I realize v0.55 is here for good to be a part of the next 0.48, so this
would be v0.6 for a later release, right?
well, one of them is the bug where atanh() doesn't load for windows, I really hope this makes it into the next release
So, as I was saying since early this year, I was working on an update of the documentation of [expr]. This reflects all the new and old stuff that were never fully documented in the help file. I made a Pull Request at https://github.com/pure-data/pure-data/pull/132
But I also have the help file attached here for anyone to check it out
Basically, I kept all the original information, but reorganized things and added a LOT of missing information. Now we have every single function documented and separated into groups, that's the main addition! I also added a version number and some useful examples/information on how to use [expr] with value/arrays and deal with "$0".
cheers
2017-07-20 2:09 GMT-03:00 Alexandre Torres Porres porres@gmail.com:
2017-07-20 2:08 GMT-03:00 Alexandre Torres Porres porres@gmail.com:
but I realize v0.55 is here for good to be a part of the next 0.48, so
this would be v0.6 for a later release, right?
well, one of them is the bug where atanh() doesn't load for windows, I really hope this makes it into the next release
so, seems atanh() and other can;t be a part of windows right now, so I added a remark about it in the documentation, here's the update
2017-07-21 16:17 GMT-03:00 Alexandre Torres Porres porres@gmail.com:
So, as I was saying since early this year, I was working on an update of the documentation of [expr]. This reflects all the new and old stuff that were never fully documented in the help file. I made a Pull Request at https://github.com/pure-data/pure-data/pull/132
But I also have the help file attached here for anyone to check it out
Basically, I kept all the original information, but reorganized things and added a LOT of missing information. Now we have every single function documented and separated into groups, that's the main addition! I also added a version number and some useful examples/information on how to use [expr] with value/arrays and deal with "$0".
cheers
2017-07-20 2:09 GMT-03:00 Alexandre Torres Porres porres@gmail.com:
2017-07-20 2:08 GMT-03:00 Alexandre Torres Porres porres@gmail.com:
but I realize v0.55 is here for good to be a part of the next 0.48, so
this would be v0.6 for a later release, right?
well, one of them is the bug where atanh() doesn't load for windows, I really hope this makes it into the next release