Mitchell Rosen
f353e087f9
stub out project.switch
2023-01-23 13:40:45 -05:00
Mitchell Rosen
e661093bde
stub out project.create
handler
2023-01-23 13:03:48 -05:00
Mitchell Rosen
8c681904fb
add project.create
input pattern
2023-01-23 12:54:14 -05:00
Travis Staton
f4b13b9758
basic project queries
2023-01-23 12:49:36 -05:00
Travis Staton
59338d7144
bump sqlite-simple
2023-01-23 12:31:07 -05:00
Mitchell Rosen
dab54f77c4
add uuid-orphans-sqlite package
2023-01-23 12:10:41 -05:00
Mitchell Rosen
ea2263dac3
add 7->8 migration to Haskell code
2023-01-23 11:36:18 -05:00
Mitchell Rosen
40afc9ee9f
add 004-project-tables.sql
2023-01-23 10:53:48 -05:00
Paul Chiusano
923f745915
Merge pull request #3740 from unorsk/reset-echo-state-in-repl
...
Saving current echo state before running anything and then falling back to it if needed
2023-01-20 15:29:35 -05:00
andrii
52a7195b80
adding @unorsk to CONTRIBUTORS.markdown
2023-01-20 20:48:37 +01:00
Paul Chiusano
d37887a203
Merge pull request #3758 from unisonweb/delete-stale
...
Remove unused code
2023-01-20 10:20:01 -05:00
Fabio Labella
4d34871d30
Remove unused code
2023-01-20 14:03:53 +00:00
Paul Chiusano
9195744fdf
Merge pull request #3745 from unisonweb/cas-builtins
2023-01-19 23:28:49 -05:00
Fabio Labella
cc0c6a2868
Regenerate transcripts after Promise signature change
2023-01-20 02:07:20 +00:00
Fabio Labella
aeaf55b5e0
Add transcript test
2023-01-20 01:12:23 +00:00
Fabio Labella
17c0d8d5d8
Promise.write should take the Promise as its first argument
2023-01-19 16:22:53 +00:00
Fabio Labella
375e435180
Remove repro of CAS bug
2023-01-19 16:20:17 +00:00
Fabio Labella
e2f9c4b3b9
Regenerate transcripts
2023-01-19 16:16:04 +00:00
Fabio Labella
2b695ab451
Make sure all writes to an IORef are fully evaluated
...
If writes aren't fully evaluated, the Closure inside the IORef might
contain a thunk, which then ruins pointer equality, resulting in
failed CAS
2023-01-19 16:00:59 +00:00
Fabio Labella
c643ace1b5
Ref should be the first argument
2023-01-19 15:51:54 +00:00
Fabio Labella
38e79afbe2
casIORef works in haskell, bus error is in the unison bindings
2023-01-19 13:14:52 +00:00
Fabio Labella
77ecc43e39
Centralise concurrency primitives in a single module
2023-01-19 02:54:48 +00:00
Fabio Labella
743d2018e2
Regenerate transcripts
2023-01-18 02:09:46 +00:00
Fabio Labella
86e70f25b4
Update documentation for adding builtins
2023-01-18 00:09:05 +00:00
Fabio Labella
b408907bf9
Add bindings for Promise
2023-01-17 03:00:41 +00:00
Fabio Labella
34f113647f
Add type signatures for Promise
2023-01-17 03:00:23 +00:00
Fabio Labella
460c124778
Add single-shot promise type
2023-01-17 03:00:23 +00:00
Fabio Labella
2f5bc1f80c
Add comments on memory model for IORefs
2023-01-17 03:00:23 +00:00
Fabio Labella
aab311ac4f
Abbreviate compareAndSwap
2023-01-17 03:00:23 +00:00
Fabio Labella
0e8d714ebd
Add helper type for IO ability list
2023-01-17 03:00:23 +00:00
Fabio Labella
0cb26fb80f
Make sure the ref+promise builtins are under the right namespace
2023-01-17 03:00:23 +00:00
Fabio Labella
a870a5a22b
Only return a Boolean from CAS on IORef
...
In GHC, CAS returns both a Boolean and the current value of the IORef,
which can be used to retry a failed CAS.
This strategy is more efficient than returning a Boolean only because
it uses a single call to cmpxchg in assembly (see [1]) to avoid an
extra read per CAS iteration, however it's not supported in Scheme.
Therefore, we adopt the more common signature that only returns a
Boolean, which doesn't even suffer from spurious failures because GHC
issues loads of mutable variables with memory_order_acquire (see [2])
Incidentally, this also works around the lack of support for compound
direct lets in our interpreter.
[1]: https://github.com/ghc/ghc/blob/master/rts/PrimOps.cmm#L697
[2]: https://github.com/ghc/ghc/blob/master/compiler/GHC/StgToCmm/Prim.hs#L285
2023-01-17 03:00:23 +00:00
Fabio Labella
4806735355
Identify bug
2023-01-17 03:00:23 +00:00
Fabio Labella
22617a4330
Add TODOs
2023-01-17 03:00:23 +00:00
Fabio Labella
3b7f97603d
Add Ref and Ticket bindings
2023-01-17 03:00:23 +00:00
Fabio Labella
77d5d1ea02
Add type signatures for Ticket and CAS on Ref
2023-01-17 03:00:23 +00:00
Fabio Labella
c5e3766e76
Pin hpack to version 34
2023-01-17 03:00:23 +00:00
Fabio Labella
661de0c380
Add atomic-ops dependency
2023-01-13 17:15:35 +00:00
unorsk
54758e865a
Saving current state before running anything and then falling back to it if needed
2023-01-12 17:35:43 +01:00
Chris Penner
fa378f7601
Return an error rather than error
on invalid base32hex in a Reference ( #3728 )
...
* Improve base32hex failure error message
* Improve error handling for bad hashes to not call `error`
2023-01-11 10:04:16 -06:00
mergify[bot]
579ca88f04
Merge pull request #3736 from unisonweb/topic/scheme-compiler
...
Various scheme compiler additions
2023-01-10 21:46:13 +00:00
Dan Doel
aac85fc708
Chez lib development tip
2023-01-10 16:24:02 -05:00
Dan Doel
4c62d73b8a
Indicate execution mode to the scheme code generator
...
- The handling of command line arguments varies somewhat between
different ways of evaluating scheme code, so some different wrappers
need to be generated to run as a standalone output vs. running
immediately like a script. The in-unison code generator needs an
indication of which mode it should generate code for.
2023-01-10 16:08:39 -05:00
Dan Doel
c2c37a8ae0
Define a macro for reserving virtual registers
2023-01-10 15:53:50 -05:00
Chris Penner
59e8a25693
Fix annotations for bindings and blocks ( #3689 )
...
* WIP: fix up anns for bindings, blocks, etc.
* Working annotations for lets
* Add nesting tests
* Fix nesting tests
* Fix annotations on let-rec blocks
* Fix bad test src
* Skip destructuring binds test for now.
* Remove debugging
* Better fallbacks for finding ref nodes
* Transcript updates
* Fix bad 'contains'
* Rewrite letrec and let combinators to avoid requiring semigroup
* Don't include block openers in the block itself.
We don't want things like '=' or '->' to be part of a block
* Re-run transcripts
* Remove redundant constraint
2023-01-10 11:12:51 -06:00
mergify[bot]
f311c733a2
Merge pull request #3731 from unisonweb/topic/vimsyntax
...
Improve vim syntax highlighting
2023-01-10 12:37:28 +00:00
Rúnar
e56a6b2f53
Fix a couple of bugs
2023-01-10 00:46:56 -05:00
Rúnar
ff5c4ae8b6
Matching should be case-sensitive
2023-01-10 00:01:26 -05:00
Rúnar
cf5c59ceb6
Improve syntax highlighting
2023-01-09 23:38:04 -05:00
mergify[bot]
68a219d088
Merge pull request #3729 from zetashift/add-neovim-note
...
Add note about installing the vim plugin for neovim LSP
2023-01-10 03:38:02 +00:00