DEVELOPER SANDBOX Academy of Mastery
WelcomeBuild · Explore · Create SD
ROSETTA STONE

Reorder

Planned

ROSETTA 19 — Implementation Comparison
Compare sibling reordering across languages.

ROSETTA 19

Rosetta Stone Reorder

Comparison Contract

Move one item while preserving deterministic stored order.

Comparison Contract

Move one item while preserving deterministic stored order.

01

Objective & Comparison Rule

Build each implementation without changing the shared behavior or visual target.
Rosetta Contract

Objective

Compare sibling reordering across languages.

Comparison Rule

Move one item while preserving deterministic stored order.

Keep equivalent input, behavior, and visible output in every later language version.

02

Implementation Plan

Keep the comparison surface fixed while language syntax and runtime details change.
Structure
project/
├── data/
│   └── learning.db
├── expected/
│   └── output.json
├── package.json
├── tsconfig.json
├── index.html
├── styles.css
└── src/
    ├── client.ts
    └── server.ts
Initial Implementation
  • JavaScript / modern ECMAScript
  • Node.js
  • SQLite
  • HTML
  • CSS
Comparison Languages
  • JavaScript / modern ECMAScript
  • TypeScript
  • Angular
  • Python
  • Java
  • C#
  • PHP
Source Learning Project

Source Learning Project — TypeScript Lab: Move Node Up and Down

src/local-editor/server.ts → reorderNode()

Technologies

JavaScript / modern ECMAScript
TypeScript
Angular
Python
Java
C#
PHP
03

Build Instructions

Start with the first technology listed under Technologies, then reproduce the same behavior in each following implementation.
Freeze the Contract
Define the exact input, visible behavior, and expected output.
Build Initial Implementation
Implement the reference version with the same standalone visual layer.
Later Comparison
Rebuild without changing the contract.
04

TypeScript Implementation Reference

This implementation becomes the first concrete Rosetta comparison point.
Reference Code
Use the same input when building later language versions.
TypeScript Implementation Configuration
Keep the TypeScript implementation independently buildable; each implementation should keep its own required setup.
05

Comparison Dimensions

Record differences that teach language and runtime behavior rather than cosmetic syntax.
Compare
  • Syntax and data declarations
  • Typing and validation
  • Collections and standard-library operations
  • Modules and file organization
  • Runtime and build requirements
  • Database or HTTP APIs when applicable
  • Visible output and behavioral equivalence