Git Product home page Git Product logo

Comments (3)

jack-williams avatar jack-williams commented on May 18, 2024

Behind the scenes we model namespaces as a file, using the base name to define the name, like:

// in namespace TLU
3D = LAMBDA(x, ... );

This assumes that the base is itself a valid name. In cases where the name is not individually valid, we report an error and do not save it to the manager.

We should not "split" names into namespace / base when each part is individually not a valid name. Instead, we should treat it as atomic and put it in the top level namespace. So it would look something like:

// in namespace 'Workbook'
TLU.3D = LAMBDA(x, ...);

from advanced-formula-environment.

cjhesse avatar cjhesse commented on May 18, 2024

That sounds like a good solution to me.

I wanted to note that I created a gist with the affected functions in text form, and when I imported them that way, they all went to the workbook namespace and worked as expected. If the "hidden worksheet" option is enabled, they continue working with AFE after saving and reopening the workbook, but if the "hidden worksheet" is disabled, they won't be recognized later.

Perhaps the capability to import from text into the workbook namespace, or to move items (and rename as appropriate) from a given namespace into the workbook namespace would be helpful.

from advanced-formula-environment.

jack-williams avatar jack-williams commented on May 18, 2024

The latest version of manages namespaces, now called modules, explicitly. This is in contrast to the previous behaviour of representing names both as namespaces and in the manager, determined by splitting on a dot. As a result, AFE will no longer try and split something like TLU.3D.

from advanced-formula-environment.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.