diff --git a/en/news/2024-12_lha-jvm-macos.md b/en/news/2024-12_lha-jvm-macos.md new file mode 100644 index 0000000..4ef4b1a --- /dev/null +++ b/en/news/2024-12_lha-jvm-macos.md @@ -0,0 +1,33 @@ +Title: The first Local Host Access working version +Date: 2024-12-09 00:00 +Category: News +Slug: lha-jvm-macos +Lang: en + +![web-test][web-test] + +# Local Host Access + +Tiny web server called Local Host Access (**LHA**) is ready to replace +Local File System Access (**LFSA**) on JVM and macOS: I've generated this +very article with LHA on macOS. Thus, Kotlin prooved to be a good choice for +cross-platform development with a minor limitation. + +The minor limitation is the fact that 99% of Kotlin is used on JVM. The +remaining 1% is so-called Kotlin Native for iOS, Linux, macOS, and Windows. +Thus, when one needs something as simple as to find out if a symlink +points to a file or directory, that's a dead end, there's no article for +that on the Internet. For C, there are numerous articles telling to call `stat()` +function. For Kotlin Native, it's unclear how to properly make such a simple call. + +I've actually asked [this specific question][question] in November, +and still wait for an answer. +In the meantime, I had to resort to calling `stat` in the shell (aka `system()`). + +# December + +I plan to implement the first Kotlin -> Python translator to let LHA +cover as many platforms as the original LFSA in Python. + +[web-test]: ../../images/2024_web-test.jpg +[question]: https://discuss.kotlinlang.org/t/how-to-call-stat-c-function-to-get-file-type/29541 diff --git a/en/news/index.html b/en/news/index.html index 9d9752e..ed11458 100644 --- a/en/news/index.html +++ b/en/news/index.html @@ -24,6 +24,28 @@
+ 2024-12-09 00:00 +
+Tiny web server called Local Host Access (LHA) is ready to replace +Local File System Access (LFSA) on JVM and macOS: I've generated this +very article with LHA on macOS. Thus, Kotlin prooved to be a good choice for +cross-platform development with a minor limitation.
+The minor limitation is the fact that 99% of Kotlin is used on JVM. The +remaining 1% is so-called Kotlin Native for iOS, Linux, macOS, and Windows. +Thus, when one needs something as simple as to find out if a symlink. . .
+- 2024-03-10 00:00 -
-I spent January and February making Bus pattern implementation in Swift for iOS. -The end result looks nice to me.
-I have also done load testing. Turns out, the Bus is 92 times more expensive -than a function call. Nonetheless, this doesn't mean the Bus is bad. On the -contrary, the numbers highlight the Bus should be used in architectural -glue code where it can save up to 30% of code
-This example demonstrates several states rendered through a single instance:. . .
-Page 1 of 8
diff --git a/en/news/index2.html b/en/news/index2.html index 55b06a6..605cde1 100644 --- a/en/news/index2.html +++ b/en/news/index2.html @@ -24,6 +24,27 @@
+ 2024-03-10 00:00 +
+I spent January and February making Bus pattern implementation in Swift for iOS. +The end result looks nice to me.
+I have also done load testing. Turns out, the Bus is 92 times more expensive +than a function call. Nonetheless, this doesn't mean the Bus is bad. On the +contrary, the numbers highlight the Bus should be used in architectural +glue code where it can save up to 30% of code
+This example demonstrates several states rendered through a single instance:. . .
+- 2019-02-04 00:00 -
-In this article, Michael shares his experience of teaching kids to program.
-Here's what he covers:
-Organization of the learning process
-The learning process is conducted as part of corporate social responsibility: a company provides a room with equipment and connects employees that want to try themselves in the role of teachers with employees that want their kids educated. All this is done voluntarily.. . .
-Page 2 of 8
diff --git a/en/news/index3.html b/en/news/index3.html index 2f0570b..b272e24 100644 --- a/en/news/index3.html +++ b/en/news/index3.html @@ -24,6 +24,32 @@
+ 2019-02-04 00:00 +
+In this article, Michael shares his experience of teaching kids to program.
+Here's what he covers:
+Organization of the learning process
+The learning process is conducted as part of corporate social responsibility: a company provides a room with equipment and connects employees that want to try themselves in the role of teachers with employees that want their kids educated. All this is done voluntarily.. . .
+- 2017-12-31 22:00 -
-So, the year 2017 is approaching its finale, the year's results have already been summed up. We're going to take a break from igniting the fireworks or preparation of the champagne so that we can designate our goal for the following year.
-As it may be clear from other articles on the site, half of our plans in 2017 were destined to be completed at least approximately as we assumed. The other half was changed significantly.
-During the year, people joined the team and left it. As a result, we meet the end of the year with exactly the same team as 365 days ago. It made us think. A lot. But We'll save the story for another time.. . .
-Page 3 of 8
diff --git a/en/news/index4.html b/en/news/index4.html index e05d2ac..51787df 100644 --- a/en/news/index4.html +++ b/en/news/index4.html @@ -24,6 +24,23 @@
+ 2017-12-31 22:00 +
+So, the year 2017 is approaching its finale, the year's results have already been summed up. We're going to take a break from igniting the fireworks or preparation of the champagne so that we can designate our goal for the following year.
+As it may be clear from other articles on the site, half of our plans in 2017 were destined to be completed at least approximately as we assumed. The other half was changed significantly.
+During the year, people joined the team and left it. As a result, we meet the end of the year with exactly the same team as 365 days ago. It made us think. A lot. But We'll save the story for another time.. . .
+- 2017-03-16 00:00 -
-In this article we describe our progress in January and February of 2017: rendering under iOS/Web and a new tutorial tool.
-Rendering under iOS/Web
-To our surprise, we got a simple red cube rendered under iOS and Web pretty fast: in early February. However, this is only the beginning of this year's challenge to support Android, iOS, and Web platforms. There's a long and bumpy road ahead of us as we need a lot more on each platform before we can claim a success: visual effects, Python scripting, data archives.. . .
-Page 4 of 8
diff --git a/en/news/index5.html b/en/news/index5.html index 56da2ba..a89bda1 100644 --- a/en/news/index5.html +++ b/en/news/index5.html @@ -24,6 +24,23 @@
+ 2017-03-16 00:00 +
+In this article we describe our progress in January and February of 2017: rendering under iOS/Web and a new tutorial tool.
+Rendering under iOS/Web
+To our surprise, we got a simple red cube rendered under iOS and Web pretty fast: in early February. However, this is only the beginning of this year's challenge to support Android, iOS, and Web platforms. There's a long and bumpy road ahead of us as we need a lot more on each platform before we can claim a success: visual effects, Python scripting, data archives.. . .
+- 2016-09-24 00:00 -
-Get ready for live session, it's about to happen in 24 hours!
-. . .
-Page 5 of 8
diff --git a/en/news/index6.html b/en/news/index6.html index 1f2bf11..2a8828e 100644 --- a/en/news/index6.html +++ b/en/news/index6.html @@ -24,6 +24,22 @@
+ 2016-09-24 00:00 +
+Get ready for live session, it's about to happen in 24 hours!
+. . .
+- 2016-02-02 00:00 -
-Unfortunately, we have failed to finish creation of the simple "Rolling ball" game in 3 hours. That's why we will hold the second LiveCoding session on 7 February 2016 at 12:00 CET.
-Let's finish the game!
-. . .
-Page 6 of 8
diff --git a/en/news/index7.html b/en/news/index7.html index 7e066e7..309134e 100644 --- a/en/news/index7.html +++ b/en/news/index7.html @@ -24,6 +24,22 @@
+ 2016-02-02 00:00 +
+Unfortunately, we have failed to finish creation of the simple "Rolling ball" game in 3 hours. That's why we will hold the second LiveCoding session on 7 February 2016 at 12:00 CET.
+Let's finish the game!
+. . .
+- 2015-07-19 00:00 -
-As promised, we have come up with a list of milestones and their approximate dates for the coming year:
-Page 7 of 8
diff --git a/en/news/index8.html b/en/news/index8.html index 49e7a39..4d2abe9 100644 --- a/en/news/index8.html +++ b/en/news/index8.html @@ -24,6 +24,26 @@
+ 2015-07-19 00:00 +
+As promised, we have come up with a list of milestones and their approximate dates for the coming year:
++ 2024-12-09 00:00 +
+Tiny web server called Local Host Access (LHA) is ready to replace +Local File System Access (LFSA) on JVM and macOS: I've generated this +very article with LHA on macOS. Thus, Kotlin prooved to be a good choice for +cross-platform development with a minor limitation.
+The minor limitation is the fact that 99% of Kotlin is used on JVM. The
+remaining 1% is so-called Kotlin Native for iOS, Linux, macOS, and Windows.
+Thus, when one needs something as simple as to find out if a symlink
+points to a file or directory, that's a dead end, there's no article for
+that on the Internet. For C, there are numerous articles telling to call stat()
+function. For Kotlin Native, it's unclear how to properly make such a simple call.
I've actually asked this specific question in November,
+and still wait for an answer.
+In the meantime, I had to resort to calling stat
in the shell (aka system()
).
I plan to implement the first Kotlin -> Python translator to let LHA +cover as many platforms as the original LFSA in Python.
++ 2024-12-09 00:00 +
+Крошечный веб-сервер Local Host Access (LHA) готов заменить +Local File System Access (LFSA) на JVM и macOS: я сгенерировал +эту статью с помощью LHA на macOS. Таким образом, Kotlin оказался +хорошим языком для кросс-платформенной разработки, правда, с небольшим +ограничением.
+Это небольшое ограничение состоит в том, что 99% разработки Kotlin приходится +на JVM. Остальные 99% - на так называемый Kotlin Native для работы с iOS, +Linux, macOS и Windows. Таким образом, если кому-либо понадобится что-либо. . .
+- 2024-03-10 00:00 -
-За январь и февраль довёл реализацию шаблона Шина на Swift до хорошего состояния -для iOS.
-Провёл нагрузочное тестирование. Оказалось, что общение элементов -приложения через Шину примерно в 92 раза медленнее обычного вызова функции. -И это говорит не о том, что Шина плоха. Наоборот, это говорит о том, что -Шина должна использоваться в архитектурных склейках кода, что позволяет -сократить такой код примерно на 30%.
-Так выглядит пример с использованием нескольких состояний, отображаемых. . .
-Страница 1 из 8
diff --git a/ru/news/index2.html b/ru/news/index2.html index 8f7bb29..069c30b 100644 --- a/ru/news/index2.html +++ b/ru/news/index2.html @@ -24,6 +24,28 @@
+ 2024-03-10 00:00 +
+За январь и февраль довёл реализацию шаблона Шина на Swift до хорошего состояния +для iOS.
+Провёл нагрузочное тестирование. Оказалось, что общение элементов +приложения через Шину примерно в 92 раза медленнее обычного вызова функции. +И это говорит не о том, что Шина плоха. Наоборот, это говорит о том, что +Шина должна использоваться в архитектурных склейках кода, что позволяет +сократить такой код примерно на 30%.
+Так выглядит пример с использованием нескольких состояний, отображаемых. . .
+- 2019-02-04 00:00 -
-В этой статье Михаил делится своим опытом обучения детей программированию.
-Он расскажет о следующем:
-Организация процесса обучения
-Обучение проходит в рамках социальной ответственности бизнеса: компания предоставляет помещение с оборудованием, а также объединяет сотрудников, желающих попробовать себя в роли преподавателей, с сотрудниками, желающими обучить своих детей. Всё это исключительно на добровольной основе.. . .
-Страница 2 из 8
diff --git a/ru/news/index3.html b/ru/news/index3.html index 80016f3..10a1987 100644 --- a/ru/news/index3.html +++ b/ru/news/index3.html @@ -24,6 +24,32 @@
+ 2019-02-04 00:00 +
+В этой статье Михаил делится своим опытом обучения детей программированию.
+Он расскажет о следующем:
+Организация процесса обучения
+Обучение проходит в рамках социальной ответственности бизнеса: компания предоставляет помещение с оборудованием, а также объединяет сотрудников, желающих попробовать себя в роли преподавателей, с сотрудниками, желающими обучить своих детей. Всё это исключительно на добровольной основе.. . .
+- 2017-12-31 22:00 -
-Итак, 2017й год стремительно приближается к финалу, итоги года уже подведены, так что в свободное от расчехления фейерверков и подготовки систем залпового огня шампанским время мы обозначим свою цель в следующем году.
-Как, наверное, понятно из других статей на сайте, примерно половине наших планов в 2017 году было суждено осуществиться хотя бы приблизительно так как мы предполагали, остальные поменялись существенно.
-В течение года люди приходили в команду, уходили из нее, в итоге конец года мы встречаем с тем же составом что и 365 дней назад. Это заставило нас задуматься, но о выводах как-нибудь в другой раз.. . .
-Страница 3 из 8
diff --git a/ru/news/index4.html b/ru/news/index4.html index 02b7067..99d7f85 100644 --- a/ru/news/index4.html +++ b/ru/news/index4.html @@ -24,6 +24,23 @@
+ 2017-12-31 22:00 +
+Итак, 2017й год стремительно приближается к финалу, итоги года уже подведены, так что в свободное от расчехления фейерверков и подготовки систем залпового огня шампанским время мы обозначим свою цель в следующем году.
+Как, наверное, понятно из других статей на сайте, примерно половине наших планов в 2017 году было суждено осуществиться хотя бы приблизительно так как мы предполагали, остальные поменялись существенно.
+В течение года люди приходили в команду, уходили из нее, в итоге конец года мы встречаем с тем же составом что и 365 дней назад. Это заставило нас задуматься, но о выводах как-нибудь в другой раз.. . .
+- 2017-03-16 00:00 -
-В этой статье мы расскажем о результатах нашей работы в январе и феврале 2017: отображении куба на iOS/Веб и нашем инструменте для создания самоучителей.
-Отображение куба на iOS/Web
-К нашему удивлению, мы смогли отобразить простой красный куб на iOS и Веб довольно быстро: в начале февраля. Тем не менее, это лишь начало поддержки платформ Android, iOS и Веб. Впереди нас ждёт тернистая дорога, т.к. нам предстоит сделать ещё много вещей, прежде чем мы сможем объявить о полноценной поддержке этих платформ: визуальные эффекты, скрипты Python, архивы данных.. . .
-Страница 4 из 8
diff --git a/ru/news/index5.html b/ru/news/index5.html index c2c31f9..dab5a25 100644 --- a/ru/news/index5.html +++ b/ru/news/index5.html @@ -24,6 +24,23 @@
+ 2017-03-16 00:00 +
+В этой статье мы расскажем о результатах нашей работы в январе и феврале 2017: отображении куба на iOS/Веб и нашем инструменте для создания самоучителей.
+Отображение куба на iOS/Web
+К нашему удивлению, мы смогли отобразить простой красный куб на iOS и Веб довольно быстро: в начале февраля. Тем не менее, это лишь начало поддержки платформ Android, iOS и Веб. Впереди нас ждёт тернистая дорога, т.к. нам предстоит сделать ещё много вещей, прежде чем мы сможем объявить о полноценной поддержке этих платформ: визуальные эффекты, скрипты Python, архивы данных.. . .
+- 2016-09-24 00:00 -
-Приготовьтесь к прямому эфиру, он начнётся через 24 часа!
-. . .
-Страница 5 из 8
diff --git a/ru/news/index6.html b/ru/news/index6.html index 8389a1c..4a0a6c5 100644 --- a/ru/news/index6.html +++ b/ru/news/index6.html @@ -24,6 +24,22 @@
+ 2016-09-24 00:00 +
+Приготовьтесь к прямому эфиру, он начнётся через 24 часа!
+. . .
+- 2016-02-02 00:00 -
-К сожалению, нам не удалось завершить создание простой игры "Катящийся мяч" за 3 часа. Поэтому вторая часть трансляции LiveCoding состоится 7 февраля 2016 в 14:00 MSK.. . .
-Страница 6 из 8
diff --git a/ru/news/index7.html b/ru/news/index7.html index 7a17752..cd81d6c 100644 --- a/ru/news/index7.html +++ b/ru/news/index7.html @@ -24,6 +24,20 @@
+ 2016-02-02 00:00 +
+К сожалению, нам не удалось завершить создание простой игры "Катящийся мяч" за 3 часа. Поэтому вторая часть трансляции LiveCoding состоится 7 февраля 2016 в 14:00 MSK.. . .
+- 2015-07-19 00:00 -
-Как и было обещано, мы составили список вех и их примерные даты на ближайший год:
-Страница 7 из 8
diff --git a/ru/news/index8.html b/ru/news/index8.html index 4da5f44..7a34a2c 100644 --- a/ru/news/index8.html +++ b/ru/news/index8.html @@ -24,6 +24,26 @@
+ 2015-07-19 00:00 +
+Как и было обещано, мы составили список вех и их примерные даты на ближайший год:
++ 2024-12-09 00:00 +
+Крошечный веб-сервер Local Host Access (LHA) готов заменить +Local File System Access (LFSA) на JVM и macOS: я сгенерировал +эту статью с помощью LHA на macOS. Таким образом, Kotlin оказался +хорошим языком для кросс-платформенной разработки, правда, с небольшим +ограничением.
+Это небольшое ограничение состоит в том, что 99% разработки Kotlin приходится
+на JVM. Остальные 99% - на так называемый Kotlin Native для работы с iOS,
+Linux, macOS и Windows. Таким образом, если кому-либо понадобится что-либо
+столь же простое, как узнать, куда указывает симлинк - на файл или директорию,
+то будет тупик, в Интернете просто не будет такой статьи. Для C существует
+множество статей с рекомендацией вызвать функцию stat()
. Для Kotlin Native
+совершенно не ясно, как сделать подобный простой вызов.
Такой вопрос о вызове stat()
я и задал в ноябре, до сих пор жду
+ответа. Тем временем, пришлось использовать команду stat
в командной строке
+(он же вызов system()
).
Сделаю первую версию транслятора Kotlin -> Python для того, +чтобы покрыть с помощью LHA те же платформы, что покрывает LFSA на Python.
+