{"id":20172976,"url":"https://github.com/marcono1234/hotjava-1.0-alpha","last_synced_at":"2025-10-25T21:09:36.741Z","repository":{"id":103657809,"uuid":"232652056","full_name":"Marcono1234/HotJava-1.0-alpha","owner":"Marcono1234","description":"Files of HotJava 1.0a2 \u0026 1.0a3 (predecessor of Java)","archived":false,"fork":false,"pushed_at":"2020-01-16T20:14:44.000Z","size":5762,"stargazers_count":11,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-10T03:15:37.301Z","etag":null,"topics":["hotjava","java"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Marcono1234.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"License.html","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-01-08T20:24:57.000Z","updated_at":"2024-10-18T15:04:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"20179238-0bd1-4567-8499-2e7fbd539b93","html_url":"https://github.com/Marcono1234/HotJava-1.0-alpha","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marcono1234%2FHotJava-1.0-alpha","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marcono1234%2FHotJava-1.0-alpha/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marcono1234%2FHotJava-1.0-alpha/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Marcono1234%2FHotJava-1.0-alpha/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Marcono1234","download_url":"https://codeload.github.com/Marcono1234/HotJava-1.0-alpha/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248148245,"owners_count":21055548,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hotjava","java"],"created_at":"2024-11-14T01:33:00.846Z","updated_at":"2025-10-25T21:09:36.654Z","avatar_url":"https://github.com/Marcono1234.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# HotJava 1.0 alpha\nThis repository contains the files of HotJava 1.0 alpha, the predecessor of \nthe Java programming language.\n\nContained are:\n- [hj-alpha2](/hj-alpha2) ([HTML](https://marcono1234.github.io/HotJava-1.0-alpha/hj-alpha2/hotjava/index.html)): \nHotJava 1.0a2 for SunOS\n- [hj-alpha3](/hj-alpha3) ([HTML](https://marcono1234.github.io/HotJava-1.0-alpha/hj-alpha3/hotjava/index.html)): \nHotJava 1.0a3 for SunOS\n- [hotjava-alpha2-nt-x86](/hotjava-alpha2-nt-x86) ([HTML](https://marcono1234.github.io/HotJava-1.0-alpha/hotjava-alpha2-nt-x86/hotjava/index.html)): \nHotJava 1.0a2 for Windows NT\n\n[*Source*][hotjava-source]\n\n# History \u0026 background\nIn 1991 a small team of Sun Microsystems employees, known as the \"Green Team\", \nwas chartered to plan for the \"next wave\" in computing. By the summer of 1992 \nthey had created a working demo of an interactive, handheld home-entertainment \ndevice controller. The programming language for this device was written by \nJames Gosling and had the name \"Oak\". However, the team was unable to convince \nthe TV set-top box and video-on-demand industry with their new device. But they \nnoticed that due to the capabilities of the programming language, it was also \nwell suited for the Internet which greatly grew in popularity at that time. \nTherefore they created a webbrowser based on their new programming language \nsimilar to the then popular Mosaic browser and called it \"WebRunner\" (later \nnamed \"HotJava\"). The first publicly released alpha version was HotJava 1.0a2.\n\n[*Source*](https://web.archive.org/web/19990223195009/http://java.sun.com/features/1998/05/birthday.html)\n\n----\n\nBased on this information and the [changelog of 1.0a2](https://marcono1234.github.io/HotJava-1.0-alpha/hj-alpha2/hotjava/doc/changes/changes.html#Programmer), \n1.0a2 is the first version after the \"Oak\" → \"Java\" name change.\n\n1.0a2 and 1.0a3 appear to be the only Java versions which produce class files of \nversion major 45, minor 2. These class files are incompatible with any newer class \nfiles, starting with major 45, minor 3 (version 1.0b1?); read more [here](https://github.com/ItzSomebody/StopDecompilingMyJava/blob/master/decompiler-tool-bugs/Entry-011/Entry.md) \nand see the [VM spec](https://marcono1234.github.io/HotJava-1.0-alpha/hj-alpha2/hotjava/doc/vmspec/vmspec_39.html#HEADING243).\n\nBack then the meaning of the field access flag `0x40` was reversed, instead of \nbeing \"volatile\" it was \"threadsafe\" (= can cache in registers), see [VM spec](https://marcono1234.github.io/HotJava-1.0-alpha/hj-alpha2/hotjava/doc/vmspec/vmspec_38.html#HEADING212).\n\nThe HotJava specific classes (networking, applets, browser interaction) \nwere not in the `java` package back then, but had their own top level \npackages, see [package index](https://marcono1234.github.io/HotJava-1.0-alpha/hj-alpha2/hotjava/doc/api/packages.html).\n\nThe files in this repository come from [here][hotjava-source]. \nThere are for sure more interesting files there, though sadly not all have been \narchived. Other old Java files can be found [here](https://web.archive.org/web/*/http://www.mcp.com/que/javarc/se_java/*). \nAlso quite interesting is [this mention](https://groups.google.com/d/topic/comp.lang.misc/bmo0GZ5r_eY/discussion) \nof Oak / Java where the former Sun employee Jonathan Payne, who worked on Java, \nresponded.\n\n# HotJava issues\nThe HotJava versions are provided in the state in which they were archived\u003csup\u003e[1](#extraction-note)\u003c/sup\u003e.\nIt is (at least currently) not the goal of this repository to fix issues in \nthe HotJava source code or documentation.\n\n\u003ca name=\"extraction-note\"\u003e1\u003c/a\u003e: Extracting the archives and storing their \ncontent with Git might have introduced some changes.\n\n# License\nThese files are published based on the license included in the HotJava releases \nand copied as [License.html](https://marcono1234.github.io/HotJava-1.0-alpha/License.html), \nwhich states (excerpt):\n\u003eSun grants to you (\"Licensee\") a non-exclusive license to use the \nSoftware for academic, research and internal business purposes only, \nwithout fee. Licensee may distribute the binary and source code \nto third parties provided that the copyright notice and this statement \nappears on all copies and that no charge is associated with such \ncopies. Licensee agrees that the copyright notice and this \nstatement will appear on all copies of the Software, or portions \nthereof. Sun retains exclusive ownership of the software.\n\n# Disclaimer\nThis repository is neither officially affiliated with the Java programming \nlanguage nor with Oracle or the OpenJDK team.\n\n\n[hotjava-source]: https://web.archive.org/web/19961225173659/http://sunsite.unc.edu:80/pub/sun-info/hotjava/","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcono1234%2Fhotjava-1.0-alpha","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarcono1234%2Fhotjava-1.0-alpha","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcono1234%2Fhotjava-1.0-alpha/lists"}