Comments (8)
I'm inclined to introduce a new pre-defined object, "global" (or GD) to save
the shared data. My idea is not to let normal functions modify it, but only
the start-up process Andrew is thinking of can modify it and after that it's
read-only.
Maybe my Separate Context approach was wrong; Still, we have function-local
"this" object.
Original comment by [email protected]
on 17 Apr 2012 at 9:43
from plv8.
Something not modifiable won't meet the case. It's intended as a
between-invocation stash.
Original comment by [email protected]
on 19 Apr 2012 at 12:29
from plv8.
But the behavior is unpredictable as the invocation order may be changed during
planning. What's the real world use case?
Original comment by [email protected]
on 19 Apr 2012 at 12:52
from plv8.
Invocation order is only unpredictable when a statement calls more than one
function. The real world use case is as a stash for data between statements.
That's how it's used in PLPerl and PLPython.
Original comment by [email protected]
on 26 Apr 2012 at 2:41
from plv8.
My concern is JavaScript is fragile language. A lot of premature developers
break the runtime environment by modifying the global variable and builtin
objects. That is, if that is the case, today you can assign any properties to
the plv8 object which is visible from everyone.
Original comment by [email protected]
on 27 Apr 2012 at 12:56
from plv8.
And there has been a lot of effort to guard this nature from the language
specification like Object.freeze(), Object.seal(), plus from the framework like
commonJS where each module can play only in the separated namespace.
Original comment by [email protected]
on 27 Apr 2012 at 12:59
from plv8.
I think it's enough to just have plv8 as it stands today, isn't it? The object
can have any property except for pre-defined functions. If there's no
objection, I'm closing this.
Original comment by [email protected]
on 2 May 2012 at 7:21
from plv8.
Closing, given my comment above.
Original comment by [email protected]
on 30 May 2012 at 5:53
- Changed state: Fixed
from plv8.
Related Issues (20)
- Compatibility with Postgres 16 HOT 2
- Build error plv8 - using the `make` command HOT 8
- Upgrade from 2.3.12 to 2.3.15 failed in Postgresql v11.18 HOT 1
- Excited to Start working with 3.2alpha Branch HOT 2
- Invalid Discord link? HOT 2
- r3.2 Rocks HOT 2
- Many warnings when building v3.2.0 HOT 2
- /usr/bin/ld: cannot find -lv8_base_with_compiler: No such file or directory HOT 4
- Support for pg16 HOT 4
- plv8_info() causes segmentation fault HOT 2
- Unable to access transition tables declared in trigger HOT 1
- add functions setTimeout and setInterval HOT 11
- Async function call in trigger HOT 4
- Use of Promise HOT 2
- PGXN Build Fails
- undefined symbol: _ZTIN2v84base6ThreadE HOT 11
- Getting Error '-fexcess-precision=standard' is not supported when trying to compile PLV8 with EDB16 HOT 1
- Can't get access to things defined using start_proc HOT 9
- Build guide mistakes HOT 4
- How to use OUT params in plv8 stored proc HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from plv8.