Editing Online Developer Meeting (2021-08-24)

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 6: Line 6:
 
* Meet and greet 5 minutes before meeting (audio testing).
 
* Meet and greet 5 minutes before meeting (audio testing).
  
=== Switch this meeting to more casual format ===
+
=== First topic to discuss ===
 
 
* In the future notes of the talks will be added to this wiki in a more sparse fashion.
 
 
 
=== liboctave ===
 
 
 
* Make more use of STL
 
* Not all liboctave components can be replaced by STL containers, as the ND-indexing is not supported.
 
* <code>string_vector</code> class probably replaceable by STL containers.
 
 
 
=== Tips for Octave C++ code writers ===
 
 
 
Such as packages, toolboxes, etc.
 
 
 
* Prefer <code>OCTAVE_LOCAL_BUFFER</code> over heavy-weight <code>Array</code> object to store results of (Fortran-) library calls.
 
* Prefer <code>octave_value</code> type variables over internal data structures.
 
** Examples: Function handle class and Range class.
 
 
 
=== For package maintainers ===
 
 
 
* Do not use <code>error_state</code> anymore! https://octave.discourse.group/t/eliminating-use-of-error-state-in-octave-code/1515
 
* Do not suppress compiler warnings about deprecated features today, those are the bug reports of tomorrow, when it is too late.
 
 
 
=== octave namespace ===
 
 
 
* jwe made many breaking changes on the default branch moving symbols in the octave namespace, to keep the namespaces tidy.
 
 
 
=== Deprecations ===
 
 
 
* The operators <code>.+</code>, <code>.-</code>, and <code>**</code> https://octave.discourse.group/t/deprecating-fortran-style-exponent-operator/1516 will be deprecated.
 
 
 
=== Trolling ===
 
 
 
* In case of trolling behavior of users, please mark the thread, thus a Discourse admin can close the threat and mute the user.
 
** DO NOT FEED THE TROLL: Any further answer or conversation is most likely a waste of emotions and time.
 
* Any user violating the usage conditions https://octave.discourse.group/tos#heading--conditions will be muted or removed from the forum entirely.
 
 
 
=== Code sprints ===
 
 
 
* Wish for more code sprints, e.g.,
 
** "m_" convention https://octave.discourse.group/t/using-m-prefix-for-member-variables-in-c-classes/1517/17
 
** Close easy closable bugs [[Short_projects#Easy_Closes]]
 
  
 
== Previous topics ==
 
== Previous topics ==
Line 55: Line 14:
 
* No "official" announcement happened.  Maybe reuse abandoned mailing-lists to announce important events, such as releases.
 
* No "official" announcement happened.  Maybe reuse abandoned mailing-lists to announce important events, such as releases.
 
* How do distribution maintainers get to know about Octave releases?
 
* How do distribution maintainers get to know about Octave releases?
** Contact Debian maintainers of the Octave package to maybe improve our communication.
+
** Contact Debian maintainers of the Octave package to maybe improve our communication (Kai).
*** Done, already answered: https://lists.gnu.org/archive/html/octave-maintainers/2021-07/msg00001.html
 
  
 
=== Octave 6.4 / 7 / 8 ===
 
=== Octave 6.4 / 7 / 8 ===
Line 76: Line 34:
 
** jwe will continue to work on this feature on Octave 7 (default branch)
 
** jwe will continue to work on this feature on Octave 7 (default branch)
 
** If feature cannot be completed by the end of the year, it will be disabled on parser-level (error), and introduced in Octave 8 one year later.
 
** If feature cannot be completed by the end of the year, it will be disabled on parser-level (error), and introduced in Octave 8 one year later.
* [https://octave.discourse.group/t/new-command-window-widget/501? New GUI command widget]
+
* New GUI command widget
 
** Possible to introduce it as user opt-in in Octave 7
 
** Possible to introduce it as user opt-in in Octave 7
 
** Pending issues:
 
** Pending issues:
Line 84: Line 42:
 
* Deprecation of Octave operators
 
* Deprecation of Octave operators
 
** Improve Matlab compatibility
 
** Improve Matlab compatibility
** Some extensions make it painful to implement Matlab compatible command-style function calls? See also the [https://octave.discourse.group/t/parsing-command-style-function-call-syntax/1414/7 discussion] about this topic.
+
** Some extensions make it painful to implement Matlab compatible command-style function calls? (some clarification needed)
 
*** Remove rarely used extensions like "**" power.
 
*** Remove rarely used extensions like "**" power.
 
*** Discussion about removal of "+=", "++", etc.  No final decision made.
 
*** Discussion about removal of "+=", "++", etc.  No final decision made.
*** Often used extensions must probably stay (like "!" or "!=" used in place of "~" or "~=").
+
*** Often used extensions like "!" == "~" must probably stay.
  
 
=== C++ shared pointer / liboctave ===
 
=== C++ shared pointer / liboctave ===
 
* jwe had a look at Octave own reference counting
 
* jwe had a look at Octave own reference counting
 
* Wish to replace it with C++ shared pointers
 
* Wish to replace it with C++ shared pointers
* Expert knowledge wanted! jwe opened a [https://octave.discourse.group/t/using-std-shared-ptr-t-to-implement-copy-on-write-objects-in-octave/1436 discussion thread]
+
* Expert knowledge wanted!
* jwe identified "copy expensive" inefficiency about mxArray to octave_value conversion? Root of the trouble lies in historical handling of complex data? See this [https://octave.discourse.group/t/improving-performance-of-data-transfer-to-and-from-mex-functions/1437 discussion].
+
** jwe will reach out on Discourse about the exact problems.
 +
* jwe identified "copy expensive" inefficiency about mxArray to octave_value conversion? (some clarification needed)
 +
** Root of the trouble lies in historical handling of complex data?? (some clarification needed)
  
 
== See also ==
 
== See also ==

Please note that all contributions to Octave may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Octave:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)