Support for Enso Date across the Java polyglot boundary #4296
Labels
-compiler
-libs
Libraries: New libraries to be implemented
p-low
Low priority
x-new-feature
Type: new feature request
This task is automatically imported from the old Task Issue Board and it was originally created by James Dunkerley.
Original issue is here.
Currently, when a
Standard.Base.Data.Date
is passed over the polyglot boundary the resulting object is acom.oracle.truffle.polyglot.PolyglotMap<String, Object>
.It should be represented as the underlying
java.time.LocalDate
object.This should work in both directions so that a LocalDate would be automatically converted to an Enso Date.
Comments:
Do we have a test somewhere? Or is there a place where such test should be placed? (jaroslavtulach - Mar 31, 2022)
Should probably be part of `test/Tests/src/Data/Time/Date_Spec.enso` (James Dunkerley - Mar 31, 2022)
The `Data_Spec.enso` looks like an Enso script to run. However your report talks about "polyglot boundary" and "com.oracle.truffle.polyglot.PolyglotMap" - I don't expect `Data_Spec.enso` to cross the "polyglot boundary". I would expect a test that uses Java: `Context.create().eval("enso", ....)` - or where else do you observe the problems with `PolyglotMap`? (jaroslavtulach - Mar 31, 2022)
Agree it doesn't belong in this specific file. The specific issue is using the Date within a Java function brought in via `polyglot import`. Lets disucss when you are ready to pick this ticket up. (James Dunkerley - Mar 31, 2022)
I have the failing test: https://github.com//pull/3374 (jaroslavtulach - Apr 1, 2022)
The PR has been updated with a fix. It is probably not production quality yet, but it does seem to work. Please try your use-case to see if it works. (jaroslavtulach - Apr 1, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for the last Friday (2022-04-01):
Progress: building develop branch, running tests, debugging interop, creating a test & bugfix for LocalDate: #3374, setting my IDE up, introducing on discord, talking with Sylwia & Pawel, reading handbook It should be finished by 2022-04-08.
Next Day: Review enso-spec-1.0/design.md, schedule more chats (Enso Bot - Apr 4, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for yesterday (2022-04-04):
Progress: philippic against ASCII only language https://github.com/enso-org/design/pull/23#discussion_r841363032 + critic of name mangling, learned to submit standup, enhancing test of #3374, setting up Mac workstation It should be finished by 2022-04-08.
Next Day: Meetings at Charles University - Petr Tůma group (performance), Štěpán Šindelář (Python) - some (dirty) implementation of #3374
kudos to @hubert Plociniczak: Explaining me his intentions with #3363 and how it relates to #3374
kudos to @jdunkerley: Pointing out missing "opposite" test-case for LocalDate: #3374
kudos to @kustosz: Technical review of #3374 (Enso Bot - Apr 5, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for yesterday (2022-04-05):
Progress: Review of #3363 - performance, architecture, native image; trying to connect Date atom with engine + lunch with Štěpán (FastR lead) discussing LocalDate interop in Enso & other languages; encouraging Petr Tůma to continue in talks with Wojciech regarding benchmarks; sharing a thought about A13Y; compiling flatc 1.12.0 on Mac; Talking with James, getting a pre-built IDE running It should be finished by 2022-04-08.
Next Day: we should implement Truffle language TCK one day; connect IDE and my own engine - learn to debug that; expose polyglot (Enso Bot - Apr 6, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for yesterday (2022-04-06):
Progress: Vicious circle between LocalDate and Enso Date atom: #3363; Proper test/Tests/src/Semantic/Java_Interop_Spec.enso; investigating IDE & protocol; rustup, cargo, wasm; meeting with Edward about types It should be finished by 2022-04-08.
Next Day: build, run, debug IDE, play with protocol, discuss vicious circle with Marcin (Enso Bot - Apr 7, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for yesterday (2022-04-07):
Progress: Discussion with Marcin about host/guest Java & LocalDate & Native Image; Building IDE & Bugfix for
./run
script: #3386; Lunch with GraalVM engineer to find out what's new (advances in ByteCodeInterpreters); Talking with Edward and Marcin + Writing 1st draft of "Engine Roadmap" It should be finished by 2022-04-08.Next Day: Review of Engine Roadmap; polish #3374; get the IDE built & run (finally?) (Enso Bot - Apr 8, 2022)
**Jaroslav Tulach** reports a new **🔴 DELAY** for yesterday (2022-04-08):
Summary: There is 7 days delay in implementation of the Support for Enso Date across the Java polyglot boundary (#181740971) task.
It will cause 7 days delay for the delivery of this weekly plan.
it's a warm-up task - e.g. not urgent to be delivered
Delay Cause: Continuously working on something else
Possible solutions: Speeding the delivery up is possible, but only at expense of other tasks that seem to be more urgent (Enso Bot - Apr 9, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for yesterday (2022-04-08):
Progress: Reworking LocalDate; Building the IDE on Linux & Mac - #3387; Fixing broken laptop and rescuing data; Broken camera; Mettings: "Engine Roadmap", "Backend performance". Prototype of Self Sampler for LS: #3389 It should be finished by 2022-04-15.
Next Day: Get LocalDate finally ready for final review. Coordinate with Dmitry using the Self Sampler. (Enso Bot - Apr 9, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for today (2022-04-09):
Progress: Proper fix for LocalDate - requested new review.Reworking LocalDate; Building the IDE on Linux & Mac - #3387; Fixing broken laptop and rescuing data; Broken camera; Mettings: "Engine Roadmap", "Backend performance". Prototype of Self Sampler for LS: #3389 It should be finished by 2022-04-15.
Next Day: Get LocalDate finally ready for final review. Coordinate with Dmitry using the Self Sampler. (Enso Bot - Apr 9, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for yesterday (2022-04-11):
Progress: Problems "building" IDE. It builds, but it is just slow and CPU hungry on Lenovo T450. Avoid painting when scene unchanged. Running analysis, reports. Discussing engine roadmap: https://docs.google.com/document/d/16B5DT7fkToJdUZVHNE6YhKy_TFYAEsRXym-mRPH2L_c/edit#heading=h.lhw4ozq3vuyd It should be finished by 2022-04-15.
Next Day: Visit to MFF UK. Parsing. Engine future. Merge the LocalDate PR, finally. (Enso Bot - Apr 12, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for yesterday (2022-04-12):
Progress: Polishing #3387 - merged; discussing Rust & lexer & parser; reading handbook; planning meetings; agile vs. waterfall It should be finished by 2022-04-15.
Next Day: Schedule epic, stories & co. into pivotal. Merge the LocalDate PR, finally #2. Debug the LS protocol. (Enso Bot - Apr 13, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for yesterday (2022-04-13):
Progress: Reading the handbook, entering stories to pivotal, benchmarking LocalDate - got review. Performance discussions. It should be finished by 2022-04-15.
Next Day: Got review for the LocalDate PR, need to address it. Debug the LS protocol #2. (Enso Bot - Apr 14, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for yesterday (2022-04-14):
Progress: Second approval for the LocalDate PR. planning Drop-Downs with Edward and Marcin It should be finished by 2022-04-15.
Next Day: Integrate the LocalDate PR. Debug the LS protocol #3. Planning drop-downs. (Enso Bot - Apr 15, 2022)
https://github.com//pull/3374 has just been integrated. (jaroslavtulach - Apr 15, 2022)
**Jaroslav Tulach** reports a new **STANDUP** for yesterday (2022-04-15):
Progress: LocalDate PR integrated. Debugging sbt, project manager, ls protocol. Filling stories for static drop-downs. It should be finished by 2022-04-15.
Next Day: Next day I will be working on the ##181883942 task. Debug the LS protocol #4. (Enso Bot - Apr 16, 2022)
The text was updated successfully, but these errors were encountered: