Age | Commit message (Collapse) | Author | |
---|---|---|---|
2014-01-28 | stdlib: Strengthen Map module with guards | Björn-Egil Dahlberg | |
This commit requires Map enabled bootstrap compiler. | |||
2014-01-28 | stdlib: Pretty print maps | Björn-Egil Dahlberg | |
Pretty printing behaviour mimic records. This commit requires Map enabled bootstrap compiler. | |||
2014-01-28 | stdlib: Remove bogus map() type | Björn-Egil Dahlberg | |
2014-01-28 | erts,stdlib: Change map module name to maps | Björn-Egil Dahlberg | |
Name conforms to EEP. | |||
2014-01-28 | erts,stdlib: Teach matchspec compiler map guards | Björn-Egil Dahlberg | |
2014-01-28 | stdlib: Fixup id_transform_SUITE | Björn-Egil Dahlberg | |
2014-01-28 | typer: Rename map() type to map_dict() | Björn-Egil Dahlberg | |
The name conflicted with builtin type map(). | |||
2014-01-28 | edoc: Add test for Maps in EDoc | Björn-Egil Dahlberg | |
2014-01-28 | edoc,syntax_tools: Teach Map understanding | Björn-Egil Dahlberg | |
2014-01-28 | dialyzer,hipe,stdlib: Add Maps understanding to Dialyzer | Björn-Egil Dahlberg | |
2014-01-28 | stdlib: Add Map module | Björn-Egil Dahlberg | |
The map type is set to term. | |||
2014-01-28 | stdlib: Update erl_scan_SUITE for ':=' and '=>' tokens | Björn-Egil Dahlberg | |
2014-01-28 | stdlib: Deny variables as keys and disallow ':=' in map construction | Björn-Egil Dahlberg | |
In the current iteration of Maps we should deny *any* variables in Map keys. | |||
2014-01-28 | stdlib: Teach erl_eval Maps ':=' exact operator | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Rename map pattern to proper name | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Add Maps types to cerl | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Format stacktrace on error | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Teach Maps to beam_disasm | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Fix v3_core for map update syntax | Björn-Egil Dahlberg | |
Make map update expressions safe, i.e. (foo())#{ k1 := 1 } | |||
2014-01-28 | compiler: Fix get_map_element bug with allocate | Björn-Egil Dahlberg | |
The instruction get_map_element has a faillabel so you may not use the instruction within a allocate/deallocate block. | |||
2014-01-28 | compiler: Test Maps inlining | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Teach Maps understanding to inliner | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Implement different instructions for => and := | Björn Gustavsson | |
2014-01-28 | Pass the map pair operators through to the v3_codegen pass | Björn Gustavsson | |
2014-01-28 | sys_core_fold: Remove optimization that has become invalid | Björn Gustavsson | |
With the => and := operators for updating maps, this optimization is no longer valid. | |||
2014-01-28 | compiler: Implement support for exact Op in Maps | Björn-Egil Dahlberg | |
The syntax is handled upto v3_kernel where it is reduced to previous behaviour for construction and updates. Meaning, the ':=' operator is handled exactly as '=>' operator. | |||
2014-01-28 | Extend representation for maps in Core Erlang | Björn-Egil Dahlberg | |
2014-01-28 | Update erl_lint, erl_expand_records, sys_pre_expand for Maps | Björn-Egil Dahlberg | |
Update erlang lint and syntax expand for #{ K := V } | |||
2014-01-28 | stdlib: Fix erl_parse:parse_term/1 | Björn-Egil Dahlberg | |
Did not handle Maps. | |||
2014-01-28 | Extend erl_parse with two Op Map syntax | Björn-Egil Dahlberg | |
Example how to construct: #{ K1 => V1, K2 => V2 } How to update: M#{ K1 => V1, K2 := V2 } How to match: #{ K1 := V1, K2 := V2 } = M | |||
2014-01-28 | Teach erl_scan to recognize ':=' | Björn-Egil Dahlberg | |
2014-01-28 | erl_eval: Add functions to interpreter for maps | Björn-Egil Dahlberg | |
2014-01-28 | stdlib: Update printing to handle Maps | Björn-Egil Dahlberg | |
2014-01-28 | erts: Add the type-testing guard BIF is_map/1 | Björn-Egil Dahlberg | |
To add a type-testing guard BIF, the following steps are needed: * The BIF itself is added to bif.tab (note that it should be declared using "ubif", not "bif"), and its implementation to erl_bif_op.c. * erl_internal must be modified in 3 places: The type test must be recognized as guard BIF, as a type test, and it must be auto-imported. * There must be an instruction that implements the same type test as the BIF (it will be used in guards). beam_utils:bif_to_test/3 must be updated to recognize the new guard BIF. | |||
2014-01-28 | erts: Add the size-testing guard BIF map_size/1 | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Fix sorted keys in put_map instruction | Björn-Egil Dahlberg | |
All pairs in a Map needs to be in strict ascending key order. | |||
2014-01-28 | compiler: Fix multiple same keys | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Check for duplicate key literals in Map | Björn-Egil Dahlberg | |
If a literal key already is present in a Map update the latter should be used. Warn for previous duplicates in the Map. | |||
2014-01-28 | compiler: Handle literals, not just atoms, as keys in maps | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Fix no basic blocks for maps | Björn-Egil Dahlberg | |
2014-01-28 | compiler: Fix stack register reordering | Björn-Egil Dahlberg | |
Can now handle {list [reg()]} elements in instructions. | |||
2014-01-28 | Implement support for maps in the compiler | Björn Gustavsson | |
To make it possible to build the entire OTP system, also define dummys for the instructions in ops.tab. | |||
2014-01-28 | Introduce a representation for maps in Core Erlang | Björn Gustavsson | |
2014-01-28 | Update erl_lint, erl_expand_records, sys_pre_expand for maps | Björn Gustavsson | |
2014-01-28 | Extend erl_parse with the new map syntax | Björn-Egil Dahlberg | |
Example how to match or construct: #{ K1 => V1, K2 => V2 } How to update: M#{ K => V } | |||
2014-01-28 | Teach erl_scan to recognize '=>' | Björn-Egil Dahlberg | |
2014-01-28 | Merge branch 'siri/wx-cdv/OTP-11179' | Siri Hansen | |
* siri/wx-cdv/OTP-11179: observer: cosmetic gui tweaks observer: Fix progress dialog creation observer: renamed crashdump_viewer files and fixed makefiles observer: improve wx version of crashdump_viewer observer: Use crashdump_viewer's term viewer to display large terms and binaries observer: Fix memory and scheduler info and handle missing fields observer: Optimize row lookups observer: improve wx version of crashdump_viewer observer: Consolidate the view of process information observer: add wx version of crashdump_viewer | |||
2014-01-28 | Merge branch 'gomoripeti/fix_etop_tr_smp' | Siri Hansen | |
* gomoripeti/fix_etop_tr_smp: Fix etop trace handler in smp environment OTP-11633 | |||
2014-01-28 | Merge branch 'hb/dialyzer/opaque_types_fixes/OTP-10397' | Hans Bolinder | |
* hb/dialyzer/opaque_types_fixes/OTP-10397: [dialyzer] Re-work the handling of opaque types | |||
2014-01-28 | Merge branch 'feat/erl_tidy_print_to_stdout' | Siri Hansen | |
* feat/erl_tidy_print_to_stdout: Added documenation for the new option describing what it does. Add initial implementation of having erl_tidy print to screen instead of writing to the file provided. The reason for this is that you may want to have an intermediary step between saving the tidied file and using the output. OTP-11632 |