Is it allowed to publish an extension to a built-in function on File Exchange?
조회 수: 1 (최근 30일)
이전 댓글 표시
I have a great idea for additional functionality of a built-in function from a MATLAB toolbox. For this extension to work, I'd need to use almost the entire original function's code and add my functions to it. Is this allowed?
The function in question needs other functions from the same toolbox, so my extension would not work for others without the toolbox. However, I'm still copying many lines of original MATLAB code. Is this allowed?
댓글 수: 0
답변 (4개)
Walter Roberson
2016년 7월 27일
If you take a Mathworks function and modify it and post the new function, that would be a violation of copyright. Only people who have the appropriate toolbox are authorized to look inside at the .m, but posting on File Exchange would make that code available to the public including to people who have no MATLAB licenses at all.
댓글 수: 3
Stephen23
2016년 7월 28일
편집: Stephen23
2016년 7월 28일
- click "About File Exchange" (LHS, below "Submit a File" button)
- click "MATLAB Central Terms of Use" (RHS top).
- click "File Echange"
will get you here:
which explains that all FEX submissions are licensed under the BSD license. Is MATLAB code itself licensed under the BSD ? No.
However it is up to MATLAB to decide what license they have given you: this is their right, and it may be different between customers.
Steven Lord
2016년 7월 27일
I would recommend contacting Technical Support and/or Customer Service. They will be able to give you a definitive answer, plus if you describe the enhancement you want to make they may indicate it's already implemented in a later release than the one you have or may describe a way to achieve the same results using existing tools.
If it's not possible to do that already, they can enter your description into the enhancement database. Once it's in the enhancement database, the development staff can consider implementing the enhancement request in a future release of the toolbox.
Image Analyst
2016년 7월 27일
Yes, it's allowed. For example I use the entire code of imshow(), imread(), and many other functions in my File Exchange submissions. For example my Image Segmentation Tutorial does image segmentation, like the built in functions im2bw() and regionprops() do, but it does so much more, while using those functions inside mine. The File Exchange would have hardly any functions in it if people weren't allowed to use built-in function in them. Of course I mean calling the built-in functions, since none of use have code for the internals of those functions, unless you're a Mathworks employee.
댓글 수: 3
Image Analyst
2016년 7월 27일
Most m-files in the toolboxes don't have very much stuff in them before they end up calling a DLL or some binary code. So you're not really going to have source code for toolbox functions. And using code built from intact toolbox functions to derive other functions is allowed - every File Exchange submission does that. Sure, he's not allowed to reverse engineer code to try to get the original code but I don't think he'd be able to do that. He says he needs/wants to use "the entire original function's code" ... but I don't think he'd be able to get to that. He can only get to the code at the function call level so I assume that's what he meant. If he does indeed have a way to get to the original source code that normally only Mathworkers have access to, then I think he should say so, but I don't think that's the case.
참고 항목
카테고리
Help Center 및 File Exchange에서 Manage Products에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!