Recently updated channels

Pick one to see only that channelBrowse all channels →

Results

13 articles
Sort
3 slides9:25EN
Jane Street· Oct 1, 2024Richard Eisenberg: Using OCaml’s Coercion OperatorRichard Eisenberg · Jane StreetA practical tour of subtyping, polymorphic variants and private type abbreviations, with no runtime conversion cost.Programming LanguagesSoftware engineering
4 slides8:06EN
Jane Street· Aug 7, 2024How OCaml's Proposed Include Functor Syntax Reduces RepetitionRichard Eisenberg · Jane StreetA reverse-array example shows how to derive common module functions from a minimal implementation without an extra wrapper module.Programming LanguagesSoftware engineering
5 slides14:36EN
Jane Street· Jun 24, 2024Programming with OCaml's Local ModeRichard Eisenberg · Jane StreetAn example shows how a local list can contain global values, why a non-escaping annotation alone does not ensure stack allocation, and where the experimental feature remains awkward.Software engineeringProgramming Languages
5 slides11:28EN
Jane Street· Jun 13, 2024OCaml Local Types: Regional Parameters and Loop RegionsRichard Eisenberg · Jane StreetA demonstration explains why some local parameters can cross a function boundary and how loop regions reclaim allocations.Programming LanguagesSoftware engineering
4 slides9:14EN
Jane Street· May 29, 2024OCaml Local Function Types: Why Partial Application Can EscapeRichard Eisenberg · Jane StreetRichard Eisenberg uses a list-append example to show how a local argument changes the mode of a partially applied function in Jane Street’s OCaml compiler branch.Programming LanguagesSoftware engineering
7 slides15:59EN
Jane Street· May 7, 2024Tail Calls and Local Regions in OCamlRichard Eisenberg · Jane StreetA list-counting example reveals why a local closure can escape at a tail call, and how regional mode and [@nontail] affect the result.Programming LanguagesSoftware engineeringDeveloper productivity
3:30EN
Jane Street· Mar 13, 2024Richard Eisenberg on Jane Street's OCaml ExperimentsRichard Eisenberg · Jane StreetJane Street's compiler team is exploring unboxed types, locality modes, and data-race-free parallelism to make OCaml's performance and memory management better suited to its needs.Programming LanguagesSoftware engineering
3 slides11:07EN
Jane Street· Feb 29, 2024How OCaml Locals Use a Separate StackRichard Eisenberg · Jane StreetA list example shows how region-scoped local values can avoid repeated garbage-collected allocations.Programming LanguagesSoftware engineering
5 slides23:25EN
Jane Street· Feb 20, 2024Richard Eisenberg: How OCaml Locals Reduce Garbage-Collected AllocationRichard Eisenberg · Jane StreetAn annotated list-processing example shows why locality must be preserved both when values are created and when functions consume them.Programming LanguagesSoftware engineering
3 slides22:27EN
Jane Street· Feb 7, 2024How OCaml Infers LocalityRichard Eisenberg · Jane StreetA look at local and global mode inference, module signatures, mode crossing for integers, and conversions between function types.Programming LanguagesSoftware engineering
5 slides15:17EN
Jane Street· Jan 31, 2024OCaml Locals, Modes, and SubmodingRichard Eisenberg · Jane StreetA worked explanation of how local and global modes control escaping values, and how those modes interact with function types.Programming LanguagesSoftware engineering
7 slides12:52EN
Jane Street· Jan 23, 2024OCaml Local Variables, Return Values and RegionsRichard Eisenberg · Jane StreetA worked example shows how `local_` and `exclave_` let a function accept a local value and return a local structure in its caller's region.Programming LanguagesSoftware engineering
4 slides8:52EN
Jane Street· Jan 5, 2024Introducing Local Parameters in OCamlRichard Eisenberg · Jane StreetA demonstration of how Jane Street's experimental local mode restricts escaping values and makes function interfaces easier to reason about.Programming LanguagesSoftware engineering